Mga nadagdag:
- Kakayahang baguhin ang isang kinakailangan at pamantayan sa pagtanggap sa mga komprehensibong kaso ng pagsubok na may mga diskarte tulad ng mga klase ng equivalence, pagsusuri sa halaga ng hangganan at mga talahanayan ng desisyon, na may suporta ng artificial intelligence
- Kakayahang gumawa ng positibo, negatibo, at edge na mga sitwasyon ng kaso nang hiwalay at kumpletuhin ang mga edge na kaso na hindi nakuha ng artificial intelligence na may impormasyon ng produkto
- Kakayahang magtatag ng traceability at alisin ang mga puwang sa saklaw at hindi kinakailangang bloat sa pamamagitan ng pag-uugnay ng mga kaso ng pagsubok sa pamantayan sa pagtanggap
Ang trabaho ng tester ay madalas na nagsisimula sa blangkong slate na ito: mayroon siyang kinakailangan ("dapat na mai-reset ng user ang kanyang password") at kailangan niyang gawing dose-dosenang kongkretong pagsusuri ang nag-iisang pangungusap na ito na magpapatunay na gumagana nang tama ang software. Ang pagbabagong ito ay tinatawag na disenyo ng pagsubok. Ang pag-alam sa pagkakaiba sa pagitan ng isang pagsubok na senaryo — isang mataas na antas na layunin na naglalarawan kung ano ang susuriin, gaya ng "hindi wastong password ay dapat tanggihan" — at isang pagsubok na kaso — isang executable na unit na nagdedetalye ng sitwasyong iyon na may mga kongkretong hakbang, input, at inaasahang resulta ay susi. Eksaktong pinabilis ng artificial intelligence (AI) ang blangkong page na ito: ginagawang dose-dosenang draft na sitwasyon ang isang kinakailangan sa ilang segundo. Ngunit tandaan — kinokopya ng AI kung anong mga sitwasyon ang maaari mong isipin; Pumili ka gamit ang iyong kaalaman sa produkto kung aling mga sitwasyon ang talagang mahalaga.
Sa unit na ito, matututunan mo ang hakbang-hakbang kung paano gawing komprehensibo ngunit walang kalat na test suite na may suporta sa AI.
Hakbang sa hakbang: mula sa kinakailangan hanggang sa set ng pagsubok
Hakbang 1 — Linawin ang kinakailangan. Kolektahin ang mga pamantayan sa pagtanggap (mga kundisyon na dapat matugunan ng isang trabaho upang ituring na "tapos na") bago ibigay sa AI ang hilaw na kinakailangan. Ang "password ay dapat na mai-reset" ay hindi sapat; Ang mga panuntunan tulad ng "i-reset ang link ay may bisa sa loob ng 30 minuto", "ang parehong password ay hindi magagamit muli" ay ang pinagmulan ng tunay na pagsubok.
Hakbang 2 — Ipatupad ang mga diskarte sa pagsubok. Huwag lang sabihing "magsulat ng script" tungkol sa AI; Humingi ng mga klasikong diskarte sa disenyo ng pagsubok ayon sa pangalan:
- Equivalence classes (equivalence partitioning): Paghahati sa mga input sa mga grupo na inaasahang magbubunga ng parehong pag-uugali. Halimbawa, para sa field ng edad, ang "wastong hanay", "masyadong maliit", at "masyadong malaki" ay mga klase; Ang pagsubok ng isang halimbawa mula sa bawat klase ay sapat na.
- Pagsusuri sa halaga ng hangganan: Pagsubok sa mga halaga ng threshold batay sa katotohanan na ang mga error ay madalas na nangyayari sa mga hangganan. Ito ay tulad ng pagsubok sa 17, 18, 19 nang hiwalay para sa 18 na limitasyon sa edad.
- Talahanayan ng desisyon: Pag-tabulate ng mga kumbinasyon ng maraming kundisyon at ang inaasahang resulta ng bawat kumbinasyon.
- Transition ng estado: Pagsubok sa mga transition ng system mula sa estado patungo sa estado (halimbawa, order: ginawa → binayaran → naipadala) at mga di-wastong transition.
Hakbang 3 — Paghiwalayin ang positibo, negatibo, at gilid na estado. Humingi ng positibong pagsubok (inaasahang resulta na may tamang input), isang negatibong pagsubok (tamang error na may di-wastong input), at isang edge case — borderline o hindi pangkaraniwang mga kaso. Pangkalahatang binibigyang-diin ng AI ang positibo; Hindi kumpleto ang mga negatibo at gilid na kaso maliban kung tahasan mong hihilingin ang mga ito.
Hakbang 4 — Unahin at putulin. AI ay maaaring bumuo ng 60 mga sitwasyon; Hindi lahat sila ay may pantay na halaga. Unahin ang mga may mataas na panganib (pera, seguridad, pagkawala ng data) at pagsamahin ang mga duplicate.
Tip: Magpadala ng hiwalay na kahilingan sa AI na nagsasabing "bumuo ng 5 hindi maiisip na edge case mula sa kinakailangang ito". Ang pinakamahalagang kontribusyon ng AI ay madalas itong nagpapaalala sa iyo ng mga hindi pangkaraniwang sitwasyon na hindi mo napapansin.
Mahinang prompt / Malakas na prompt
Mahina: "Magsulat ng mga test case para sa pag-reset ng password."
Strong: "Bumuo ng mga test case para sa feature na 'pag-reset ng password' na may sumusunod na pamantayan sa pagtanggap: valid ang link sa loob ng 30 minuto, single use, hindi magagamit muli ang huling 3 password, naka-lock ang account sa loob ng 15 minuto pagkatapos ng 5 maling pagtatangka. Ilapat ang mga equivalence class at boundary value analysis. Magbigay ng positibo, negatibo at gilid na mga kaso sa magkakahiwalay na mga heading, mga kaugnay na resulta ng pagsubok, mga hakbang sa ID. Para sa bawat kaso:. I-highlight ang mga senaryo sa seguridad/pag-lock."
Napakahusay na prompt; Nagbibigay ito ng mga panuntunan, pamamaraan, format ng output at pagkakasunud-sunod ng priyoridad. Kaya, gumagawa ang AI ng mga executable at traceable na test cases, hindi mga decorative.
Format ng output ng test case
Humingi ng structured na format na maaaring direktang ma-import sa tool sa pamamahala ng pagsubok ng iyong team (hal. TestRail, Zephyr, Xray). Ipinapakita ng sumusunod na talahanayan ang mga bahagi ng isang mahusay na kaso ng pagsubok:
lugar
Paglalarawan
halimbawa
ID
natatanging ID
TC-PWD-014
Pamagat
maikling layunin
Tatanggihan ang nag-expire na link
kinakailangan
Kinakailangan ang kundisyon bago ang pagsubok
Ang link sa pag-reset ay nabuo 31 minuto ang nakalipas
hakbang
Mga sunud-sunod na aksyon
1. Mag-click sa link 2. Magpasok ng bagong password
data ng pagsubok
Ginamit ang mga konkretong halaga
lumang link, bagong password "Abc!2345"
inaasahang resulta
Pag-uugali upang ma-verify
"Nag-expire ang link" na error, hindi nagbabago ang password
Pamantayan sa pagtanggap
link ng traceability
AK-3: may bisa ang link sa loob ng 30 minuto
priority
Antas ng panganib
mataas
Apat na maaaring kopyahin na mga template
1) Produksyon ng senaryo batay sa teknikal:
Ang iyong tungkulin: senior test designer.Bumuo ng mga test case para sa feature: [feature and acceptance criteria].Ilapat: equivalence classes, breakpoint analysis, decision table.Magbigay ng output sa 3 grupo: Positive / Negative / Edge case.Each case: ID, precondition, steps, test data, expected result, associated acceptance criteria, priority (High/Medium/Low).
2) Edge case hunter:
Maglista ng 10 karaniwang hindi napapansin na mga edge case para sa sumusunod na feature: [feature]. Isulat sa isang pangungusap kung bakit mapanganib para sa bawat isa. Isipin ang mga axes tulad ng walang laman/null, masyadong mahaba ang input, concurrency, timeout, mga error sa format, Unicode/emoji, negatibo/zero, network outage.
3) Paggawa ng talahanayan ng desisyon:
Gumawa ng talahanayan ng desisyon para sa sumusunod na panuntunan sa negosyo: [mga panuntunan].Mga Column: mga kumbinasyon ng kundisyon; mga hilera: bawat kundisyon at inaasahang pagkilos. I-flag ang hindi matamo o magkasalungat na kumbinasyon. Pagkatapos ay magmungkahi ng test case para sa bawat kumbinasyon.
4) Kontrol sa traceability:
Ibinigay ang sumusunod na listahan ng mga pamantayan sa pagtanggap at ang mga sumusunod na kaso ng pagsubok:[criteria] / [mga kaso]. Ipakita sa tabular form kung aling mga pamantayan sa pagtanggap ang natutugunan ng WALANG mga kaso ng pagsubok (coverage gap) at kung aling mga kaso ang hindi natutugunan ng anumang pamantayan (redundant case).
tatlong mini case
Case 1 — Halaga ng mga estado ng gilid. Isang eksperto mula sa isang fintech team ang nagsulat ng 18 script para sa feature na money transfer. Inilapat niya ang template na "edge case hunter" sa AI; Ipinaalala ng AI ang sitwasyon ng "paglipat ng parehong balanse mula sa dalawang device nang sabay" (concurrency). Noong sinubukan ang sitwasyong ito, nakita ang isang kahinaan ng dobleng paggastos at isinara bago mag-live. Ang isang solong palawit na sitwasyon ay pumigil sa isang potensyal na pagkawala ng anim na numero.
Kaso 2 - Pagputol ng umbok. Isang team ang nagpagawa sa AI ng script para sa membership form at 74 na kaso ang dumating. Nalaman ng pagpapatakbo ng template ng traceability na 74 na kaso ang nakakatugon lamang sa 9 na pamantayan sa pagtanggap, kung saan marami ang sumusubok muli sa parehong klase ng equivalence. Ang set ay nabawasan mula 74 hanggang 23 makabuluhang kaso; nabawasan ang oras ng pagtakbo ng 68%, hindi bumababa ang saklaw.
Kaso 3 - Maling palagay. Iminungkahi ng AI na subukan ang mga di-wastong petsa tulad ng "Pebrero 31" para sa isang field ng petsa, ngunit hindi alam na na-block na ito ng bahagi ng kalendaryo na ginagamit ng koponan. Inalis ng eksperto ang 4 sa 6 na mga senaryo ng petsa na ginawa ng AI bilang hindi kailangan sa konteksto ng produkto. Mga posibilidad na nabuo ng AI; gumawa ng pagpili ng impormasyon ng produkto.
Mga karaniwang pagkakamali
- Paghiling ng script nang hindi nagbibigay ng pamantayan sa pagtanggap. Nang hindi nalalaman kung ano ang totoo, ang AI ay gumagawa ng mga mababaw na sitwasyon na kadalasang nakakaligtaan ang tunay na panganib.
- Pag-aayos lang para sa mga positibong pagsubok. Tahasang ayaw sa mga negatibo at edge na kaso. Dito madalas nagsisinungaling ang mga pagkakamali.
- Pagtanggap kung ano ang ginawa kung ano ito. Nakakalimutan na hindi alam ng AI ang konteksto ng produkto at nag-iiwan ng hindi kailangan o imposibleng mga sitwasyon sa set.
- Pag-bypass sa traceability. Hindi pag-uugnay ng mga kaso sa pamantayan sa pagtanggap; bilang resulta, hindi nakikita kung aling criterion ang hindi nasubok (coverage gap).
- Dami ng kamalian. Ang pagiging masaya dahil "60 script ang nailabas". Ang halaga ay wala sa numero, ngunit nasa saklaw na sumasaklaw sa panganib.
Sa buod
Ang disenyo ng pagsubok ay tungkol sa pagsasalin ng isang pangangailangan ng isang pangungusap sa mga kongkreto, maipapatupad na mga kaso na nagpapatunay sa kawastuhan ng software. Lubos na pinabilis ng AI ang pagbabagong ito: gumagawa ito ng mga komprehensibong blueprint kapag binibigyan mo ito ng pamantayan sa pagtanggap, mga klasikal na diskarte sa pagsubok (mga klase ng equivalence, breakpoint, talahanayan ng desisyon, transition ng estado) at isang malinaw na format ng output. Ngunit ang AI ay may kinikilingan sa positibo, hindi alam ang konteksto ng produkto, at maaaring makagawa ng hindi kinakailangang bloat. Ang iyong trabaho ay tahasang humiling ng mga negatibo at mga edge na kaso, magtatag ng traceability, unahin ayon sa panganib, at putulin.
Gawain ng aplikasyon
Pumili ng isang tampok mula sa iyong sariling proyekto at isulat ang pamantayan sa pagtanggap. Hayaang bumuo ng mga kaso ng pagsubok ang AI gamit ang template na "pagbuo ng senaryo na nakabatay sa pamamaraan". Pagkatapos ay ilapat ang mga template ng "edge case hunter" at "traceability check". Bilang resulta: (1) magdagdag ng hindi bababa sa 3 edge case na nilalaktawan ng AI, (2) prune case na hindi kumonekta sa anumang pamantayan sa pagtanggap, (3) sumulat ng mga bagong kaso kung mayroong anumang pamantayan sa pagtanggap na hindi pa nasusubok. Ibuhos ang huling set sa isang spreadsheet.
checklist
- [ ] Bago humiling ng script, nilinaw ko ang pamantayan sa pagtanggap.
- [ ] Humingi ako sa YZ ng mga equivalence class at boundary value analysis ayon sa pangalan.
- [ ] Nakabuo ako ng positibo, negatibo, at gilid na estado nang hiwalay.
- [ ] Iniugnay ko ang bawat test case sa isang criterion sa pagtanggap (traceability).
- [ ] Sinuri ko ang scope gap at hindi kinakailangang mga kaso sa talahanayan.
- [ ] Inuna ko sa panganib at pinutol ang namamagang set.