Detail publikace

Coverage Metrics for Saturation-based and Search-based Testing of Concurrent Software

LETKO, Z. VOJNAR, T. KŘENA, B.

Originální název

Coverage Metrics for Saturation-based and Search-based Testing of Concurrent Software

Anglický název

Coverage Metrics for Saturation-based and Search-based Testing of Concurrent Software

Typ

článek v časopise - ostatní, Jost

Jazyk

čeština

Originální abstrakt

Metriky pokrytí hrají klíčovou úlohy při testování programů. Umožňují měřit, jak dobře byl program testován, a řídit proces testování. Několik metrik pro testování vícevláknových programů již existuje, ale většina z nich plně nereflektuje chování vícevláknových programů nebo jsou příliš náročné. V tomto článku navrhujeme několik nových metrik, které jsou vhodné pro saturační testování a testování založené na prohledávání prostoru. Od předchozích metrik se liší zejména tím, že jsou odvozeny od různých dynamických algoritmů pro detekci chyb v synchronizaci. Způsob odvození metrik je obecný a lze tak vytvořit další metriky z jiných algoritmů pro detekci chyb. Naší motivací byl fakt, že do vývoje detekčních technik bylo vloženo značné úsilí, a současné techniky tak velmi přesně identifikují místa a operace klíčové pro popis chování vícevláknových aplikací. Odvozené metriky byly dále zpřesněny pomocí abstraktních identifikátorů objektů a vláken. Naše metriky byly empiricky porovnány s vybranými již existujícími metrikami.

Anglický abstrakt

Coverage metrics play a crucial role in testing.
They allow one to estimate how well a~program has been tested and/or to control
the testing process. Several concurrency-related coverage metrics have been
proposed, but most of them do not reflect concurrent behaviour accurately enough.
In this paper, we propose several new metrics that are suitable primarily for
saturation-based or search-based testing of concurrent software. Their
distinguishing feature is that they are derived from various dynamic analyses
designed for detecting synchronisation errors in concurrent software. In fact,
the way these metrics are obtained is generic, and further metrics can be
obtained in a similar way from other analyses. The underlying motivation is
that, within such analyses, behavioural aspects crucial for occurrence of
various bugs are identified, and hence it makes sense to track how well the
occurrence of such phenomena is covered by testing. Next, coverage tasks of the
proposed as well as some existing metrics are combined with an abstract
identification of the threads participating in generation of the phenomena
captured in the concerned tasks. This way, further, more precise metrics are
obtained. Finally, an empirical evaluation of the proposed metrics, which
confirms that several of them are indeed more suitable for saturation-based and
search-based testing than the previously known metrics, is
presented.

Klíčová slova v angličtině

Java, concurrency, testing, coverage, search-based testing, saturation-based testing

Autoři

LETKO, Z.; VOJNAR, T.; KŘENA, B.

Rok RIV

2012

Vydáno

27. 3. 2012

ISSN

0302-9743

Periodikum

Lecture Notes in Computer Science

Ročník

2012

Číslo

7186

Stát

Spolková republika Německo

Strany od

177

Strany do

192

Strany počet

15

URL

BibTex

@article{BUT91435,
  author="Zdeněk {Letko} and Tomáš {Vojnar} and Bohuslav {Křena}",
  title="Coverage Metrics for Saturation-based and Search-based Testing of Concurrent Software",
  journal="Lecture Notes in Computer Science",
  year="2012",
  volume="2012",
  number="7186",
  pages="177--192",
  issn="0302-9743",
  url="http://www.springerlink.com/content/084w5489p9556775/"
}

Dokumenty