Authors
Ezekiel Soremekun, Esteban Pavese, Nikolas Havrikov, Lars Grunske, Andreas Zeller
Publication date
2020/8/3
Journal
IEEE Transactions on Software Engineering
Volume
48
Issue
4
Pages
1138-1153
Publisher
IEEE
Description
Grammars can serve as producers for structured test inputs that are syntactically correct by construction. A probabilistic grammar assigns probabilities to individual productions, thus controlling the distribution of input elements. Using the grammars as input parsers, we show how to learn input distributions from input samples, allowing to create inputs that are similar to the sample; by inverting the probabilities, we can create inputs that are dissimilar to the sample. This allows for three test generation strategies : 1) “Common inputs”–by learning from common inputs, we can create inputs that are similar to the sample; this is useful for regression testing. 2) “Uncommon inputs”–learning from common inputs and inverting probabilities yields inputs that are strongly dissimilar to the sample; this is useful for completing a test suite with “inputs from hell” that test uncommon features, yet are syntactically valid. 3) “Failure …
Total citations
202020212022202320242461110
Scholar articles
E Soremekun, E Pavese, N Havrikov, L Grunske… - IEEE Transactions on Software Engineering, 2020