Defining Benchmark Coverage in Software Performance Testing
Definice pokrytí testů v testování výkonu software
diplomová práce (OBHÁJENO)
Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/202868Identifikátory
SIS: 285294
Kolekce
- Kvalifikační práce [11987]
Autor
Vedoucí práce
Oponent práce
Nečaský, Martin
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Informatika - Softwarové systémy
Katedra / ústav / klinika
Katedra distribuovaných a spolehlivých systémů
Datum obhajoby
9. 9. 2025
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Angličtina
Známka
Výborně
Klíčová slova (česky)
jednotkové testování|výkon|pokrytí testůKlíčová slova (anglicky)
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.
