ETNA: An Evaluation Platform for Property-Based Testing (Experience Report)
ETNA: An Evaluation Platform for Property-Based Testing (Experience Report)
复制标题
DOI:
10.1145/3607860
复制
发表时间:
2023-08-01
影响因子:
1.8
通讯作者:
Lampropoulos,Leonidas
中科院分区:
文献类型:
--
作者:
Shi,Jessica;Keles,Alperen;Lampropoulos,Leonidas
Property-based testing is a mainstay of functional programming, boasting a rich literature, an enthusiastic user community, and an abundance of tools — so many, indeed, that new users may have difficulty choosing. Moreover, any given framework may support a variety of strategies for generating test inputs; even experienced users may wonder which are better in a given situation. Sadly, the PBT literature, though long on creativity, is short on rigorous comparisons to help answer such questions.We present Etna, a platform for empirical evaluation and comparison of PBT techniques. Etna incorporates a number of popular PBT frameworks and testing workloads from the literature, and its extensible architecture makes adding new ones easy, while handling the technical drudgery of performance measurement. To illustrate its benefits, we use Etna to carry out several experiments with popular PBT approaches in both Coq and Haskell, allowing users to more clearly understand best practices and tradeoffs.