Detail práce
System for Automatic Filtering of Tests
Cílem této práce je vytvořit systém, který je schopný automaticky určit množinu testů, které mají být spuštěny, když dojde v ComplianceAsCode projektu ke změně. Navržená metoda vybírá množinu testů na základě statické analýzy změněných zdrojových souborů, přičemž bere v úvahu vnitřní strukturu ComplianceAsCode. Vytvořený systém je rozdělen do čtyř částí - získání změn s využitím verzovacího systému, statická analýza různých typů souborů, zjištění souborů, které jsou ovlivněny těmi změnami, a výpočet množiny testů, které musí být spuštěny pro danou změnu. Naimplementovali jsme analýzu několika různých typů souborů a náš systém je navržen tak, aby byl jednoduše rozšiřitelný o analýzy dalších typů souborů. Vytvořená implementace je nasazena na serveru, kde automaticky analyzuje nové příspěvky do ComplianceAsCode projektu. Automatické spouštění informuje přispěvatelé a vývojáře o nalezených změnách a doporučuje, které testy by pro danou změnu měly být spuštěny. Tím je ušetřen čas strávený při kontrole správnosti příspěvků a čas strávený spouštěním testů.
Filtrování testů, ComplianceAsCode, SCAP, OpenSCAP, Git, Github, změny v souborech, analýza souborů, YAML, Ansible, Bash, Python, OVAL, XML, Jinja, testování, Jenkins
Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm velmi dobře.
- Which features of your project have been covered by automated tests using BAT? A tabular form with a short description will suffice.
Grégr Matěj, Ing., Ph.D. (UIFS FIT VUT), člen
Hrubý Martin, Ing., Ph.D. (UITS FIT VUT), člen
Kekely Lukáš, Ing., Ph.D. (UPSY FIT VUT), člen
Kořenek Jan, doc. Ing., Ph.D. (UPSY FIT VUT), člen
Vojnar Tomáš, prof. Ing., Ph.D. (UITS FIT VUT), člen
@mastersthesis{FITMT23098, author = "Milan Lyson\v{e}k", type = "Diplomov\'{a} pr\'{a}ce", title = "System for Automatic Filtering of Tests", school = "Vysok\'{e} u\v{c}en\'{i} technick\'{e} v Brn\v{e}, Fakulta informa\v{c}n\'{i}ch technologi\'{i}", year = 2020, location = "Brno, CZ", language = "english", url = "https://www.fit.vut.cz/study/thesis/23098/" }