Szoftvertesztelés Flashcards

1
Q

Mi az ISTQB?

A

International Software Testing Qualification Board, nemzetközi non-profit szervezet, szoftvertesztelési tanusitványokat kínál.
ISTQB Certified Tester a világ legnépszerűbb és legelismertebb tanúsítványa a szoftvertesztelés területén.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Mi a szoftvertesztelés?

A

IEEE - A szoftvertesztelés annak a dinamikus verifikálása, hogy egy program várt módon viselkedik tesztesetek során, melyek alkalmas módon kerültek kiválasztásra.

ISTQB - A szoftvertesztelés egy megoldás a szoftver minőségének megállapításához és a működés közbeni meghibásodási kockázatok csökkentésére.

Sommerville - A tesztelés célja a használatba vétel előtt annak a megmutatása, hogy egy szoftver rendeltetés-szerűen működik, és programhibákat lehet feltárni.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Milyen korlátai vannak a szoftvertesztelésnek?

A

Csökkenti a szoftverben felfedezetlen hibák valószínűségét, de nem a helyesség bizonyítéka ha nincs egy hiba sem.

Dijkstra (1972):
“A tesztelés csak a hibák jelenlétét tudja megmutatni, a hiányukat nem.”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Jellemezd a verifikációt és validációt!

A

A szoftvertesztelés a szoftver verifikáció és validáció része.
Verifikáció - annak ellenőrzése, hogy a szoftver megfelel-e a vele szemben támasztott követelményeknek - Are we building the product right?

Validáció - annak ellenőrzése, hogy a szoftver megfelel-e az ügyfelek elvárásainak - Are we building the right product?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Milyen V & V módszerek vannak?

A

Szoftver ellenőrzés és áttekintés - statikus, szoftver végrehajtása nélkül ellenőrizzük a szoftver különféle reprezentációit (pl rendszerkövetelmények, forráskódok)
Szoftvertesztelés - dinamikus, azaz a szoftver végrehajtásán alapul

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Mi a validációs és hiányossági tesztelés?

A

Validációs tesztelés - célja a fejlesztő és vásárló számára bizonyítani, hogy a szoftver megfelel a vele szemben támasztott követelményeknek

Hiányosság tesztelés - célja olyan bemenetek találása, melyeknél a szoftver viselkedése helytelen, nemkívánatos vagy nem felel meg a specifikációnak

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Jellemezd a tévedés/tévesztés, hiba, meghibásodás szakkifejezéseket!

A

Tévedés/tévesztés - rossz eredményt adó emberi tevékenység

Hiba - tökéletlenség vagy hiányosság egy munkatermékben, melynél nem teljesülnek az előírások

Meghibásodás - olyan esemény, melynél egy komponens nem lát egy megkövetelt funkciót

Egy személy tévedése/tévesztése hibát eredményezhet a szoftver kódjában.
Ha végrehajtásra kerül a hibás kód, meghibásodást eredményezhet.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Sorold fel a szoftvertesztelés hét alapelvét!

A
  • A tesztelés a hibák jelenlétét mutatják, nem hiányukat
  • Lehetetlen a kimerítő tesztelés
  • Korai tesztelés időt és pénzt takarít meg
  • Hibák csoportosulnak
  • Óvakodj a kártékony paradoxontól
  • A tesztelés környezetfüggő
  • A hibamentesség egy tévhit
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Mi a teszteset? Milyen szintjei vannak?

A

IEEE - teszt bemenetek, végrehajtási feltételek és elvárt eredmények egy halmaza, melyek a program bizonyos útvonalon történő végrehajtását eredményezi vagy egy bizonyos követelménynek való megfelelését ellenőrzi

ISTQB - Tesztfeltételek alapján meghatározott előfeltételek, bemenetek, tevékenységek, elvárt eredmények és utófeltételek egy halmaza.

Magas szintű teszteset - absztrakt előfeltételekkel, bemeneti adatokkal, elvárt eredményekkel, utófeltételekkel és lépésekkel rendelkezik

Alacsony szintű teszteset - konkrét előfeltételekkel, bemeneti adatokkal, elvárt eredményekkel, utófeltételekkel és lépésekkel rendelkezik

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Mi a tesztadat?

A

A tesztvégrehajtáshoz szükséges adatok. Alacsony szintű tesztekké alakítja a magas szintűeket.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Milyen szintjei vannak a tesztelésnek?

A

Egységtesztelés/komponens tesztelés - függetlenül tesztelhető komponensekre összpontosít, fejlesztő végzi

Integrációs tesztelés - komponensek vagy rendszerek közötti kommunikációra összpontosít. az integrációra koncentrál

Rendszertesztelés - a rendszer egészére összpontosít, független tesztelők végzik

