Yksikkö 2 / 11

Testiskenaarion ja testitapausten luominen: Vaatimuksesta kattavaan hallintaan

Voitot:

  • Kyky muuttaa vaatimus- ja hyväksymiskriteerit kattaviksi testitapauksiksi tekniikoilla, kuten ekvivalenssiluokilla, raja-arvoanalyysillä ja päätöstaulukoilla tekoälyn tuella
  • Kyky tuottaa positiivisia, negatiivisia ja reunatapausskenaarioita erikseen ja täydentää tekoälyn menettämät reunatapaukset tuotetiedoilla
  • Kyky luoda jäljitettävyys ja poistaa kattavuusaukot ja tarpeeton turvotus yhdistämällä testitapaukset hyväksymiskriteereihin

Testaajan työ alkaa usein tällä tyhjällä pöydällä: hänellä on vaatimus ("käyttäjän on voitava nollata salasana") ja hänen on muutettava tämä yksittäinen lause kymmeniksi konkreettisiksi tarkastuksiksi, jotka osoittavat, että ohjelmisto todella toimii oikein. Tätä muutosta kutsutaan testisuunnitteluksi. Testiskenaarion – korkean tason tavoitteen, joka kuvaa testattavaa, kuten "virheellinen salasana tulee hylätä" - ja testitapauksen - suoritettavan yksikön, joka kertoo skenaarion yksityiskohtaisesti konkreettisista vaiheista, syötteestä ja odotetusta tuloksesta, välinen ero on avainasemassa. Tekoäly (AI) nopeuttaa juuri tätä tyhjän sivun hetkeä: muuntaa yhden vaatimuksen kymmeniksi luonnosskenaarioiksi sekunneissa. Mutta muista – tekoäly toistaa tilanteet, joita voit ajatella; Valitset tuotetietosi perusteella, mitkä tilanteet ovat todella tärkeitä.

Tässä osiossa opit vaihe vaiheelta, kuinka vaatimus muunnetaan kattavaksi mutta sotkuttoman testiohjelmiston AI-tuella.

Askel askeleelta: vaatimuksesta testisarjaan

Vaihe 1 – Selvennä vaatimus. Kerää hyväksymiskriteerit (ehdot, jotka työn on täytettävä, jotta se voidaan katsoa "tehdyksi"), ennen kuin annat tekoälylle raakavaatimuksen. "Salasanan on oltava palautettavissa" ei riitä; Säännöt, kuten "nollauslinkki on voimassa 30 minuuttia", "samaa salasanaa ei voi käyttää uudelleen", ovat todellisen testin lähde.

Vaihe 2 – Ota testaustekniikat käyttöön. Älä vain sano "kirjoita käsikirjoitus" tekoälystä; Kysy klassisia testisuunnittelutekniikoita nimellä:

  • Ekvivalenssiluokat (ekvivalenssiositus): syötteiden jakaminen ryhmiin, joiden odotetaan tuottavan saman käyttäytymisen. Esimerkiksi ikäkentässä "kelvollinen alue", "liian pieni" ja "liian suuri" ovat luokkia; Yhden esimerkin testaaminen kustakin luokasta riittää.
  • Raja-arvoanalyysi: Testaa kynnysarvoja sen perusteella, että virheitä esiintyy eniten rajoilla. Se on kuin testaisit 17, 18, 19 erikseen 18 vuoden ikärajalle.
  • Päätöstaulukko: Useiden ehtojen yhdistelmät ja kunkin yhdistelmän odotettu tulos.
  • Tilasiirtymä: Testaa järjestelmän siirtymiä tilasta tilaan (esimerkiksi tilaus: luotu → maksettu → toimitettu) ja virheellisiä siirtymiä.

Vaihe 3 – Erottele positiiviset, negatiiviset ja reunatilat. Pyydä positiivista testiä (odotettu tulos oikealla syötteellä), negatiivista testiä (oikea virhe virheellisellä syötteellä) ja reunatapausta – rajatapaukset tai epätavalliset tapaukset. Tekoäly korostaa yleensä positiivista; Negatiiviset ja reunatapaukset ovat epätäydellisiä, ellet pyydä niitä erikseen.

Vaihe 4 – Priorisoi ja karsi. AI voi luoda 60 skenaariota; Ne eivät kaikki ole samanarvoisia. Priorisoi ne, joilla on suuri riski (raha, turvallisuus, tietojen menetys) ja yhdistä ne, jotka ovat kaksoiskappaleita.

