Megfelelőségi tesztelés (megfelelőségi tesztelés) a szoftvertesztelésben

⚡ Okos összefoglaló

A megfelelőségi tesztelés igazolja, hogy egy szoftverrendszer megfelel az olyan szervezetek, mint az IEEE, a W3C vagy az ETSI által meghatározott szabványoknak és előírásoknak, amelyek a teljesítményre, a funkciókra, a robusztusságra, az interoperabilitásra és a rendszer általános viselkedésére vonatkoznak.

  • 🔘 Más néven: Megfelelőségi vizsgálat vagy típusvizsgálat, egy közzétett szabvány szerinti hivatalos ellenőrzés.
  • ???? lefedettség: Tartalmazza a megfelelőségi, terhelési, feszültség- és térfogatvizsgálatot egyetlen megfelelőségi programon belül.
  • 🧭 Részhalmazok: A specifikációkat a teszttervezés megkezdése előtt profilokba, szintekbe és modulokba csoportosítják.
  • 🔄 Folyamat: Szabványok elemzése, eszközök kiválasztása, eljárások tervezése, validálása, majd tanúsítási szabályzatok bevezetése.
  • 📱 Mozgó: A GSM és CDMA eszközök protokoll-, SIM-, RF-, hang- és abszorpciós teszteket is végeznek.
  • 🇧🇷 Megkülönböztetés: A megfelelőség formális és teljes körű támogatást jelent; a megfelelőség informális és részleges támogatást jelent.

Megfelelőségi tesztelés és megfelelőségi tesztelési folyamat a szoftvertesztelésben

Megfelelőségi vizsgálat

Megfelelőségi vizsgálat egy szoftvertesztelési technika, amelyet annak igazolására használnak, hogy egy szoftverrendszer megfelel az olyan szervezetek által meghatározott szabványoknak és előírásoknak, mint az IEEE, a W3C vagy az ETSI. Meghatározza, hogy a tesztelt rendszer mennyire felel meg egy adott szabvány egyedi követelményeinek. A megfelelőségi tesztelést megfelelőségi tesztelésnek is nevezik.

Foglalkozhat technikai szempontokkal, de tervezésénél fogva a következőket is lefedi:

  • Teljesítmény
  • Funkciók
  • robusztusság
  • Az interoperabilitás
  • A rendszer viselkedése

A megfelelőségi vizsgálat típusai

A megfelelőségi tesztelés lehet logikai vagy fizikai, és a következő tesztelési típusokat foglalja magában:

Az alábbi ábra azt mutatja, hogyan illeszkednek ezek a tesztelési típusok egyetlen megfelelőségi programon belül.

A megfelelőségi tesztelés típusai megfelelőségi, terhelési, stressz- és térfogati tesztelésként vannak csoportosítva

Miért van szükségünk megfelelőségi vizsgálatra?

  • A rendszerkövetelmények teljesítésének ellenőrzése
  • A rendszerdokumentáció teljességének ellenőrzése
  • A fejlesztés, a tervezés és az értékelés ellenőrzése a specifikációk alapján

Mit kell tesztelnünk?

  • Azok a szabványok, amelyeken keresztül a végrehajtás megtörténik
  • A fejlesztendő rendszer felhívása
  • A specifikációk köre
  • Specifikációs célok

A megfelelőségi tesztelést a vezetőség kezdeményezi, biztosítva, hogy a csapat megértse az alkalmazandó szabványokat, specifikációkat és eljárásokat.

A szabványokat és specifikációkat világosan kell megfogalmazni a kétértelműségek elkerülése érdekében. Ahol nem azok, a megfelelőségi tesztelés önmagában is hasznos annak azonosításában, hogy milyen lépések szükségesek a relevánssá és megbízhatóvá tételükhöz.

Mikor és hogyan kell elvégezni a megfelelőségi vizsgálatot?

A megfelelőségi tesztelést akkor végzik, amikor a rendszer általános konzisztenciáját, teljességét és helyességét kell ellenőrizni a követelményspecifikációkhoz képest. Az alkalmazott módszertanok nem sokban különböznek a szokásos fejlesztési életciklus-szakaszoktól:

  • A követelmények specifikációinak elemzése
  • A tesztterv elkészítése
  • Tesztesetek előkészítése és céljuk meghatározása
  • Dokumentáció készítése az elkészített teszttervekről

A specifikációk néhány további aspektusa figyelmet igényel, különösen a részhalmazok, amelyek általában három típusba sorolhatók – Profil, Szint és Modulok:

  • profil a specifikációk egy részhalmaza, amely magában foglalja a rendszer azon funkcióit, amelyek egy adott felhasználói csoport igényeinek kielégítéséhez szükségesek.
  • Szintek a specifikációk beágyazott részhalmazai, ahol az 1. szint az alapvető specifikációkat, a 2. szint pedig az 1. szintet plusz további vagy új funkciókat jelöli.
  • Modulok jelentősen összefüggő szabványok és specifikációk gyűjteményei