Elfogadási tesztelés(alfa és béta tesztelés) - arra összpontosít, hogy a rendszer kész-e a telepítésre és a használatra, ügyfél és rendszerüzemeltetők felelőssége, néha odaadják potenciális felhasználóknak

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Jellemezd az integrációs tesztelés szintjeit!

A

Komponens integrációs tesztelés - integrált komponensek közötti kommunikációra összpontosít - egységtesztek után, automatikusak

Rendszerintegrációs tesztelés - rendszerek közötti kommunikációra és interfészekre összpontosít

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Jellemezd az elfogadási alfa és béta teszteket!

A

Az alfa tesztelés - felhasználók és fejlesztők együtt dolgoznak egy rendszer tesztelésén, fejlesztő környezet telephelyén történik

A béta tesztelés - Kipróbálásra elérhetővé teszik a szoftverrendszer korai változatát, felhasználók helyén történik

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Jellemezd az elfogadási alfa és béta teszteket!

A

Az alfa tesztelés - felhasználók és fejlesztők együtt dolgoznak egy rendszer tesztelésén, fejlesztő környezet telephelyén történik

A béta tesztelés - Kipróbálásra elérhetővé teszik a szoftverrendszer korai változatát, felhasználók helyén történik, olyan szoftvereknél amit sok különböző környezetben használnak, marketing eszköz

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Milyen teszttípusok léteznek?

A

Funkcionális tesztelés - rendszer funkcióinak tesztelése

Nem funkcionális tesztelés - rendszer használhatósága, teljesítménye vagy biztonságának tesztelése

Fehér dobozos tesztelés - rendszer belső felépítésén vagy megvalósításán alapuló tesztek

Változással kapcsolatos tesztelés - megerősítő és regressziós tesztelés
- megerősítő - célja megerősíteni, hogy az
eredeti hiba kijavításra került
- regressziós - a kódban minden változás által
okozott akaratlan mellékhatások érzékelése

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Melyek a jó egységtesztek ismertetőjegyei?

A

FIRST
Gyors (fast) - gyorsan kell, hogy lefussanak

Független (independent) - nem függhetnek a tesztek egymástól

Megismételhető (repeatable) - bármely környezetben megismételhetőek

Önérvényesítő (Self-Validating) - logikai kimenetűek, vagy átmennek vagy megbuknak

Jól időzített (Timely) - A teszteket a kód előtt kell megírni (időben)

16
Q

jellemezd az egységtesztek szervezését!

A

Három része ajánlott, hogy legyen. AAA minta
Elrendez (Arrange) - ez felelős a teszt és függőségei egy kívánt állapotba állításáért

Cselekszik (Act) - egy hívja meg a tesztelt metódusokat, átadja az előkészített függőségeket

Kijelent (Assert) - ellenőrzi a kimentet, ábrázolható visszatérési értékkel vagy a tesztelt rendszer végső állapotábal

17
Q

Jellemezd a JUnit tesztosztályait és tesztmetódusait!

A

Tesztosztály - bármely felső szintű osztály, mely legalább egy tesztmetódust tartalmaz (nem absztrakt és van egy konstruktora)

Tesztmetódus - a @Test, @RepeatedTest, @ParameterizedTest,
@TestFactory vagy @TestTemplate annotációval megjelölt bármely példánymetódus.

Életciklus metódus - a @BeforeAll, @AfterAll, @BeforeEach vagy
@AfterEach annotációval megjelölt bármely metódus

Nem kell nyilvánosak legyenek, de nem lehetnek privátak. Örökölhetők ősosztályból vagy interfészből, nem lehetnek absztraktak és nem adnak vissza értéket.

18
Q

Jellemezd a teszt végrehajtási életciklust!

A

JUnit példányt hoz létre minden tesztosztályból az egyes tesztmetódusok végrehajtása előtt. Izolálja a tesztmetódusok végrehajtását.

@TestInstance(Lifecycle.PER_CLASS) ezzel ugyanazon a tesztpéldányon lesznek végrehajtva.

19
Q

Jellemezd a teszteredményeket!

A

Siker (Succes) - mikor minden eredmény megegyezik a várttal
Ekkor átmegy (passes)

Bukás (Failure) - az eredmény nem egyezik meg a várttal
egy elbukó állítás eredményezi, a teszt bukik (fails)

Hiba (error) - egy hiba megakadályozza a befejeződést

20
Q

Jellemezd az utasítás/sor lefedettséget!

A

végrehajtott utasítások / összes utasítás és
végrehajtott kódsorok / összes sor
Csak egyszer számoljuk.

21
Q

Jellemezd az ág lefedettséget!

A

Olyan vezérlési szerkezeteken alapul mint az if és a switch.
végrehajtott ág / összes ág