Tesztelési módszerek kiselőadások¶
Egy adott témából fel kell készülni, azt kb. 30 percben gyakorlatias módon be kell mutatni. A gyakorlatias mód azt jelenti, hogy össze kell állítani egy olyan műveletsort/feladatsort, amit a gyakorlat többi résztvevője is megcsinál. Egy kiselőadás általános felosztása:
- 5-10 perc elmélet: a módszer (és a hozzá szükséges ismeretek) elméleti ismertetése
- 5-15 perc demo: a módszer használatának bemutatása egy vagy több példán keresztül
- 10-20 perc gyakorlat: egy kiadott feladat önálló elkészítése és az eredmények rövid értékelése
A félév során egy kiselőadás megtartása kötelező.
Egy esetleges második kiselőadás megtartása részben vagy egészben kiválthat egyéb feladatokat.
A kiselőadások várható ütemezése a féléves menetrendben megtalálható.
Az első, kötelező kiselőadásra jelentkezni a CooSpace Kiselőadás választás eszközén keresztül lehet.
A második, zh-t kiváltó kiselőadásra a Második kieslőadás CooSpace eszközön keresztül lehet jelentkezni.
Választható témák¶
KE01: Alacsony szintű lefedettség mérés gcov segítségével.¶
Be kell mutatni, hogyan lehet a gcc fordítóprogram és a gcov segítségével utasítás és elágazás szintű lefedettséget mérni.
KE02: Magas szintű lefedettség mérés gcc környezetben.¶
Be kell mutatni, hogyan lehet a gcc fordítóprogram --finstrument-functions
kapcsolója segítségével a függvényhívásokat és visszatéréseket megfigyelni, valamint
ezekből a hívott függvényeket "visszakapni".
KE03: A JUnit keretrendszer.¶
Röviden be kell mutatni a JUnit keretrendszer lehetőségeit, használatát, fontosabb elemeit. A legújabb 5-ös verzió mellett a jelenleg még elterjedtebb 4-es verzió jellemzőit is be kell mutatni.
(Érdemes egyeztetni az EclEmma/JaCoCo-s KE04 és a mutációs KE05 kiselőadások előadóival.)
KE04: Lefedettség mérés az EclEmma és JaCoCo segítségével.¶
Be kell mutatni, hogyan lehet az Eclipse-ben az EclEmma, és Eclipse nélkül a JaCoCo segítségével lefedettséget mérni.
(Érdemes egyeztetni a JUnit-os KE03 kiselőadás előadójával.)
KE05: Mutációs tesztelés a PIT Mutation Testing eszköz segítségével.¶
Röviden ismertetni kell a mutációs tesztelés lényegét, majd be kell mutatni a PIT eszközt és használatát Java programokon.
(Érdemes egyeztetni a JUnit-os KE03 előadás előadójával.)
KE06: Statikus analízis eszközök bemutatása.¶
Be kell mutatni 2-3 elterjedt statikus elemző eszközt (PMD, CheckStyle, SpotBugs, ...), használatukat, az általuk megtalált "hibák" főbb csoportjait.
KE07: Debugging az Eclipse-ben.¶
Be kell mutatni az Eclipse-beli debuggolási funkciókat, használatukat.
(Érdemes egyeztetni a gdb
-s KE08 előadás előadójával.)
KE08: Debugging gdb segítségével.¶
Be kell mutatni a gdb
eszközt, fontosabb debuggolási funkcióit, használatát.
(Érdemes egyeztetni az Eclipse debugging-os KE07 előadás előadójával.)
KE09: Test Driven Development.¶
Egy példán keresztül be kell mutatni a TDD alapelveit, folyamatát.
(Érdemes egyeztetni a JUnit-os KE03 kieslőadás előadójával.)
KE10: Behaviour Driven Development.¶
Egy BDD keretrendszert használó példán keresztül be kell mutatni a BDD alapelveit, folyamatát.
KE11: Teszt szelekció, priorizálás.¶
Be kell mutatni a lefedettség alapú szelekciós és priorizáló módszereket.
KE12: Fault localization.¶
Be kell mutatni a lefedettség alapú hibalokalizációs módszereket.
KE13: Szoftver szeletelés.¶
Be kell mutatni a statikus és dinamikus szeletelés alapelveit.
KE14: Osztályozási fa és kombinatorikus módszerek.¶
Be kell mutatni az osztályozási fa módszerét, valamint ez alapján az input kategóriák minimális lefedését, az összes kombináció lefedését, és a bármely N input kategória teljes lefedését (ortogonális tömbök) lehetővé tevő tesztgenerálási módszereket.