中文

迈向更好的测试覆盖:合并自主系统的单元测试

系统与控制 2022-04-07 v1 机器人学 系统与控制

摘要

我们提出一个用于合并自主系统单元测试的框架。通常,针对自主系统在其运行环境中的每一种场景进行测试是难以处理的。能否为系统的多个需求设计单一测试这一问题推动了本工作。首先,我们正式定义测试的三个属性:表征测试执行中观测行为的测试规范、测试环境以及测试策略。利用基于契约设计理论中的合并算子,我们给出由两份单元测试规范构造合并测试规范的形式化方法。合并测试规范上的时间约束保证:两份单元测试规范的非平凡满足对于成功的合并测试执行是必要的。我们假设测试环境在单元测试与合并测试中保持不变。给定测试规范和测试环境,我们利用滚动时域方法合成测试策略过滤器,并使用该过滤器引导搜索过程(例如蒙特卡洛树搜索)以找到保证满足测试规范的测试策略。该搜索过程找到最大化预定义测试鲁棒性度量的测试策略,而过滤器保证存在满足测试规范的测试策略。我们证明算法是可靠的。此外,合成过滤器的滚动时域方法确保了算法的可扩展性。最后,我们表明合并单元测试对于设计高效测试活动以在更少测试执行中达到类似覆盖水平具有显著影响。我们在离散状态设置下通过两个自动驾驶示例说明了该框架。

关键词

引用

@article{arxiv.2204.02541,
  title  = {Towards Better Test Coverage: Merging Unit Tests for Autonomous Systems},
  author = {Josefine Graebener and Apurva Badithela and Richard M. Murray},
  journal= {arXiv preprint arXiv:2204.02541},
  year   = {2022}
}

备注

Conference Paper