Vinkki: Lähetä erillinen pyyntö tekoälylle sanomalla "luo 5 käsittämätöntä reunatapausta tästä vaatimuksesta". Tekoälyn arvokkain panos on, että se muistuttaa usein poikkeuksellisista tilanteista, jotka olet unohtanut.

Heikko kehote / Vahva kehote

Heikko: "Kirjoita testitapauksia salasanan nollausta varten."
Vahva: "Luo "salasanan palautus" -ominaisuuden testitapaukset seuraavilla hyväksymiskriteereillä: linkki voimassa 30 minuuttia, kertakäyttöinen, 3 viimeistä salasanaa ei voi käyttää uudelleen, tili lukitaan 15 minuutiksi 5 virheellisen yrityksen jälkeen. Käytä vastaavuusluokkia ja raja-arvojen analyysiä. Anna kunkin tapauksen positiivinen, negatiivinen ja reunatapaukset erillisissä tapauksissa: testitulokset, tarvittavat tiedot, tarvittavat tiedot, testitulokset, tarvittavat tiedot. Hyväksymiskriteerit.

Tehokas kehote; Se antaa säännöt, tekniikat, tulostusmuodon ja tärkeysjärjestyksen. Näin ollen tekoäly tuottaa suoritettavia ja jäljitettäviä testitapauksia, ei koristeellisia.

Testitapauksen tulostusmuoto

Pyydä jäsenneltyä muotoa, joka voidaan tuoda suoraan tiimisi testinhallintatyökaluun (esim. TestRail, Zephyr, Xray). Seuraava taulukko näyttää hyvän testitapauksen komponentit:

alueella

Kuvaus

esimerkki

ID

yksilöllinen tunnus

TC-PWD-014

Otsikko

lyhyt tarkoitus

Vanhentunut linkki hylätään

edellytys

Kunto vaaditaan ennen testausta

Nollauslinkki luotiin 31 minuuttia sitten

askeleita

Peräkkäiset toiminnot

1. Napsauta linkkiä 2. Anna uusi salasana

testitiedot

Konkreettisia arvoja käytetty

vanha linkki, uusi salasana "Abc!2345"

odotettu tulos

Käyttäytyminen tarkistettava

"Linkki vanhentunut" -virhe, salasana ei muutu

Hyväksymiskriteerit

jäljitettävyyslinkki

AK-3: linkki voimassa 30 minuuttia

etusijalla

Riskitaso

korkea

Neljä kopioitavaa mallia

1) Teknisesti perustuva skenaariotuotanto:

Roolisi: vanhempi testisuunnittelija.Luo testitapauksia ominaisuudelle: [ominaisuus ja hyväksymiskriteerit].Käytä: vastaavuusluokat, keskeytyspisteanalyysi, päätöstaulukko.Anna tulos kolmeen ryhmään: Positiivinen / Negatiivinen / Edge-tapaus.Jokainen tapaus: tunnus, ennakkoehto, vaiheet, testitiedot, odotettu tulos, siihen liittyvät hyväksymiskriteerit, prioriteetti (korkea/keskitaso/pieni).

2) Edge case hunter:

Listaa 10 tavallisesti huomiotta jätettyä reunatapausta seuraavalle ominaisuudelle: [ominaisuus]. Kirjoita yhdellä lauseella, miksi se on riskialtista kullekin. Ajattele akseleita, kuten tyhjä/nolla, liian pitkä syöttö, samanaikaisuus, aikakatkaisu, muotoiluvirheet, Unicode/emoji, negatiivinen/nolla, verkkokatkos.

3) Päätöstaulukon tuotanto:

Luo päätöstaulukko seuraavalle liiketoimintasäännölle: [säännöt]. Sarakkeet: ehtoyhdistelmät; rivit: jokainen ehto ja odotettu toiminta. Merkitse saavuttamattomat tai ristiriitaiset yhdistelmät. Ehdota sitten testitapausta jokaiselle yhdistelmälle.

4) Jäljitettävyyden valvonta:

Kun otetaan huomioon seuraava luettelo hyväksymiskriteereistä ja seuraavat testitapaukset: [kriteerit] / [tapaukset]. Näytä taulukkomuodossa, mitkä hyväksymiskriteerit EIVÄT testitapaukset täyttävät (kattavuusväli) ja mitkä tapaukset eivät täytä yhtään kriteeriä (redundantti tapaus).

kolme minilaukkua

Tapaus 1 — Reunatilojen arvo. Fintech-tiimin asiantuntija oli kirjoittanut 18 skriptiä rahansiirtoominaisuutta varten. Hän sovelsi "edge case hunter" -mallia tekoälyyn; AI muistutti tilannetta, jossa "sama saldo siirretään kahdesta laitteesta samanaikaisesti" (samaaikaisuus). Kun tätä skenaariota testattiin, kaksinkertainen kulutushaavoittuvuus löydettiin ja suljettiin ennen julkaisemista. Yksittäinen reunatilanne esti mahdollisen kuusinumeroisen tappion.

