We present a new model-based approach for testing systems that use sequences of actions and assertions as test vectors. Our solution includes a method for quantifying testing quality, a tool for generating high-quality test suites based on the coverage criteria we propose, and a framework for assessing risks. For testing quality, we propose a method that specifies generalized coverage criteria over sequences of actions, which extends previous approaches. Our publicly available tool demonstrates how to extract effective test suites from test plans based on these criteria. We also present a Bayesian approach for measuring the probabilities of bugs or risks, and show how this quantification can help achieve an informed balance between exploitation and exploration in testing. Finally, we provide an empirical evaluation demonstrating the effectiveness of our tool in finding bugs, assessing risks, and achieving coverage.
翻译:我们提出了一种基于模型的新方法,用于测试以动作序列和断言作为测试向量的系统。我们的方案包括:一种量化测试质量的方法、一个基于所提覆盖准则生成高质量测试套件的工具,以及一个风险评估框架。针对测试质量,我们提出了一种在动作序列上指定广义覆盖准则的方法,该准则扩展了以往的研究。我们公开可用的工具演示了如何根据这些准则从测试计划中提取有效的测试套件。此外,我们还提出了一种贝叶斯方法,用于测量错误或风险的概率,并展示了这种量化如何帮助在测试中实现开发与探索之间的知情平衡。最后,我们通过实证评估证明了该工具在发现错误、评估风险以及实现覆盖方面的有效性。