Detail předmětu
Automatizované testování a dynamická analýza
ATA Ak. rok 2024/2025 letní semestr 5 kreditů
Dva hodnocené projekty po 20 bodech a závěrečná zkouška za 60 bodů.
Garant předmětu
Koordinátor předmětu
Jazyk výuky
Zakončení
Rozsah
- 26 hod. přednášky
- 26 hod. projekty
Bodové hodnocení
- 70 bodů závěrečná zkouška (písemná část)
- 30 bodů projekty
Zajišťuje ústav
Přednášející
Cvičící
Cíle předmětu
Získat přehled o různých přístupech k testování softwaru. Pozornost je věnována automatizaci ověřování softwaru. Získat praktické dovednosti se sledováním běhů programů a komunikace softwarových systémů. Získat praktické dovednosti s testováním softwaru na úrovni potřebné pro osobu odpovědnou za návrh testovacího přístupu (QA analyst).
Literatura studijní
- Spillner, A., Linz, T. , Schaefer, H.: Software Testing Foundations : A Study Guide for the Certified Tester Exam. Rocky Nook Computing. 2014. 296 s.. ISBN 9781937538422
- Kaner, C., James, B., Pettichord, B.: Lessons Learned in Software Testing: A Context-Driven Approach. Wiley Computer Publishing, 2002, 286 s., ISBN 0-471-08112-4.
- Marick, B.: The Craft Of Software Testing, Subsystem Testing, Prentice Hall PTR, 1995, ISBN 0-13-177411-5.
- Ammann, P., Offutt, J.: Introduction to Software Testing. Cambridge University Press, 2008, 322 s. ISBN 978-0-511-39330-3.
Literatura referenční
- Myers, G. J., Sandler, C., Badgett, T.: The Art of Software Testing, 3. vydání. John Wiley & Sons, 2011, 256 s., ISBN 978-1118031964
- Farrell-Vinay, P.: Manage Software Testing. Auerbach Publications, 2008, 537 s., ISBN 978-0-8493-9383-9
Osnova přednášek
- Testování založené na modelech I
- Graf toku řízení, interprocedurální CFG.
- Generování testovacích případů řízené pokrytím.
- Testování založené na modelech II
- Automatizace jednotkových testů.
- Návrhové vzory jednotkových testů xUnit.
- Stálost testů a testovací dvojníci
- Stálost testů podle xUnit.
- Testovací dvojníci a platformy pro mocking.
- Testování založené na požadavcích
- Klasifikace požadavků.
- Stopovatelnost požadavků.
- Automatizace testů v chováním řízeném vývoji (BDD).
- Testování řízené daty I
- Kombinační testování.
- Minimalizace testovacích dat.
- Testování řízené daty II
- Testování aplikačního rozhraní.
- Systematické generování testovacích dat.
- Testování řízené daty III
- Mutační testování.
- Pokrytím řízené fuzz testování
- Výkonnostní testování
- Měřitelné výkonnostní parametry.
- Typy výkonnostního testování.
- Proces výkonnostního testování.
- Verifikace za běhu I
- Testovací vlastnosti, temporální vlastnosti, parametrické vlastnosti.
- Instrumentace programů
- Testování paralelních programů I
- Klasifikace paralelních chyb.
- Kontrakty pro paralelismus.
- Systematické vs. náhodné testování.
- Metody vkládání šumu.
- Testování paralelních programů II
- Algoritmy Atomrace, Eraser.
- Vektorové hodiny.
- Algoritmus Fasttrack.
- Verifikace za běhu II
- Nízkoúrovňové stopování.
- Post-mortem analýza.
Osnova ostatní - projekty, práce
- Návrh automatizované testovací sady se znalostí zdrojových kódů a/nebo požadavků.
- Implementace monitoru pro RV (verifikace za běhu).
Průběžná kontrola studia
Dva hodnocené projekt po 20 bodech a závěrečná zkouška za 60 bodů.
Zařazení předmětu ve studijních plánech