Kas yra domeno testavimas programinės įrangos testavime? (su pavyzdžiu)

Turinys:

Anonim

Kas yra domeno testavimas?

Domeno testavimas yra programinės įrangos testavimo procesas, kurio metu programa išbandoma pateikiant minimalų įvesties skaičių ir įvertinant atitinkamas jos išvestis. Pagrindinis domeno testavimo tikslas yra patikrinti, ar programinė įranga priima įvestį per priimtiną diapazoną ir pateikia reikiamą išvestį.

Tai yra funkcinio testavimo metodas, kai sistemos išvestis yra tikrinama su minimaliu įėjimų skaičiumi, siekiant užtikrinti, kad sistema nepriimtų neteisingų ir už diapazono įvesties verčių. Tai yra vienas iš svarbiausių baltosios dėžės testavimo metodų. Ji taip pat patikrina, ar sistema neturėtų priimti įvesties, sąlygų ir indeksų, esančių už nurodyto ar galiojančio diapazono ribų.

Domeno testavimas kiekvienam konkrečiam domenui skiriasi, todėl norint išbandyti programinės įrangos sistemą, reikia turėti domenui būdingų žinių.

Šioje pamokoje sužinosite

  • Paprastesnė domenų testavimo praktika
  • Domeno testavimo strategija
  • Domeno testavimo pavyzdys
  • Domeno testavimo struktūra

Paprastesnė domenų testavimo praktika

Atliekant domeno testavimą, mes padalijame domeną į padomenius (ekvivalentiškumo klases) ir tada bandome naudodami kiekvieno padomenio reikšmes. Pvz., Jei svetainė (domenas) buvo suteikta bandymams, svetainę padalinsime į mažas dalis (padomenį), kad būtų lengviau atlikti bandymus.

Domenas gali apimti bet kurio vieno įvesties kintamojo arba įvesties kintamųjų derinio testavimą.

Praktikai dažnai tiria paprasčiausius domeno testavimo atvejus, kai yra mažiau nei du kiti pavadinimai - „ribų testavimas“ ir „ekvivalentiškumo klasės analizė“.

Ribinis testavimas - ribinės vertės analizė (BVA) pagrįsta bandymu ribose tarp skaidinių. Mes išbandysime tinkamas ir neteisingas įvesties reikšmes skaidinyje / klasėse.

Lygiavertiškumo klasės testavimas. Šios technikos idėja yra suskaidyti (ty padalyti) bandymo sąlygų rinkinį į grupes arba rinkinius, kurie gali būti laikomi vienodais (ty sistema turėtų jas valdyti lygiaverčiai), taigi ir „ekvivalentiškumo skaidymas“.

Ta supaprastinta forma taikoma domeno bandymams -

  1. Tik įvesties kintamųjų bandymams
  2. Tik patikrinus sistemos lygiu
  3. Tik išbandžius po vieną
  4. Tik išbandžius labai paviršutiniškai

Tai galima supaprastinti taip:

Kintamas Galiojanti klasės ekvivalentiškumo klasė Neteisinga klasės ekvivalentiškumo klasė Ribos ir specialūs atvejai Pastabos
X 0–100 0
100
<0 -1
> 100 101

Paaiškinimas:

  1. Jei laukas priima diapazonus nuo 0 iki 100, laukas neturėtų priimti -1 ir 101, nes jie yra neteisingi įrašai ir peržengia ribas.
  2. Lauke turėtų būti tokios vertės kaip 0,100 ir bet koks skaičius tarp jų.

Tokio stalo statyba (praktiškai)

  1. Norėdami sukurti lygiavertiškumo klasės analizę laikui bėgant, įdėkite informaciją į skaičiuoklę. Pradėkite nuo kintamųjų sąrašo. Pridėkite informacijos apie juos, kai ją gausite.
  2. Galiausiai lentelėje turėtų būti visi kintamieji. Tai reiškia, kad visi įvesties kintamieji, visi išvesties kintamieji ir visi tarpiniai kintamieji, kuriuos galite stebėti.
  3. Praktiškai dauguma mano matytų lentelių yra neišsamios. Geriausiai matytuose pateikiami visi kintamieji ir pateikiama išsami informacija apie svarbiausius kintamuosius.

Domeno testavimo strategija

Testuodami domeną turite apsvarstyti šiuos dalykus:

  1. Kokį domeną mes testuojame?
  2. Kaip grupuoti vertes į klases?
  3. Kurias klasių vertes reikia išbandyti?
  4. Kaip nustatyti rezultatą?

