Mi az a domain tesztelés?
A tartománytesztelés egy szoftvertesztelési folyamat, amelyben az alkalmazást a minimális számú bemenet megadásával és annak megfelelő kimeneteinek értékelésével tesztelik. A tartomány tesztelésének elsődleges célja annak ellenőrzése, hogy a szoftveralkalmazás elfogadja-e az elfogadható tartományon belüli bemeneteket és biztosítja-e a szükséges kimenetet.
Ez egy funkcionális tesztelési technika, amelyben a rendszer kimenetét minimális számú bemenettel tesztelik annak biztosítására, hogy a rendszer ne fogadjon el érvénytelen és tartományon kívüli bemeneti értékeket. Ez az egyik legfontosabb fehér doboz tesztelési módszer. Azt is ellenőrzi, hogy a rendszernek nem szabad-e elfogadnia a megadott vagy érvényes tartományon kívüli bemeneteket, feltételeket és indexeket.
A tartománytesztelés minden egyes tartományonként eltérő, ezért a szoftverrendszer teszteléséhez tartományspecifikus ismeretekkel kell rendelkeznie.
Ebben az oktatóanyagban megtanulja-
- A tartomány tesztelésének egyszerűbb gyakorlása
- Domain tesztelési stratégia
- Domain tesztelési példa
- Domain tesztelési struktúra
A tartomány tesztelésének egyszerűbb gyakorlása
A tartománytesztelés során egy tartományt altartományokra (egyenértékűségi osztályokra) osztunk, majd az egyes aldomainek értékeit használva teszteljük. Például, ha egy webhelyet (domaint) adtak tesztelésre, akkor a tesztelés megkönnyítése érdekében a webhelyet kis részekre (aldomainre) osztjuk.
A tartomány magában foglalhatja bármely bemeneti változó vagy bemeneti változók kombinációjának tesztelését.
A gyakorlók gyakran tanulmányozzák a domain-tesztelés legegyszerűbb eseteit, amelyek kétnél kevesebb névnél vannak, a "határvizsgálat" és az "ekvivalenciaosztály-elemzés".
Határtesztelés - A határérték-elemzés (BVA) a partíciók közötti határokon történő tesztelésen alapul. Az érvényes és érvénytelen bemeneti értékeket egyaránt teszteljük a partícióban / osztályokban.
Ekvivalenciaosztály tesztelése - A technika mögött az az ötlet áll, hogy a tesztfeltételek halmazát felosztjuk (vagyis felosztjuk) egy csoportnak vagy halmaznak, amely azonosnak tekinthető (azaz a rendszernek ekvivalensen kell kezelnie őket), ezért az „ekvivalencia particionálás”.
Ez az egyszerűsített forma a tartomány tesztelésére vonatkozik -
- Csak a bemeneti változók tesztjeire
- Csak rendszerszinten tesztelve
- Csak akkor, ha egyenként tesztelik
- Csak ha nagyon felületesen tesztelik
Az alábbiak szerint egyszerűsíthető:
Változó | Érvényes osztály egyenértékűségi osztály | Érvénytelen osztályegyenértékűségi osztály | Határok és különleges esetek | Megjegyzések |
---|---|---|---|---|
x | 0-100 | 0 | ||
100 | ||||
<0 | -1 | |||
> 100 | 101 |
Magyarázat:
- Ha egy mező elfogadja a 0-100 tartományt, akkor a mezőnek nem szabad elfogadnia a -1 és a 101 értékeket, mivel érvénytelen bejegyzések és túl vannak a határokon.
- A mezőnek el kell fogadnia olyan értékeket, mint 0,100 és tetszőleges számot.
Ilyen épületasztal (a gyakorlatban)
- Az ekvivalencia osztályelemzés időbeli felépítéséhez tegye az információkat egy táblázatba. Kezdje a változók felsorolásával. Adjon hozzá információkat róluk, amikor megszerzi őket.
- A táblázatnak végül tartalmaznia kell az összes változót. Ez azt jelenti, hogy minden bemeneti változó, minden kimeneti változó és minden megfigyelhető köztes változó.
- A gyakorlatban a legtöbb általam látott táblázat hiányos. A legjobban látottak felsorolják az összes változót, és részleteket adnak a kritikus változókhoz.
Domain tesztelési stratégia
A domain tesztelése során mérlegelnie kell a következő dolgokat,
- Milyen tartományt tesztelünk?
- Hogyan csoportosítsuk az értékeket osztályokba?
- Az osztályok mely értékeit kell tesztelni?
- Hogyan lehet meghatározni az eredményt?
Milyen tartományt tesztelünk?
Bármely általunk tesztelt tartomány rendelkezik bizonyos bemeneti és kimeneti funkcionalitással. Néhány bemeneti változót be kell írni, és a megfelelő kimenetet ellenőrizni kell.
Domain tesztelési példa
- Vegyünk egy bemeneti teszt forgatókönyvet:
C = a + b, ahol a és b bemeneti változók, és C a kimeneti változó.
Itt a fenti példában nincs szükség osztályozásra vagy a változók kombinációjára.
- Vegye figyelembe az alábbi több bemenetet és megfelelő kimeneti forgatókönyvet:
Vegyünk egy gyerekeknek szóló játékkiállítást, 6 versenyt rendeznek, és a jegyeket életkoruk és nemük szerint kell megadni. A jegykiadás az egyik modul, amelyet a Games kiállítás teljes funkcionalitása szempontjából tesztelni kell.
A forgatókönyv szerint hat forgatókönyvet kaptunk az életkor és a versenyek alapján:
- Életkor> 5 és <10, a fiúnak részt kell vennie a mesemondásban.
- Életkor> 5 és <10, a lánynak részt kell vennie a Rajzversenyen.
- Kor> 10 és <15, Fiúnak részt kell vennie a vetélkedőn.
- > 10 és <15 év közötti lánynak részt kell vennie az esszéírásban.
- <5 év, fiúknak és lányoknak egyaránt részt kell venniük a Rhymes versenyen.
- 15 évnél idősebb fiúknak és lányoknak egyaránt részt kell venniük a Versversen.
Itt a beviteli kor és nem lesz, így kiállítják a versenyre szóló jegyet. Ez az eset a bemenetek partíciója vagy egyszerűen az értékek csoportosítása képbe kerül.
Hogyan csoportosítsuk az értékeket osztályokba?
Bizonyos értékek felosztása azt jelenti, hogy nem átfedő részhalmazokra bontják.
Ahogy korábban megbeszéltük, kétféle particionálás létezik:
- Ekvivalencia particionálás - Az ekvivalencia particionálás egy szoftver tesztelési technika, amely egy szoftver egység bemeneti adatait egyenértékű adatok partícióira osztja fel, amelyekből tesztesetek származhatnak. Elvileg a tesztesetek úgy vannak kialakítva, hogy minden partíciót legalább egyszer lefedjenek.
- Határérték elemzés - A határérték elemzés egy szoftveres tesztelési technika, amelynek során a teszteket úgy tervezik, hogy a határértékek képviselőit bevonják egy tartományba. Az ötlet a határból származik .
A fenti példánál az értékeket felosztjuk egy részhalmazra vagy részhalmazra. A korosztályt az alábbi osztályokba osztjuk:
- 1. osztály: 5–10 éves korosztályos gyermekek
- 2. osztály: 5 évesnél fiatalabb gyermekek
- 3. osztály: 10-15 éves korosztályú gyermekek
- 4. osztály: 15 évesnél idősebb gyermekek.
Az osztályok mely értékeit kell tesztelni?
A tesztelésre felvett értékeknek határértékeknek kell lenniük:
- A határok azok az ekvivalencia osztályok képviselői, amelyekből mintát veszünk. Nagyobb valószínűséggel tárnak fel hibát, mint az osztály többi tagja, ezért jobb képviselők.
- Az egyenértékűségi osztály legjobb képviselője a tartomány közötti érték.
A fenti példához a következő osztályokat kell tesztelni:
Például az 1. szcenárióra:
- 1. osztály: 5–10 éves korosztályú gyermekek (életkor> 5 és <= 10)
Határértékek:
- Az értékeknek egyenlőnek vagy kevesebbnek kell lenniük, mint 10. Ezért a 10 éves kort bele kell foglalni ebbe az osztályba.
- Az értékeknek 5-nél nagyobbaknak kell lenniük. Ezért az 5 éves kort nem szabad ebbe az osztályba sorolni.
- Az értékeknek legalább 10-nek vagy kisebbnek kell lenniük. Ezért a 11 éves kort nem szabad ebbe az osztályba sorolni.
- Az értékeknek nagyobbnak kell lenniük, mint 5. Ezért a 6 éves kort bele kell foglalni ebbe az osztályba.
Ekvivalencia-partíció értékei:
Az ekvivalenciapartícióra akkor hivatkozunk, ha az egyes partíciókból csak egy feltételt kell tesztelnie. Ebben feltételezzük, hogy ha a partícióban egy feltétel működik, akkor az összes feltételnek működnie kell. Ugyanígy, ha az adott partíció egyik feltétele nem működik, akkor feltételezzük, hogy a többi feltétel egyike sem fog működni. Például,
(Életkor> 5 és <= 10)
Mivel a 6 és 10 közötti értékek érvényesek, a 6,7,8,9 és a 10 közötti értékek egyikét fel kell venni. Ezért a kiválasztott "8" életkor érvényes beviteli életkor a (kor> 5 és <= 10) közötti korosztály számára. Ezt a fajta partíciót ekvivalencia partíciónak nevezzük.
Forgatókönyv | Meg kell venni a határértékeket | Ekvivalencia particionáló értékek |
---|---|---|
Fiú - életkor> 5 és <= 10 | Beviteli életkor = 6 Beviteli életkor = 5 Beviteli életkor = 11 Beviteli életkor = 10 | Beviteli életkor = 8 |
Lány - életkor> 5 és <= 10 | Beviteli életkor = 6 Beviteli életkor = 5 Beviteli életkor = 11 Beviteli életkor = 10 | Beviteli életkor = 8 |
Fiú - életkor> 10 és <= 15 | Beviteli életkor = 11 Beviteli életkor = 10 Beviteli életkor = 15 Beviteli életkor = 16 | Beviteli életkor = 13 |
Lány - életkor> 10 és <= 15 | Beviteli életkor = 11 Beviteli életkor = 10 Beviteli életkor = 15 Beviteli életkor = 16 | Beviteli életkor = 13 |
Kor <= 5 | Beviteli életkor = 4 Beviteli életkor = 5 | Beviteli életkor = 3 |
Kor> 15 | Beviteli életkor = 15 Beviteli életkor = 16 | Beviteli életkor = 25 |
Hogyan állapíthatjuk meg, hogy a program sikeresen teljesítette-e vagy sem?
A funkcionalitás átadása nemcsak a fenti forgatókönyvek eredményeitől függ. A megadott input és a várható output megadja nekünk az eredményeket, és ehhez tartományi ismeretekre van szükség.
A példa eredményeinek meghatározása:
Ennélfogva, ha a fentiekben leírt összes tesztesemény sikeresen teljesül, akkor a versenyben a jegyek kiállításának tartománya áthalad. Ha nem, akkor a domain meghiúsul.
Domain tesztelési struktúra
A tesztelők általában az alábbi lépéseket követik egy tartomány tesztelésénél. Ezeket testreszabási igényeink szerint testre szabhatjuk / kihagyhatjuk.
- Határozza meg a potenciálisan érdekes változókat.
- Határozza meg azokat a változó (ka) t, amelyeket most elemezhet, és rendelje meg őket (a legkisebbtől a legnagyobbig és fordítva).
- Hozzon létre és azonosítson határértékeket és ekvivalencia osztályértékeket a fentiek szerint.
- Határozza meg a másodlagos dimenziókat, és elemezze mindegyiket klasszikus módon. (A fenti példában a Nem a másodlagos dimenzió).
- Azonosítsa és tesztelje azokat a változókat, amelyek eredményeket tartalmaznak (kimeneti változók).
- Értékelje, hogy a program hogyan használja ennek a változónak az értékét.
- Azonosítson további potenciálisan kapcsolódó változókat a kombinációs teszteléshez.
- Képzeljen el olyan kockázatokat, amelyek nem feltétlenül kapcsolódnak nyilvánvaló dimenzióhoz.
- Az elemzés nélküli változók azonosítása és felsorolása. Gyűjtsön információkat későbbi elemzés céljából.
- Összegezze elemzését egy kockázat / ekvivalencia táblázattal.
Összegzés:
A tartomány tesztelése, amint azt fent leírtuk, megköveteli a megfelelő bemenet biztosításának ismeretét a kívánt kimenet eléréséhez. Így csak kis kóddarabokra használható.