pl/sql vienībtestēšana ar ruby
TRANSCRIPT
Kāda ir laba programma?
Strādā pareizi
Pietiekoši ātri
Ir uzturama
Jātestēfunkcionalitāte!
Jātestēveiktspēja!
Jātestēpēc izmaiņām!
Kā tas tiek darīts?kaut ko
padarbinamdbms_output.put_line(...)
lai testētāji testē,tas ir viņu darbs
tas taču acīmredzami,ka kļūdu nav :)
Kādas ir problēmas?
“pamēģinam” nevis testējam
testi nav atkārtojami
manuāla rezultātu pārbaude
testēšana tiek sākta pārāk vēlu
Testu veidivienībtesti
integrācijas testi
veiktspējas & slodzes testi
pētnieciskie & lietojamības testi
programmētājaatbildība
Labi vienībtestiAutomātiski, izpildās ātri
Plašs koda pārklājums, iekļauj robežgadījumus
Atkārtojami
Neatkarīgi, nav svarīga izpildes secība
Izmanto reālus, labi saprotamus datus
utPLSQLizveidoja Steven Feuerstein, 1999
bāzēts uz “xUnit”-stila ietvariem
pēdējos gados netiek uzturēts :(
Kāpēc maz lieto?
liels testu koda apjoms?
nepārskatāmi, slikta lasāmība?
grūti testēt sarežģītākus gadījumus?
nav labās prakses kā rakstīt testus?
neviens nelieto, kāpēc lai es lietotu?
ruby-plsql-specideāla valoda testu rakstīšanai
spēcīgi testēšanas rīkiar “lasāmu” sintaksiRSpec
ruby-plsql bibliotēka PL/SQLprocedūru
izsaukšanai no Ruby
Ieguvumi
kompakta, lasāma sintakse
spēcīgas iespējas arī sarežģītu testu rakstīšanai
labākā prakse no Ruby kopienas
veidots uz reālu projektu vajadzībām
Saiteshttp://blog.rayapps.com/2009/11/27/oracle-
plsql-unit-testing-with-ruby/
http://blog.rayapps.com/2010/01/06/screencasts-of-oracle-plsql-unit-testing-with-
ruby/
http://github.com/rsim/ruby-plsql-spec