Megfelelőségi vizsgálati folyamat

A megfelelőségi tesztelési folyamat, vagy más néven a megfelelőségi tesztelési folyamat, szükséges a hatékonyság és a teljesítmény biztosításához, valamint a szoftveralkalmazás jövőbeli kockázatainak elkerüléséhez. Egy hatékony megfelelőségi teszt a következő lépésenkénti folyamatot követi:

  1. Szabványok és specifikációk elemzése
  2. Teszteszközök és tesztkészlet kiválasztása
  3. Tesztelési eljárások tervezése
  4. A szükséges érvényesítések ellenőrzése
  5. Releváns tesztelési irányelvek és tanúsítványok elfogadása

Az alábbi megfelelőségi és megfelelőségi tesztelési folyamat diagramos ábrázolása megkönnyíti a sorrend követését.

Ötlépcsős megfelelőségi tesztelési folyamat a szabványok elemzésétől a tanúsításig

Használati esetként kifejezve ugyanaz a folyamat mutatja meg, hogy melyik szereplő hajtja végre az egyes szakaszokat.

A megfelelőségi tesztelési folyamat használati esetdiagramja tesztelői és tanúsító szereplőkkel

Megfelelőségi tesztelés vs. megfelelőségi tesztelés

A megfelelőségi tesztelést időnként megfelelőségi tesztelésnek is nevezik, de néhány alapvető tény megkülönbözteti a kettőt. Az alábbi táblázat összehasonlítja őket.

Megfelelőségi vizsgálat Megfelelőség tesztelése
A szabványoknak való megfelelés formális és precíz tesztelési módja Egy informális és kevésbé pontos módszer a szabványok szerinti tesztelésre
A megfelelőségi tanúsítvány csak olyan operációs rendszerre vonatkozik, amely rendelkezik hivatalos tanúsító hatóság jóváhagyásával. Egy operációs rendszer, amely egyetlen POSIX API-t biztosít (Portable Operating System Interface) állítólag kompatibilis
Olyan rendszer tesztelésére használják, amely teljes mértékben támogatja az adott szabványokat Olyan rendszer tesztelésére használják, amely csak a megadott szabványok egy részét támogatja

A megfelelőségi vizsgálat előnyei

  1. Biztosítja a specifikációk megfelelő végrehajtását
  2. Biztosítja a hordozhatóságot és az interoperabilitást
  3. Biztosítja a szabványok megfelelő felhasználását
  4. Lehetővé teszi annak biztosítását, hogy a felületek és funkciók a várt módon működjenek
  5. Segít azonosítani azokat a területeket, amelyeknek meg kell felelniük, és azokat, amelyeknek nem, például a szintaxist és a szemantikát

A megfelelőségi vizsgálat hátrányai

Más tesztelési típusokhoz hasonlóan a megfelelőségi tesztelés is nehezen kivitelezhető feladatokat foglal magában, amelyek kihívást jelenthetnek. Néhányat ezek közül az alábbiakban sorolunk fel:

  1. A hatékony megfelelőségi teszteléshez meg kell határozni a tesztelt rendszer osztályát, valamint egy megfelelő módszertant.
  2. Specifikációk kategorizálása profilokba, szintekbe és modulokba
  3. Értékek előre definiálása
  4. A tesztelési folyamat sikeres lebonyolításához szükséges kiterjesztések, opciók és megközelítések megtervezése

Megfelelőségtesztelés: Kritikus nézetek

A megfelelőségi tesztelésnek vannak olyan területei, amelyek extra figyelmet és ismereteket igényelnek a sikeres megvalósításhoz:

  1. A legalkalmasabb vizsgálati módszerek
  2. Tesztelési eszköz kiválasztása, amely automatizálja a tesztelési folyamatot
  3. Világos megértése annak, hogy a megfelelőségi tesztelés csak a nemmegfelelőséget mutatja, soha nem magát a megfelelőséget.
  4. A megfelelőségi tesztelési program megtervezése és megvalósítása
  5. Annak meghatározása, hogy milyen formálisan kell végrehajtani
  6. Irányelvek és szabályozás

Megfelelőségi tesztelés mobil rendszerhez

Más szoftvertesztelési típusokhoz hasonlóan a megfelelőségtesztelés mobil rendszereken is elvégezhető. Miután a rendszer összeszerelt, a telepítés előtt egy megfelelőségi teszt segítségével ellenőrzik a használhatóságát.

A hálózat típusától (például GSM vagy CDMA) függően teszteket végeznek a megfelelőség és az interoperabilitás elérése érdekében. Ezek a tesztek a következőket foglalhatják magukban:

Példa használati eset diagram

A következő használati eset ábra bemutatja, hogyan történik a megfelelőségi tesztelés telepített rendszerek esetén. mobil rendszerek.

