4. Unit Test Overovanie vstupov a výstupov pre funkciu classTestSimpleNumber<Test::Unit::TestCase deftest_simple assert_equal(4, SimpleNumber.new(2).add(2)) assert_equal(6, SimpleNumber.new(2).multiply(3)) end end
5. Špecifikácia Väčšinou vo forme UserStories Príklad: Ako editor chcem mať možnosť pridávať a editovať stránky.
8. Akona to? (BDD) Popísať požiadavku na funkcionalitu (feature) Definovať kroky, ktoré napĺňajú danú požiadavku(scenario) Implementovať jednotlivé kroky pomocou nizkoúrovňových testov(steps) Implementovať kód, aby sme prešli testami Opakovať, kým nie sú všetky požiadavky splnené
9. Feature Feature: [title] In order to[business value] As a [role] I want to[some action] Scenario: …
10. Feature – príklad Feature: Manage articles In order toprovide fresh content for visitors As an editor of the web page I want tocreate and edit articles
12. Scenario – štruktúra Scenario:[title] Given [Context] And [More Context] When I do [Action] And [Other Action] Then I should see [Outcome] But I should not see […]
13. Scenario –príklad Scenario: Publishingnew article GivenI log in as „admin“ using password „dog123“ When I follow „New Article“ AndI fill in „Title“ with „First Article“ And I fill in „Article“ with „My first article about Cucumbers“ And I press „Publish article“ Then I should see „First Article was published“ And I go to „the main page“ And I should see „My first article about Cucumbers“
14. Steps Základané vstavané kroky prejsť na stránku,vyplniť pole formulára, kliknúť, ... Vlastné kroky Kombinácia krokov
15. Steps – príklad When/^I login as "([^"]*)" usingpassword "([^"]*)"/ do|username, password| When'I go to thehomepage' fill_in('Username', :with => username) fill_in('Password', :with => password) click_button('Log in') end
16. Bonus: Slovenčina Požiadavka:Sčítavanie Aby somsa vyhol hlúpym chybám Ako matematický idiot Chcemvedieťakosasčítavajúdve čísla Náčrt Scenáru:Sčítaniedvochčísel PokiaľZadám číslo <vstup_1> do kalkulačky A Zadám číslo <vstup_2> do kalkulačky KeďStlačím tlačidlo <tlačidlo> Tak Výsledok by mal byť <výstup> Príklady: | vstup_1 | vstup_2 | tlačidlo | výstup | | 20 | 30 | add | 50 | | 2 | 5 | add | 7 | | 0 | 40 | add | 40 |
18. Webrat Simulátor prehliadača Vykonáva jednotlivé kroky Poskytuje sadu základných krokov Nemožnosť testovať AJAX... … ale exitujúalternatívy: Selenium, Watir, Celerity, Culerity, env-js, ...
27. Výhody Živá dokumentácia Zjednotený jazyk Lepšie pochopenie požiadaviek Rýchly feedback Stanovenie akceptačných kritérii Záchranná sieť Efektívnejší vývoj Uhorky obsahujú vitamín C