PerfEval: Spojení unit testů s vyhodnocováním výkonu
PerfEval: Marrying unit testing with performance evaluation
bachelor thesis (DEFENDED)
View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/192058Identifiers
Study Information System: 261803
Collections
- Kvalifikační práce [11216]
Author
Advisor
Referee
Hnětynka, Petr
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Computer Science with specialisation in Systems Programming
Department
Department of Distributed and Dependable Systems
Date of defense
28. 6. 2024
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
Czech
Grade
Very good
Keywords (Czech)
testování|výkonnostKeywords (English)
testing|performancePři vývoji softwaru se běžně používají unit testy. Tato práce navrhuje nástroj PerfEval, který podobným způsobem provádí testování výkonu. Nástroj PerfEval má za úkol porovnat výsledky měření výkonu dvou verzí softwaru a vyhodnotit jestli je výkon novější verze jiný. Nástroj využívá výsledky měření běžných benchmarkovacích frameworků. Porovnáním výsledků měření těchto frameworků pomocí statistických metod zjišťuje změny výkonu mezi verzemi. Stejně tak jako unit testy upozorní uživatele, pokud jeho kód není korektní, tak i Perf- Eval upozorňuje uživatele na změnu výkonu. PerfEval je konzolová aplikace, a tudíž je možné jej ovládat jednoduše ze skriptů stejně jako unit testy.
When developing software, unit tests are commonly used. This thesis proposes Perf- Eval, a tool that performs performance testing in a similar way. The PerfEval tool is designed to compare the performance measurement results of two software versions and evaluate whether the performance of the newer version differs. The tool uses the results of measurements from common benchmarking frameworks. By comparing the results of measurements from these frameworks using statistical methods, it detects changes in performance between versions. Just as unit tests alert the user if their code is incorrect, PerfEval also alerts the user to changes in performance. PerfEval is a console application, so it can be easily controlled from scripts just like unit tests.