Használati eset diagram egy telepített mobil rendszer megfelelőségi teszteléséhez

Ez a SIM-kártya tesztelésére két lépésben bonyolítható le. Az első lépés a következő: jelszóérvényesítés, lásd lent.

SIM-kártya jelszó-érvényesítési eset helyes és helytelen PIN-útvonalakkal

A második szakasz az hívás kezdeményezése, amelynek két eredménye van, a hívás sikeres és a hívás sikertelen.

Hívásindítási használati eset, amelyen látható a sikeres és a sikertelen hívás eredménye

A protokoll tesztelése ugyanazt a mintát követi, ahogy ez a használati eset is mutatja.

Protokolltesztelési használati eset egy megfelelőségi tesztelés alatt álló mobil rendszerhez

Az alábbi teszteset sablon bemutatja, hogyan íródnak a tesztesetek protokollteszteléshez.

Teszt azonosító Teszt forgatókönyv Tesztlépések Teszt adat Várható eredmény Tényleges eredmény Állapot Megjegyzések
PT001 A protokollnak nincs holtpontja Kezdje a kommunikációs folyamattal _ Sikeres kommunikációt kell létrehoznia A kommunikáció sikeresen létrejött Átmegy _
PT002 "PingA „parancs helyesen működik időtúllépés esetén” belép Ping parancsot, mint 'Ping -w' a parancssorban Ping 1000 Meg kell jelennie az „üzenetnek”Transmit Sikeres." Az üzenet azt mutatja, hogy „Transmit Sikeres." Átmegy _
PT003 Számolja meg az „echo” kérelmek számát belép Ping parancsot, mint 'Ping -n' a parancssorban Ping 4 El kellene kezdeni ping32 bájtos adattal futtatja a 0.0.0.4-et, és megjeleníti a következő üzenetet: „Transmit Sikeres." Kezdődik pinging 0.0.0.4 32 bájtos adattal, de a következő üzenetet mutatja: „Transmit Sikertelen." Megbukik Szemantikai vagy funkcionális hiba
PT004 Bármely állam bármely államból elérhető Kilépés egy állapotból, és visszatérés az előző vagy a következőbe _ Sikeresen meg kell változtatni az állapotot Sikeresen megváltoztatja az állapotot Átmegy _

Az ilyen sablonok egységességet hoznak a tesztelési folyamatba. A hálózat típusától függően több száz teszteset definiálható és futtatható le annak megerősítésére, hogy a mobil rendszer a követelményspecifikációnak megfelelően működik.

GYIK

Az ISO mellett az IEEE, a W3C, az ETSI és a 3GPP a leggyakrabban említett szabványok. Mindegyik publikálja a specifikációt, és sok esetben egy hivatalos tesztkészletet is, amelyet a laboratórium lefuttat a tanúsítvány megadása előtt.

A modellek egy hosszú specifikációt olvasnak be, és minden egyes záradékot egy teszteset-jelölthöz rendelnek, ami lerövidíti a tracteljesítőképességi munka. Egy képzett felülvizsgáló továbbra is jóváhagyja a munkát, mivel a tanúsítási bizonyítékoknak védhetőnek kell lenniük egy auditor számára.

Igen, az ismétlődő harne-kódhoz és a közzétett tesztkészlet körüli asserciókhoz. Az ágensi futtatók minden buildnél újra futtathatják a készletet, bár a sikeres kritériumoknak a szabványból kell származniuk, nem az asszisztensből.

Akkreditált tanúsító hatóság vagy szabványügyi testület által elismert tesztlaboratórium, nem pedig a fejlesztőcsapat. Az önbevalláson alapuló eredményeket általában megfelelőségi nyilatkozatként, nem pedig tanúsítványként írják le.

Valahányszor a szabványt felülvizsgálják, vagy a megvalósítás olyan módon változik, amely egy tanúsított interfészt érint. Sok tanúsítvány érvényességi időszakkal is rendelkezik, amely után a csomag újrafut.

A megfelelőség azt bizonyítja, hogy egy implementáció megfelel a specifikációnak. Együttműködési tesztelés majd bebizonyítja, hogy két függetlenül felépített implementáció valóban működik együtt. Az első sikeres teljesítése nem garantálja a másodikat.

Túlnyomórészt fekete dobozos teszt. A tesztkészlet a közzétett interfészt teszteli, és összehasonlítja a megfigyelt viselkedést a szabvánnyal, függetlenül attól, hogy a megvalósítás hogyan épült fel belsőleg.

A tracEgy teljesítőképességi mátrix, amely a szabvány minden egyes záradékát egy tesztesethez, a végrehajtott eredményekhez és bármely igényelt profil vagy szint megadásához kapcsolja. Az auditorok ezt a csomagot olvassák el a kód helyett.

Foglald össze ezt a bejegyzést a következőképpen: