Vyučující
|
-
Trapp Michal, Ing. Ph.D.
-
Heller Václav, doc. Ing. Ph.D.
|
Obsah předmětu
|
1. Úvod, základní terminologie, projektová a produkční rizika, testovací prostředí 2. Existující normy a postupy pro zajištění kvality software (ISO/IEC 25010:2011, IEEE 1633-2016) 3. Vizualizace výsledků testů 4. Návrh a vyhodnocení benchmarků a zátěžových testů, stress testy, recovery testy, využití vhodných nástrojů (JMeter) 5. Způsoby a metodiky testování použitelnosti 6. BDD testování 7. Testování REST API 8. Symbolické vykonávání, analýza a hledání chyb v běžícím programu, analýza paměti programu 9. Monitoring běžícího software, použitelné nástroje a jejich vliv na aplikaci 10. Model checking, formální metody a nástroje 11. Statické metody pro verifikaci software, jejich vlastnosti a omezení. Programátorské konvence (MISRA-C, CERT-C) a možnosti jejich ověření 12. Testování v Agile 13. Vyzvaná přednáška
|
Studijní aktivity a metody výuky
|
- Praktická výuka [vyjádření počtem hodin]
- 26 hodin za semestr
- Projekt individuální [40]
- 25 hodin za semestr
- Kontaktní výuka
- 26 hodin za semestr
- Příprava na zkoušku [10-60]
- 30 hodin za semestr
|
Předpoklady |
---|
Odborné znalosti |
---|
- má znalosti o vnitřním fungování programů (struktura paměti programů v C, základní fungování zásobníku, řízení toku programu) - rozumí fungování nástrojů (např. PMD) pro statické ověření kvality programu |
Odborné dovednosti |
---|
- programuje v alespoň jednom rozšířeném vysokoúrovňové jazyce (Java, Python, C++) (znalosti pocházejí z předchozího Bc. studia) - rutinně používá jednotkové testování - analyzuje testovanou doménu, dokáže připravit vstupní data pro testování - používá logovací systém |
Obecné způsobilosti |
---|
mgr. studium: samostatně a odpovědně se na základě rámcového zadání rozhodují v souvislostech jen částečně známých, |
mgr. studium: srozumitelně a přesvědčivě sdělují odborníkům i laikům informace o povaze odborných problémů a vlastním názoru na jejich řešení, |
Výsledky učení |
---|
Odborné znalosti |
---|
- Znalosti o dimenzích kvality FURPS+ (functionality, usability, reliability, performance, supportability). - Znalosti o (automatizované) přípravě testovacích dat a výsledků testů (orákulí). - Znalosti o typických problémech, které se objevují v komplexních IT systémech a postupech k jejich odhalení - Znalosti o způsobech řízení kvality sw, využívání metrik a specializovaných nástrojů. - Je si vědom existence norem pro zajištění kvality software (ISO/IEC 25010:2011, IEEE 1633-2016) - Je si vědom postupů řízení SW procesu vedoucích ke zvýšení kvality vytvářeného SW a zná nástroje řídící tyto procesy |
Odborné dovednosti |
---|
- Je schopen vizualizovat pro celý vývojový tým výsledky komplexních testů - Umí používat metodiku a nástroje pro BDD testování - Je schopen otestovat REST API - Dokáže navrhnout a správně provést výkonnostní testy - Dokáže používat sofistikované nástroje statické analýzy - Dokáže použít nástroje pro dynamické ověření správnosti vykonávání software (např. Valgrind) |
Obecné způsobilosti |
---|
mgr. studium: samostatně a odpovědně se rozhodují v nových nebo měnících se souvislostech nebo v zásadně se vyvíjejícím prostředí s přihlédnutím k širším společenským důsledkům jejich rozhodování, |
mgr. studium: dle vyvíjejících se souvislostí a dostupných zdrojů vymezí zadání pro odborné činnosti, koordinují je a nesou konečnou odpovědnost za jejich výsledky, |
mgr. studium: srozumitelně a přesvědčivě sdělují odborníkům i širší veřejnosti vlastní odborné názory, |
Vyučovací metody |
---|
Odborné znalosti |
---|
Přednáška s demonstrací, |
Přednáška s diskusí, |
E-learning, |
Řešení problémů, |
Analyticko-kritická práce s textem, |
Skupinová konzultace, |
Samostudium, |
Samostatná práce studentů, |
Prezentace práce studentů, |
Odborné dovednosti |
---|
Přednáška založená na výkladu, |
Přednáška s diskusí, |
Cvičení (praktické činnosti), |
E-learning, |
Řešení problémů, |
Skupinová konzultace, |
Samostatná práce studentů, |
Prezentace práce studentů, |
Individuální konzultace, |
Obecné způsobilosti |
---|
Přednáška s diskusí, |
Řešení problémů, |
Analyticko-kritická práce s textem, |
Prezentace práce studentů, |
Hodnotící metody |
---|
Odborné znalosti |
---|
Ústní zkouška, |
Písemná zkouška, |
Seminární práce, |
Odborné dovednosti |
---|
Praktická zkouška, |
Demonstrace dovedností (praktická činnost), |
Průběžné hodnocení, |
Výstupní projekt, |
Obecné způsobilosti |
---|
Ústní zkouška, |
Výstupní projekt, |
Doporučená literatura
|
-
Alpaev, G. Software Testing Automation Tips. APress, 2017. ISBN 1484231619.
-
Kshirasagar N. - Priyadarshi T. Software Testing and Quality Assurance: Theory and Practice. Wiley & Sons, 2011. ISBN 978-1-118-21163-2.
-
Mathur, Aditya P. Foundations of software testing : fundamental algorithms and techniques. Delhi : Pearson Education, 2008. ISBN 978-81-317-1660-1.
|