Model-based testing (MBT) provides an automated approach for finding discrepancies between software models and their implementation. If we want to incorporate MBT into the fast and iterative software development process that is Continuous Integration Continuous Deployment, then MBT must be able to test the entire model in as little time as possible. However, current academic MBT tools either traverse models at random, which we show to be ineffective for this purpose, or use precalculated optimal paths which can not be efficiently calculated for large industrial models. We provide a new traversal strategy that provides an improvement in error-detection rate comparable to using recalculated paths. We show that the new strategy is able to be applied efficiently to large models. The benchmarks are performed on a mix of real-world and pseudo-randomly generated models. We observe no significant difference between these two types of models.
翻译:基于模型的测试(MBT)提供了一种自动化方法,用于发现软件模型与其实现之间的差异。若要将MBT融入持续集成/持续部署这种快速迭代的软件开发流程,则MBT必须能够在尽可能短的时间内完成对整个模型的测试。然而,当前学术界的MBT工具要么随机遍历模型(我们证明这种做法在此目标下无效),要么使用预计算的最优路径,后者难以高效应用于大型工业模型。我们提出了一种新的遍历策略,其错误检测率的改进效果可与使用重计算路径相媲美。研究表明,该新策略能够高效应用于大型模型。基准测试在真实模型与伪随机生成模型的混合数据集上进行,未观察到两类模型之间存在显著差异。