Tapaus 2 – pullistuman leikkaaminen. Eräs tiimi pyysi tekoälyä tuottamaan käsikirjoituksen jäsenlomakkeelle, ja 74 tapausta tuli läpi. Jäljitettävyysmallia suoritettaessa havaittiin, että 74 tapausta täytti vain 9 hyväksymiskriteeriä, ja monet testasivat uudelleen samaa vastaavuusluokkaa. Joukko pienennettiin 74:stä 23 merkittävään tapaukseen; ajoaika laski 68 %, peitto ei vähentynyt.

Tapaus 3 – Väärä oletus. Tekoäly ehdotti virheellisten päivämäärien, kuten "31. helmikuuta", testaamista päivämääräkenttään, mutta ei tiennyt, että tiimin käyttämä kalenterikomponentti jo esti tämän. Asiantuntija poisti 4 kuudesta tekoälyn tuottamasta päivämääräskenaariosta tarpeettomina tuotteen yhteydessä. Tekoälyn luomat mahdollisuudet; tehnyt tuotetietojen valinnan.

Yleisiä virheitä

  • Käsikirjoituksen pyytäminen antamatta hyväksymisehtoja. Tietämättä, mikä on totta, tekoäly tuottaa pinnallisia skenaarioita, joissa todelliset riskit jäävät usein huomaamatta.
  • Tyytyä vain positiivisiin testeihin. Nimenomaan ei haluta negatiivisia ja reunatapauksia. Tässä ovat virheet usein.
  • Hyväksyä sen, mitä tuotetaan, sellaisena kuin se on. Unohdetaan, että tekoäly ei tunne tuotteen kontekstia ja jätetään tarpeettomia tai mahdottomia skenaarioita kuvauspaikalle.
  • Jäljitettävyyden ohittaminen. Tapausten yhdistäminen hyväksymiskriteereihin; Tämän seurauksena ei näy, mitä kriteeriä ei ole testattu (kattavuusaukko).
  • Määrävirhe. Onnellinen, koska "60 käsikirjoitusta on julkaistu". Arvo ei ole numerossa, vaan laajuudessa, joka kattaa riskin.

Yhteenvetona

Testisuunnittelussa on kyse yhden lauseen vaatimuksen kääntämisestä konkreettisiksi suoritettaviksi tapauksiksi, jotka todistavat ohjelmiston oikeellisuuden. Tekoäly nopeuttaa tätä muutosta suuresti: se tuottaa kattavia piirustuksia, kun annat sille hyväksymiskriteerit, klassiset testaustekniikat (ekvivalenssiluokat, keskeytyspiste, päätöstaulukko, tilasiirtymä) ja selkeän tulostusmuodon. Mutta tekoäly on puolueellinen positiiviseen, ei tiedä tuotteen kontekstia ja voi tuottaa tarpeetonta turvotusta. Sinun tehtäväsi on pyytää nimenomaisesti negatiivisia ja reunatapauksia, luoda jäljitettävyys, priorisoida riskit ja karsia.

Sovellustehtävä

Valitse ominaisuus omasta projektistasi ja kirjoita hyväksymiskriteerit ylös. Pyydä tekoälyä luomaan testitapauksia "tekniikkapohjaisen skenaarion luonti" -mallin avulla. Käytä sitten "edge case hunter"- ja "traceability check" -malleja. Tuloksena: (1) lisää vähintään 3 reunatapausta, jotka tekoäly ohittaa, (2) karsi tapauksia, jotka eivät liity mihinkään hyväksymiskriteeriin, (3) kirjoita uusia tapauksia, jos hyväksymiskriteereitä on jäänyt testaamatta. Kaada lopullinen sarja laskentataulukkoon.

tarkistuslista

  • [ ] Ennen kuin pyysin käsikirjoitusta, selvensin hyväksymiskriteerit.
  • [ ] Pyysin YZ:ltä ekvivalenssiluokkia ja raja-arvoanalyysiä nimen mukaan.
  • [ ] Tein positiiviset, negatiiviset ja reunatilat erikseen.
  • [ ] Linkitin jokaisen testitapauksen hyväksymiskriteeriin (jäljitettävyys).
  • [ ] Tarkistin taulukosta laajuuden aukon ja tarpeettomat tapaukset.
  • [ ] Priorisoin riskin ja leikkasin turvonneen sarjan.