Defining Benchmark Coverage in Software Performance Testing
Definice pokrytí testů v testování výkonu software
diploma thesis (DEFENDED)
View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/202868Identifiers
Study Information System: 285294
Collections
- Kvalifikační práce [12045]
Author
Advisor
Referee
Nečaský, Martin
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Computer Science - Software Systems
Department
Department of Distributed and Dependable Systems
Date of defense
9. 9. 2025
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
English
Grade
Excellent
Keywords (Czech)
jednotkové testování|výkon|pokrytí testůKeywords (English)
unit testing|performance|test coveragePokrytí testů při testování výkonu softwaru je otevřený problém. Stávající řešení nejsou příliš rozšířená. Současný přístup označuje funkce navštívené jakýmkoliv micro- benchmarkem jako pokryté, což zanedbává informaci o tom, do jaké míry je microben- chmark schopen detekovat změny výkonu dané funkce. Tato práce definuje novou met- riku pro měření pokrytí, založenou na schopnosti microbenchmarku detekovat zpomalení funkce, které by vedlo k pozorovatelnému zpomalení reálné aplikace. Práce experimen- tálně porovnává několik vzorců pro výpočet této metriky na reálné knihovně pomocí aplikačního benchmarku a microbenchmarků. Ačkoliv práce přesně neurčuje chyby jed- notlivých vzorců, výsledky naznačují, že pomocí naší teorie je možné detekovat, kdy je pokrytí microbenchmarky nedostatečné nebo nadbytečné. Takovou informaci je možné využít k optimalizaci sad microbenchmarků.
Test coverage of software performance tests is an open problem. Existing solutions are not widely used. The current approach marks function visited by any microbenchmark as covered, which ignores the degree to which the microbenchmark can detect perfor- mance changes in such function. This thesis defines a new coverage metric based on the detectability of function slowdowns that would cause an observable slowdown in a real- world application. It experimentally compares several formulas for metric calculation on a real-world library using an application benchmark and microbenchmarks. Although the thesis does not precisely specify the error margins of the formulas, the results suggest that using the developed theory, it is possible to detect when the microbenchmark coverage is insufficient or redundant, which could be used to optimize microbenchmark suites.