Kokį domeną mes testuojame?

Bet kuris mūsų išbandytas domenas turi tam tikras įvesties ir išvesties funkcijas. Bus įvesti keli įvesties kintamieji, todėl reikia patikrinti tinkamą išvestį.

Domeno testavimo pavyzdys

  1. Apsvarstykite vieną įvesties bandymo scenarijų:

C = a + b, kur a ir b yra įvesties kintamieji, o C yra išvesties kintamasis.

Aukščiau pateiktame pavyzdyje nereikia klasifikuoti, o kintamųjų derinti nereikia.

  1. Apsvarstykite toliau pateiktą kelis įvestis ir tinkamą išvesties scenarijų:

Apsvarstykite žaidimų parodą vaikams, yra surengtos 6 varžybos, o bilietus reikia pateikti atsižvelgiant į amžių ir lytį. Bilietų pardavimas yra vienas iš modulių, kurį reikia išbandyti visam „Games“ parodos funkcionalumui.

Pagal scenarijų gavome šešis scenarijus pagal amžių ir varžybas:

  1. Amžius> 5 ir <10 metų, berniukas turėtų dalyvauti istorijų pasakojime.
  2. Amžius> 5 ir <10 metų, mergina turėtų dalyvauti piešinių konkurse.
  3. Amžius> 10 ir <15, berniukas turėtų dalyvauti viktorinoje.
  4. Amžius> 10 ir <15 metų, mergina turėtų dalyvauti rašinių rašyme.
  5. <5 metų amžiaus, tiek berniukai, tiek merginos turėtų dalyvauti Rhymes varžybose.
  6. Amžius> 15 metų, tiek berniukai, tiek merginos turėtų dalyvauti „Poezijos“ konkurse.

Čia bus įvestas amžius ir lytis, taigi bus išduodamas varžybų bilietas. Šis atvejis yra įvesties padalijimas arba tiesiog vertybių grupavimas.

Kaip grupuoti vertes į klases?

Kai kurių reikšmių skaidymas reiškia jų padalijimą į sutampančius pogrupius.

Kaip aptarėme anksčiau, yra du skaidymo tipai:

  1. Lygiavertiškumo skaidymas - lygiavertiškumo skaidymas yra programinės įrangos testavimo technika, kuri programinės įrangos įvesties duomenis padalija į lygiaverčių duomenų skaidinius, iš kurių galima gauti bandymo atvejus. Iš esmės bandomieji atvejai skirti bent kartą padengti kiekvieną skaidinį.
  2. Ribinės vertės analizė - Ribinės vertės analizė yra programinės įrangos testavimo technika, pagal kurią testai yra sukurti įtraukiant ribinių verčių atstovus diapazone. Idėja kyla iš ribos .

Pirmiau pateiktame pavyzdyje mes suskirstome vertes į pogrupį arba pogrupį. Mes suskirstome amžių į šias klases:

  1. 1 klasė: vaikai nuo 5 iki 10 metų amžiaus
  2. 2 klasė: vaikai, kurių amžiaus grupė jaunesnė nei 5
  3. 3 klasė: 10–15 metų amžiaus vaikai
  4. 4 klasė: vaikai, kurių amžiaus grupė yra didesnė nei 15 metų.

Kurias klasių vertes reikia išbandyti?

Testavimui paimtos vertės turėtų būti Ribinės vertės:

  1. Ribos yra lygiavertiškumo klasių atstovai, iš kurių mes juos atrenkame. Jie dažniau atskleidžia klaidą nei kiti klasės nariai, todėl yra geresni atstovai.
  2. Geriausias ekvivalentiškumo klasės atstovas yra vertė tarp diapazono.

Pirmiau pateiktame pavyzdyje turime išbandyti šias klases:

Pavyzdžiui, scenarijus Nr. 1:

  1. 1 klasė: vaikai nuo 5 iki 10 metų amžiaus (amžius> 5 ir <= 10)

Ribinės vertės:

  1. Vertybės turėtų būti lygios arba mažesnės nei 10. Taigi 10 metų amžius turėtų būti įtrauktas į šią klasę.
  2. Vertybės turėtų būti didesnės nei 5. Taigi 5 metų amžius neturėtų būti įtrauktas į šią klasę.
  3. Vertybės turėtų būti lygios arba mažesnės nei 10. Taigi 11 metų amžius neturėtų būti įtrauktas į šią klasę.
  4. Vertybės turėtų būti didesnės nei 5. Taigi, 6 metai turėtų būti įtraukti į šią klasę.

