zisky:
- Schopnosť transformovať požiadavky a akceptačné kritériá na komplexné testovacie prípady pomocou techník, ako sú triedy ekvivalencie, analýza hraničných hodnôt a rozhodovacie tabuľky, s podporou umelej inteligencie
- Schopnosť samostatne vytvárať pozitívne, negatívne a okrajové scenáre a doplniť okrajové prípady, ktoré umelá inteligencia zameškala, o produktové informácie
- Schopnosť vytvoriť sledovateľnosť a eliminovať medzery v pokrytí a zbytočné nafúknutie prepojením testovacích prípadov s kritériami prijatia
Práca testera často začína týmto prázdnym listom: má požiadavku („používateľ musí mať možnosť obnoviť svoje heslo“) a túto jedinú vetu potrebuje premeniť na desiatky konkrétnych kontrol, ktoré preukážu, že softvér skutočne funguje správne. Táto transformácia sa nazýva návrh testu. Kľúčom je poznať rozdiel medzi testovacím scenárom – cieľom na vysokej úrovni, ktorý popisuje, čo sa má testovať, ako napríklad „neplatné heslo by sa malo odmietnuť“ – a testovacím prípadom – spustiteľnou jednotkou, ktorá tento scenár podrobne popisuje s konkrétnymi krokmi, vstupom a očakávaným výsledkom. Umelá inteligencia (AI) urýchľuje presne tento moment prázdnej stránky: premení jednu požiadavku na desiatky návrhov scenárov za pár sekúnd. Ale pamätajte – AI kopíruje situácie, na ktoré si môžete myslieť; S vašimi znalosťami produktu si vyberáte, ktoré situácie sú skutočne dôležité.
V tejto lekcii sa krok za krokom naučíte, ako premeniť požiadavku na komplexný, no neprehľadný testovací balík s podporou AI.
Krok za krokom: od požiadavky k testovacej súprave
Krok 1 – Ujasnite si požiadavku. Zhromaždite kritériá prijatia (podmienky, ktoré musí úloha spĺňať, aby bola považovaná za „hotovú“) predtým, ako AI poskytnete surovú požiadavku. "Heslo musí byť resetovateľné" nestačí; Pravidlá ako "resetovať odkaz je platný 30 minút", "rovnaké heslo nemožno použiť znova" sú zdrojom skutočného testu.
Krok 2 – Implementujte techniky testovania. Nehovorte len „napíš scenár“ o AI; Opýtajte sa na klasické techniky testovania podľa názvu:
- Triedy ekvivalencie (rozdelenie ekvivalencie): Rozdelenie vstupov do skupín, od ktorých sa očakáva, že budú produkovať rovnaké správanie. Napríklad pre vekové pole sú triedy „platný rozsah“, „príliš malý“ a „príliš veľký“; Stačí otestovať jeden príklad z každej triedy.
- Analýza hraničných hodnôt: Testovanie hraničných hodnôt na základe skutočnosti, že chyby sa najčastejšie vyskytujú na hraniciach. Je to ako testovanie 17, 18, 19 rokov samostatne pre vekovú hranicu 18 rokov.
- Rozhodovacia tabuľka: Tabuľkové zostavenie kombinácií viacerých stavov a očakávaný výsledok každej kombinácie.
- Prechod stavu: Testovanie prechodov systému zo stavu do stavu (napríklad objednávka: vytvorená → zaplatená → odoslaná) a neplatné prechody.
Krok 3 — Oddeľte kladné, záporné a okrajové stavy. Požiadajte o pozitívny test (očakávaný výsledok so správnym zadaním), negatívny test (správna chyba s neplatným vstupom) a okrajový prípad – hraničné alebo neobvyklé prípady. AI vo všeobecnosti zdôrazňuje pozitíva; Negatívne a okrajové prípady sú neúplné, pokiaľ ich výslovne nepožiadate.
Krok 4 – Stanovte priority a prerezávajte. AI dokáže generovať 60 scenárov; Nie všetky majú rovnakú hodnotu. Uprednostnite tie s vysokým rizikom (peniaze, bezpečnosť, strata dát) a kombinujte tie, ktoré sú duplicitné.
Tip: Pošlite umelej inteligencii samostatnú žiadosť so slovami „vygenerujte z tejto požiadavky 5 nemysliteľných okrajových prípadov“. Najcennejším prínosom AI je, že vám často pripomína mimoriadne situácie, ktoré ste prehliadli.
Slabá výzva / Silná výzva
Slabé: "Napíšte testovacie prípady na obnovenie hesla."
Strong: "Generujte testovacie prípady pre funkciu 'resetovania hesla' s nasledujúcimi kritériami akceptácie: odkaz platný 30 minút, jedno použitie, posledné 3 heslá sa nedajú použiť znova, účet je zablokovaný na 15 minút po 5 nesprávnych pokusoch. Použiť triedy ekvivalencie a analýzu hraničnej hodnoty. Uveďte pozitívne, negatívne a okrajové prípady v samostatných hlavičkách. Pre každý prípad: ID, predpokladaný scenár, vysoký stupeň zabezpečenia, pridružené kroky zabezpečenia, testovanie údajov."
Výkonná výzva; Poskytuje pravidlá, techniky, výstupný formát a poradie priorít. AI teda vytvára spustiteľné a sledovateľné testovacie prípady, nie dekoratívne.
Výstupný formát testovacieho prípadu
Požiadajte o štruktúrovaný formát, ktorý je možné importovať priamo do nástroja na správu testov vášho tímu (napr. TestRail, Zephyr, Xray). Nasledujúca tabuľka ukazuje komponenty dobrého testovacieho prípadu:
oblasť
Popis
príklad
ID
jedinečné ID
TC-PWD-014
Názov
krátky účel
Odkaz s vypršanou platnosťou bude odmietnutý
predpokladom
Požadovaná podmienka pred testovaním
Resetovať odkaz bol vygenerovaný pred 31 minútami
kroky
Postupné akcie
1. Kliknite na odkaz 2. Zadajte nové heslo
testovacie údaje
Použité konkrétne hodnoty
starý odkaz, nové heslo "Abc!2345"
očakávaný výsledok
Správanie, ktoré sa má overiť
Chyba „Platnosť odkazu vypršala“, heslo sa nemení
Kritériá prijatia
odkaz na sledovateľnosť
AK-3: odkaz platný 30 minút
prioritou
Úroveň rizika
vysoká
Štyri kopírovateľné šablóny
1) Technická tvorba scenára:
Vaša rola: senior návrhár testov.Generujte testovacie prípady pre funkciu: [vlastnosti a kritériá prijatia].Použite: triedy ekvivalencie, analýza bodov zlomu, rozhodovacia tabuľka.Poskytujte výstup v 3 skupinách: pozitívny / negatívny / okrajový prípad. Každý prípad: ID, predbežná podmienka, kroky, testovacie údaje, očakávaný výsledok, súvisiace kritériá prijatia, priorita (vysoká/stredná/nízka).
2) Lovec okrajových prípadov:
Uveďte 10 bežne prehliadaných okrajových prípadov pre nasledujúcu vlastnosť: [vlastnosť]. Napíš jednou vetou, prečo je to pre každého riskantné. Myslite na osi ako prázdne/nulové, príliš dlhý vstup, súbežnosť, časový limit, chyby formátu, Unicode/emoji, záporný/nulový, výpadok siete.
3) Výroba rozhodovacej tabuľky:
Vytvorte rozhodovaciu tabuľku pre nasledujúce obchodné pravidlo: [pravidlá]. Stĺpce: kombinácie podmienok; riadky: každá podmienka a očakávaná akcia. Označte nedosiahnuteľné alebo konfliktné kombinácie. Potom navrhnite testovací prípad pre každú kombináciu.
4) Kontrola sledovateľnosti:
Na základe nasledujúceho zoznamu akceptačných kritérií a nasledujúcich testovacích prípadov: [kritériá] / [prípady]. Ukážte v tabuľkovej forme, ktoré kritériá prijatia nespĺňajú žiadne testovacie prípady (medzera pokrytia) a ktoré prípady nespĺňajú žiadne kritériá (nadbytočný prípad).
tri mini prípady
Prípad 1 — Hodnota okrajových stavov. Expert z fintech tímu napísal 18 skriptov pre funkciu prevodu peňazí. Na AI použil šablónu „edge case hunter“; AI pripomenula situáciu „prenosu rovnakého zostatku z dvoch zariadení súčasne“ (súbežnosť). Pri testovaní tohto scenára bola zistená a pred spustením zverejnená chyba zabezpečenia dvojitých výdavkov. Potenciálnej šesťcifernej strate zabránila jediná okrajová situácia.
Prípad 2 – Orezanie vydutia. Tím nechal AI vytvoriť skript pre členský formulár a prešlo 74 prípadov. Spustením šablóny sledovateľnosti sa zistilo, že 74 prípadov spĺňalo iba 9 akceptačných kritérií, pričom mnohí znova testovali rovnakú triedu ekvivalencie. Súbor sa zredukoval zo 74 na 23 významných prípadov; doba prevádzky sa znížila o 68 %, pokrytie sa neznížilo.
Prípad 3 – Nesprávny predpoklad. AI navrhla testovať neplatné dátumy ako „31. február“ pre dátumové pole, ale nevedela, že komponent kalendára, ktorý tím používal, to už zablokoval. Expert vylúčil 4 zo 6 dátumových scenárov, ktoré vytvorila AI, ako zbytočné v kontexte produktu. možnosti generované AI; vykonal výber informácií o produkte.
Časté chyby
- Žiadosť o skript bez uvedenia kritérií prijatia. Bez toho, aby vedela, čo je pravda, AI vytvára povrchné scenáre, ktoré často míňajú skutočné riziko.
- Stačí sa uspokojiť s pozitívnymi testami. Vyslovene nechce negatívne a okrajové prípady. Tu sa často vyskytujú chyby.
- Prijímať to, čo sa vyrába tak, ako to je. Zabúda na to, že AI nepozná kontext produktu a necháva na scéne zbytočné alebo nemožné scenáre.
- Obchádzanie sledovateľnosti. Nespájanie prípadov s kritériami prijatia; v dôsledku toho nie je vidieť, ktoré kritérium sa netestuje (medzera pokrytia).
- Kvantitatívny omyl. Byť šťastný, pretože „bolo vydaných 60 scenárov“. Hodnota nie je v počte, ale v rozsahu, ktorý pokrýva riziko.
V súhrne
Návrh testu je o prenesení požiadavky jednej vety do konkrétnych, spustiteľných prípadov, ktoré dokazujú správnosť softvéru. AI túto transformáciu výrazne urýchľuje: vytvára komplexné plány, keď jej dáte akceptačné kritériá, klasické testovacie techniky (triedy ekvivalencie, bod prerušenia, rozhodovacia tabuľka, prechod stavu) a jasný výstupný formát. Ale AI je zaujatá smerom k pozitívnemu, nepozná kontext produktu a môže spôsobiť zbytočné nafúknutie. Vašou úlohou je explicitne požadovať negatívne a okrajové prípady, zaviesť sledovateľnosť, uprednostniť podľa rizika a zredukovať.
Aplikačná úloha
Vyberte si funkciu z vlastného projektu a zapíšte si kritériá prijatia. Nechajte AI vygenerovať testovacie prípady pomocou šablóny „generovania scenára založeného na technike“. Potom použite šablóny „Edge Case hunter“ a „Kontrola sledovateľnosti“. Výsledkom je: (1) pridať aspoň 3 okrajové prípady, ktoré AI preskočí, (2) orezať prípady, ktoré sa nepripájajú k žiadnym kritériám prijatia, (3) napísať nové prípady, ak nejaké kritériá prijatia zostali netestované. Finálnu sadu nalejte do tabuľky.
kontrolný zoznam
- [ ] Pred vyžiadaním scenára som objasnil kritériá prijatia.
- [ ] Požiadal som YZ o triedy ekvivalencie a analýzu hraničných hodnôt podľa názvu.
- [ ] Generoval som oddelene kladné, záporné a okrajové stavy.
- [ ] Každý testovací prípad som prepojil s akceptačným kritériom (sledovateľnosť).
- [ ] S tabuľkou som skontroloval medzeru v rozsahu a zbytočné prípady.
- [ ] Uprednostnil som riziko a prerezal som opuchnutý set.