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.
翻译:我们提出了一种针对使用动作和断言作为测试向量的系统进行测试的基于模型的新方法。我们的解决方案包括了一种量化测试质量的方法、一种基于我们提出的覆盖准则生成高质量测试套件的工具以及一种评估风险的框架。对于测试质量,我们提出了一种规定了通用的动作序列覆盖准则的方法,这扩展了之前的方法。我们的公开可用工具演示了基于这些准则从测试计划中提取有效的测试套件的方法。我们还提出了一种贝叶斯方法来衡量错误或风险的概率,并展示了这种量化方法如何帮助在测试中实现利用和探索之间的知情平衡。最后,我们提供了一个实证评估,展示了我们的工具在发现错误、评估风险和实现覆盖方面的有效性。