Ekvivalentiškumo skaidinio vertės:

Ekvivalentiškumo skaidinys nurodomas, kai iš kiekvieno skaidinio reikia išbandyti tik vieną sąlygą. Šiuo atveju mes manome, kad jei skaidinyje veikia viena sąlyga, visos sąlygos turėtų veikti. Lygiai taip pat, jei neveikia viena sąlyga tame skaidinyje, manome, kad nė viena iš kitų sąlygų neveiks. Pavyzdžiui,

(Amžius> 5 ir <= 10)

Kadangi vertės nuo 6 iki 10 yra tinkamos, reikia pasirinkti vieną iš 6,7,8,9 ir 10 reikšmių. Taigi pasirinktas amžius „8“ yra galiojantis įvesties amžius amžiaus grupėje nuo (Amžius> 5 ir <= 10). Šios rūšies skaidinys vadinamas lygiavertiškumo skaidiniu.

Scenarijus Ribinės vertės, kurių reikia imtis Ekvivalentiškumo padalijimo vertės
Berniukas - amžius> 5 ir <= 10 Įvesties amžius = 6 Įvesties amžius = 5 Įvesties amžius = 11 Įvesties amžius = 10 Įvesties amžius = 8
Mergaitė - amžius> 5 ir <= 10 Įvesties amžius = 6 Įvesties amžius = 5 Įvesties amžius = 11 Įvesties amžius = 10 Įvesties amžius = 8
Berniukas - amžius> 10 ir <= 15 Įvesties amžius = 11 Įvesties amžius = 10 Įvesties amžius = 15 Įvesties amžius = 16 Įvesties amžius = 13
Mergaitė - amžius> 10 ir <= 15 Įvesties amžius = 11 Įvesties amžius = 10 Įvesties amžius = 15 Įvesties amžius = 16 Įvesties amžius = 13
Amžius <= 5 Įvesties amžius = 4 Įvesties amžius = 5 Įvesties amžius = 3
Amžius> 15 Įvesties amžius = 15 Įvesties amžius = 16 Įvesties amžius = 25

Kaip nustatyti, ar programa išlaikė testą?

Funkcijos perdavimas priklauso ne tik nuo pirmiau minėtų scenarijų rezultatų. Pateiktas indėlis ir laukiamas rezultatas duos mums rezultatus, o tam reikia žinių apie sritis.

Pavyzdžio rezultatų nustatymas:

Taigi, jei praeina visi pirmiau minėti bandomieji atvejai, bilietų išdavimo konkurse domenas praeina. Jei ne, domenas nepavyksta.

Domeno testavimo struktūra

Paprastai bandytojai domeno bandymuose atlieka toliau nurodytus veiksmus. Jie gali būti pritaikyti / praleisti pagal mūsų bandymų poreikius.

  • Nustatykite potencialiai įdomius kintamuosius.
  • Nurodykite kintamąjį (-ius), kurį (-ius) galite analizuoti, ir užsisakykite juos (nuo mažiausio iki didžiausio ir atvirkščiai).
  • Sukurkite ir nustatykite ribines vertes ir ekvivalentiškumo klasės vertes, kaip nurodyta aukščiau.
  • Nustatykite antrinius matmenis ir analizuokite kiekvieną klasikiniu būdu. (Ankstesniame pavyzdyje lytis yra antrinė dimensija).
  • Nustatykite ir išbandykite kintamuosius, kurie turi rezultatus (išvesties kintamieji).
  • Įvertinkite, kaip programa naudoja šio kintamojo vertę.
  • Nustatykite papildomus potencialiai susijusius kintamuosius, kad būtų galima išbandyti derinį.
  • Įsivaizduokite riziką, kuri nebūtinai atspindi akivaizdų matmenį.
  • Nustatykite ir išvardykite neanalizuotus kintamuosius. Surinkite informaciją vėlesnei analizei.
  • Apibendrinkite savo analizę rizikos ir ekvivalentiškumo lentele.

Santrauka:

Domeno testavimui, kaip aprašyta aukščiau, reikia žinių apie teisingo įvesties pateikimą norimam išėjimui pasiekti. Taigi jį galima naudoti tik mažiems kodo gabalėliams.