Specifica(on by Example Vaa(mukset ja testaus ke9erissä projekteissa Marko Taipale
Mitä on ke*erä (testaus) Mitä on Specifica(on by Example Omat kokemukset
Agile / Lean
Mitä on ke9erä (testaus) Mitä on Specifica5on by Example Omat kokemukset
Impl Goal Req Test
Mitä jos Keskusteluissa usein järjestelmää kuvataan esimerkein, joten miksei esimerkkejä käyte9äisi vaa(muksina Formalisoimalla esimerkit ne toimisivat samalla testeinä Impl Goal Req Yksi totuus Test
SbE prosessi Liiketoimintatavoi9eet Miksi ja ketä? Mistä arvo muodostuu? Mitkä tavoi9eet? Asiakas, Testaaja, Kehi9äjä
Yhteistyömuotoja Parikirjoitus 3 amigos
Työkalut tukevat esimerkkien ajamista, vaa(mukset jatkuvas( testauksessa Esimerkit (Tes(t) ovat elävä dokumentaa(o
SbE is collabora5ve approach to defining requirements and business- oriented func5onal tests for soxware products based on capturing and illustra(ng requirements using realis(c examples instead of abstract statements. A key aspect of specifica(on by example is crea(ng a single source of truth about required changes from all perspec(ves. Examples are used to provide clarity and precision, so that the same informa5on can be used both as a specifica5on and a business- oriented func(onal test.
Building it right! Building the right thing!
Building it right! Business failure Building the right thing!
Building it right! Business failure Building the right thing! Useless crap
Building it right! Business failure Building the right thing! Useless crap Maintenance nightmare
Building it right! Business failure Business success Building the right thing! Useless crap Maintenance nightmare
Building it right! Business failure Business success Specifica(on by example Building the right thing! Useless crap Maintenance nightmare Specifica(on by example, Gojko Adzic, page 4
Mitä on ke9erä (testaus) Mitä on Specifica(on by Example Omat kokemukset
User Story:n liite9y Example Ostoksen lisääminen ostoskoriin Käy9äjänä haluan lisätä ostoskoriini ostokseni, jo9a voin hallita ostoksiani keskitetys( Lisä(edot: Hyväksymiskriteerit: Skenaario 1: Lisääminen onnistuu Given käy9äjä on kirjautunut järjestelmään Skenaario 2: Oskoskorissa jo lisä*y ostos Given käy9äjä on kirjautunut järjestelmään When käy9äjä lisää jo lisätyn ostoksen ostoskoriin Then ostoskorissa aikaisemmin ostoksen kpl- määrä lisääntyy yhdellä When käy9äjä lisää ostoksen ostoskoriin Then ostoskoriin ilmestyy lisä9y ostos
Esimerkki (etoturvaskenaariosta Ostoksen lisääminen ostoskoriin Käy9äjänä haluan lisätä ostoskoriini ostokseni, jo9a voin hallita ostoksiani keskitetys( Lisä(edot: Hyväksymiskriteerit: Skenaario X: XSS- hyökkäys Given Mustahatulle esitetään syö9ökencä When Mustaha9u yri9ää XSS- hyökkäystä syö9ökencin Then järjestelmä validoi syö9eet ja ilmoi9aa syötevirheestä Skenaarioita on mahdollista uudelleenkäy9ää, mikäli skenaarion abstrak(otaso pidetään rii9ävän korkeana
Miten SbE:tä käytetään, case 1 User Story Example 1..n Automa(soitu tes(
Miten SbE:tä käytetään, case 2 Example 1..n Automa(soitu tes(
Kokemuksia Sidosryhmät kärsimä9ömiä Selkeys on hyvä voimavara Vaa(muskohtainen Defini(on of Done on todella kirkas Fokus Helpo9aa automa(soin(a ja automaa(on tuo9amien tuloksien ymmärtämistä myös non- techie- landiassa
Muutoksesta Liiketoiminta on haastavaa saada mukaan Testaus ja kehitys saa9avat olla siiloissa (ns. riippumaton testaus), kul9uurimuutos Testaajien tuominen (imeihin Kehi9äjät eivät ole to9uneet automa(soimaan Automaa(oasteen kehitys, (A)TDD
Käy9öalueita Tietoturva Suorituskyky / Vikasietoisuus Toiminnallinen testaus Tutkiva testaus tukee tätä mukavas( ja Tutkivan testauksen sessioista helpos( johde9avissa SbE- skenaarioita