Systém pro automatické filtrování testů

Loading...
Thumbnail Image

Date

Authors

Lysoněk, Milan

Mark

B

Journal Title

Journal ISSN

Volume Title

Publisher

Vysoké učení technické v Brně. Fakulta informačních technologií

ORCID

Abstract

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ů.
The goal of this thesis is to create a system that automatically determines a set of tests that must be run when a change is done in the ComplianceAsCode project. The proposed method selects a set of tests based on static analysis of the changed sources, taking into account the internal structure of ComplianceAsCode. The created system is divided into four parts - obtaining changes from the versioning system, static analysis of different types of files, computing the set of files affected by the change, and computing the set of tests that must be run to test the given change. We implemented analysis of several types of files and our system is designed to be easily extended by other analyses for other file types. The created implementation is deployed on the server where it automatically analyzes new contributions to the ComplianceAsCode project. The automatic running informs contributors and developers about changes that it found and recommends which tests should be run for the change. This saves the time spent on verifying the correctness of contributions as well as the time spent on running tests.

Description

Citation

LYSONĚK, M. Systém pro automatické filtrování testů [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2020.

Document type

Document version

Date of access to the full text

Language of document

en

Study field

Počítačové sítě a komunikace

Comittee

doc. Ing. Ondřej Ryšavý, Ph.D. (předseda) prof. Ing. Tomáš Vojnar, Ph.D. (místopředseda) Ing. Matěj Grégr, Ph.D. (člen) Ing. Martin Hrubý, Ph.D. (člen) Ing. Lukáš Kekely, Ph.D. (člen) doc. Ing. Jan Kořenek, Ph.D. (člen)

Date of acceptance

2020-07-17

Defence

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. Otázky u obhajoby: Which features of your project have been covered by automated tests using BAT? A tabular form with a short description will suffice.

Result of defence

práce byla úspěšně obhájena

DOI

Collections

Endorsement

Review

Supplemented By

Referenced By

Citace PRO