A hatalmas szoftvercégek, mint például a Google, sikeresek annak ellenére, hogy szoftverük alacsony prioritású hibákkal jár, de a kisebb vállalatok és az induló vállalkozások nem rendelkeznek ilyen luxusalappal.
Az ügyfelek arra számítanak, hogy a termékeket az eladási oldalon vagy a dokumentációban követelik. Annyi lehetőség van ott, hogy nem fog kétszer gondolkodni az ugróhajóról, ha a termék elpazarolja az idejét és a pénzét. Ezért a szoftver szigorú vizsgálatokat végez a kiadás előtt annak érdekében, hogy:
kiemelje az eredeti koncepció és a végtermék közötti különbségeket
ellenőrizze, hogy a szoftver úgy működik-e, ahogy a tervezők tervezik
érvényesítse a végterméket - a terméknek meg kell felelnie az ügyfél igényeinek
értékeli a jellemzőket és a minőséget
A tesztelés szigorú tervet követ. Ez optimalizálja az értékes erőforrások - készségek, idő és pénz felhasználását, miközben biztosítja az érdekelt feleknek a lényeges információkkal való ellátást a termék továbbadásához. A cél az, hogy megkönnyítse a jó végfelhasználói élményt egy erős minőségbiztosítási programon keresztül. A tétek olyan magasak, hogy a QA menedzserek a legmagasabbak a tech.Tesztelés általában követi ezeket a lépéseket:
Követelményelemzés, ahol a menedzserek körvonalazják azt a tervet, hogy megfelelő tesztstratégiát alkalmaznak.
A vizsgálatok elkezdődnek és az eredmények elemzésen mennek keresztül.
Minden hiba javításra kerül, és a szoftver regressziós teszten megy keresztül - egy program, amely ellenőrizni tudja a programot, még mindig működik a módosítások után.
A vizsgálati zárójelentés részletezi az egész folyamatot és az eredményeket.
Szoftvertesztelési módszerek
Itt vannak a különböző módszerek a termék viselkedésének és teljesítményének megítélésére.
A fekete doboz és a fehér doboz tesztelése a két alapvető módszer.
- Fekete doboz tesztelés - Szintén funkcionális vagy specifikációalapú tesztelésnek nevezik, ez a módszer a kimenetre összpontosít. A tesztelők nem foglalkoznak a belső mechanizmusokkal. Csak ellenõrizik a szoftvert, hogy mit csináljon. A kódolás ismerete nem szükséges, és a tesztelők a felhasználói felület szintjén dolgoznak.
- Fehér doboz tesztelés - Ez a módszer kódolási know-how-t használ a vizsgálati eljárás részeként. Amikor egy termék meghibásodik, a teszterek olyan mélyre mennek a kódba, amennyire szükséges az ok megtalálásához. A szoftverfejlesztők ezt megteszik, mivel meghatározzák a termék működésének módját. A szerkezet-alapú és az üveg doboz tesztelés más nevek erre a módszerre.
- Statikus tesztelés - A tesztelők megvizsgálják a szoftver kódját és dokumentációját, de nem hajtják végre a programot. A statikus tesztek a termékfejlesztés korai szakaszában kezdődnek meg az ellenőrzés folyamán.
- Dinamikus tesztelés - A szoftvert különböző bemenetekkel hajtják végre, és a tesztelők összehasonlítják a kimeneteket a várt viselkedéssel ezzel a módszerrel.
- GUI tesztelés - Ez a GUI-jellemzőket vizsgálja - a szöveg formázása, a szövegdobozok, a gombok, a listák, az elrendezés, a színek, a betűtípusok, a betűméretek stb. A GUI tesztelése időigényes, és a harmadik fél vállalatai gyakran vesznek részt a feladatokon a fejlesztők helyett.
Vizsgálati szintek
Ezek szükségesek a szoftverfejlesztési életciklus minden szakaszában a gyengeségek és átfedések területeinek azonosításához.
- Egységvizsgálat - A fejlesztők tesztelik a kód alapú osztályok, interfészek és funkciók / eljárások legegyszerűbb részeit. Tudják, hogy a kódjuknak hogyan kell reagálnia, és kiigazításokat végezhet a kimenetétől függően.
- Komponensek tesztelése - Az egyéb nevek modul vagy program tesztelés. Ez hasonlít az egységvizsgálathoz, de magasabb szintű integrációt tartalmaz. A szoftver moduljait hibákra tesztelik, hogy ellenőrizzék az egyes funkciókat.
- Integrációs tesztelés - Ez azonosítja a modul integrált hibáit. A különböző integrációs tesztek alulról felfelé, felülről lefelé és funkcionálisan növekményesek.
- Rendszerellenőrzés - A projekt összetevői egészében különböző környezetekben tesztelnek ezzel a módszerrel. A fekete doboz alatt van, és az egyik végső teszt a folyamatban. Meghatározza, hogy a rendszer működik-e, mivel megfelel az üzleti és felhasználói igényeknek.
- Alfa tesztelés - A belső személyzet szimulált vagy valós környezetben teszteli a szoftvert a fejlesztő webhelyén. Ezután a fejlesztők kijavítják a hibákat és egyéb kérdéseket.
- Béta tesztelés - Terepi tesztként is ismert, az ügyfél a saját webhelyén valós körülmények között teszteli a terméket. Az ügyfél a végfelhasználók egy csoportjának felkínálhatja a szoftvert prerelease vagy béta verziókon. A lehetséges javításokra vonatkozó visszajelzést elküldik a fejlesztőnek.
- Elfogadási tesztelés - A fekete doboz tesztelésénél az ügyfél teszteli a szoftvert annak megállapítására, hogy a fejlesztő létrehozta-e a programot a kívánt specifikációkhoz.
Vizsgálati típusok
Ezek a szoftver tesztek a konkrét célokra összpontosítanak.
- Telepítési tesztelés - A szoftver tesztmérnöke és a konfigurációkezelő ezt a tesztet végzi annak biztosítása érdekében, hogy a végfelhasználó telepítse és futtassa a programot. Ez kiterjed olyan területekre, mint a telepítési fájlok, telepítési helyek és adminisztrációs jogosultságok.
- Fejlesztési tesztelés - Ez számos szinkronizált stratégiát valósít meg a hibák észlelésére és megakadályozására. Tartalmazza a statikus kódelemzést, a szakértői értékelést, a nyomonkövetést és a metrikaelemzést. A cél a kockázatok csökkentése és a költségek csökkentése.
- Használhatósági tesztelés - A felhasználói élmény a reflektorfényben jelenik meg. Megméri, hogy mennyire alkalmas a grafikus felület és a könnyű használat. A teszt ellenőrzi a funkciók pontosságát és hatékonyságát, valamint a vizsgált személyek érzelmi reakcióit.
- Egészségügyi tesztelés - Ez azt jelzi, hogy a szoftver megéri-e a további tesztek idejét és költségét. Túl sok hiba és agresszív vizsgálat nem következik.
- Füstvizsgálat - A füstvizsgálat olyan alapvető hibákat tár fel, amelyek elég súlyosak ahhoz, hogy megakadályozzák a felszabadulást. Ha ezt egy új építésen hajtják végre, úgy nevezik építési ellenőrző tesztnek.
- Regressziós tesztelés - A rendszer átalakításakor a regressziós teszt figyeli a váratlan viselkedést. Rámutat a modulokra vagy összetevőkre gyakorolt káros hatásokra.
- Pusztító tesztelés - A teszterek abnormális bejegyzéseket bocsátanak ki, és észlelik a szoftver váratlan bevitelének képességét. Ez megmutatja a fejlesztőknek, mennyire megbízható a program a hibák kezelésében.
- Helyreállítási tesztelés - Ha a hardver vagy egyéb funkciók nem működnek, a teszt azt mutatja, hogy a szoftver mennyire jól tudja helyreállítani és folytatni a működést.
- Automatizált tesztelés - Ez olyan funkciókat hajt végre, amelyeket manuálisan nehéz végrehajtani. Speciális szoftvereket használ a tesztek futtatásához és a tényleges és a várt eredmények eléréséhez.
- Kompatibilitási tesztelés - A szoftvernek különböző számítástechnikai környezetekben kell futnia, így ez ellenőrzi a különböző rendszerek kompatibilitását. Például működik-e a szoftver különböző operációs rendszerekkel és webböngészőkkel?
- Teljesítményfelmérés - Ez egy mélyreható teszt, amely különböző szituációkban vizsgálja a szoftver teljesítményét. A válaszadókról, a stabilitásról, az erőforrások felosztásáról és a sebességről szóló információk összegyűjthetők. Ezenfelül az al-tesztek, mint például a térfogat, a kapacitás és a tüskevizsgálat szerepet játszanak ebben a folyamatban.
- Biztonsági tesztelés - Ez mérni tudja a szoftver azon képességét, hogy megvédje a felhasználók biztonságát. Ez az engedélyezési funkciókat, a hitelesítést, a titkosságot, az integritást, a rendelkezésre állást és a visszautasítást jelenti.
- Hozzáférhetőség tesztelése - Ez nem azonos a használhatósági teszteléssel. Ez határozza meg, hogy a különböző képességekkel rendelkező felhasználók - a tanulás és a fizikai fogyatékosságok - milyen mértékben használhatják a szoftvert.
- Nemzetköziesedés és lokalizáció tesztelése - Az eredmények azt mutatják, hogy a szoftver hogyan alkalmazkodik a különböző nyelvekhez és a regionális igényekhez. Ez magában foglalja az egyes helyszínek komponenseinek hozzáadását és a szövegek fordítását.
A szoftver tesztelése lényeges része a termék piacra juttatásának. És tesztelők nélkül a rendelkezésre álló szoftverek széles köre nem létezne. Legyen minősített szoftver tesztelő olyan szervezeteken keresztül, mint a BCS, a Chartered Institute for IT, az ISTQB® (International Software Testing Qualifications Board) és az ASQ (korábban az American Society for Quality).