2019
DOI: 10.1145/3360606
|View full text |Cite
|
Sign up to set email alerts
|

Trace aware random testing for distributed systems

Abstract: Distributed and concurrent applications often have subtle bugs that only get exposed under specific schedules. While these schedules may be found by systematic model checking techniques, in practice, model checkers do not scale to large systems. On the other hand, naive random exploration techniques often require a very large number of runs to find the specific interactions needed to expose a bug. In recent years, several random testing algorithms have been proposed that, on the one hand, exploit state-space r… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
4
1

Citation Types

0
6
0

Year Published

2020
2020
2023
2023

Publication Types

Select...
2
2
2

Relationship

2
4

Authors

Journals

citations
Cited by 15 publications
(6 citation statements)
references
References 39 publications
0
6
0
Order By: Relevance
“…Instead of systematically testing the distributed system, randomized concurrency testing tackles the intractable test space via sampling. Probabilistic concurrency testing (PCT) 57,58 and partial order sampling (POS) 59 are two sampling strategies used to test distributed systems these years. They provide probabilistic guarantees to find concurrency bugs with certain patterns at a reasonable cost.…”
Section: Related Workmentioning
confidence: 99%
“…Instead of systematically testing the distributed system, randomized concurrency testing tackles the intractable test space via sampling. Probabilistic concurrency testing (PCT) 57,58 and partial order sampling (POS) 59 are two sampling strategies used to test distributed systems these years. They provide probabilistic guarantees to find concurrency bugs with certain patterns at a reasonable cost.…”
Section: Related Workmentioning
confidence: 99%
“…A plethora of works have been proposed to generate test cases without specification, by using random testing or model learning. A few of them are specialised to communicating systems (Ozkan et al, 2019;Arcuri, 2018;Petrenko and Avellaneda, 2019;Aarts et al, 2014;Tian et al, 2017). For instance, Arcuri proposed algorithms to create test suites for Web service compositions (Arcuri, 2018) by considering the test case generation as a a multi-objective problem, whose objectives are related to metrics over source code properties.…”
Section: B Related Workmentioning
confidence: 99%
“…In our evaluation, none of those tests could hit the bug in the system. The infrequency of hitting the bug is not surprising since the bug in Cassandra is known to be a difficult bug and it is reproduced only in few executions in previous works [Leesatapornwongsa et al 2014;Ozkan et al 2019].…”
Section: Cassandramentioning
confidence: 99%
“…Using algorithmic insights into testing distributed systems to reduce the space of executions is a point of departure from existing work in randomized or systematic testing of implementations of distributed systems. At the same time, our insight is orthogonal to the many reduction techniques already exploited in existing tools, such as depth bounding [Ozkan et al 2018], partial order reduction [Ozkan et al 2019;Yuan et al 2018], or semantics-aware analyses [Leesatapornwongsa et al 2014;Lukman et al 2019].…”
Section: Related Work and Conclusionmentioning
confidence: 99%
See 1 more Smart Citation