Testing with simulation environments helps to identify critical failing scenarios for self-driving cars (SDCs). Simulation-based tests are safer than in-field operational tests and allow detecting software defects before deployment. However, these tests are very expensive and are too many to be run frequently within limited time constraints. In this paper, we investigate test case prioritization techniques to increase the ability to detect SDC regression faults with virtual tests earlier. Our approach, called SDC-Prioritizer, prioritizes virtual tests for SDCs according to static features of the roads we designed to be used within the driving scenarios. These features can be collected without running the tests, which means that they do not require past execution results. We introduce two evolutionary approaches to prioritize the test cases using diversity metrics (black-box heuristics) computed on these static features. These two approaches, called SO-SDC-Prioritizer and MO-SDC-Prioritizer, use single-objective and multi-objective genetic algorithms, respectively, to find trade-offs between executing the less expensive tests and the most diverse test cases earlier. Our empirical study conducted in the SDC domain shows that MO-SDC-Prioritizer significantly improves the ability to detect safety-critical failures at the same level of execution time compared to baselines: random and greedy-based test case orderings. Besides, our study indicates that multi-objective meta-heuristics outperform single-objective approaches when prioritizing simulation-based tests for SDCs. MO-SDC-Prioritizer prioritizes test cases with a large improvement in fault detection while its overhead (up to 0.45% of the test execution cost) is negligible.
翻译:模拟环境测试有助于确定自我驾驶汽车(SDCs)的关键故障情况。模拟测试比实地操作测试更安全,在部署之前可以检测软件缺陷。然而,这些测试费用非常昂贵,而且太多,无法在有限的时限内经常运行。在本文中,我们调查了测试案件优先排序技术,以提高通过早期虚拟测试检测SDC回归缺陷的能力。我们称之为SDC-优先级测试的方法,根据我们设计在驾驶情景中使用的道路的静态特征,优先为SDCs进行虚拟测试。这些特征可以在不进行测试的情况下收集,这意味着它们不需要过去的执行结果。我们采用两种进化方法,利用多样性指标(黑箱内软体内软体内)计算这些静态特征,对测试案件进行优先排序。我们的方法,即SDC-PRODR(使用单一目标级和多级的遗传算法),分别发现执行费用较低的测试和最早期最多样化的测试案例之间的偏差。我们在SDCSDDC(SDRestriforal Reforal-deal-deal-deal-deal-deal-deformarial-deal-deal-deal-deal-deal-deal-deal-levelopmental-deal-deal-legal-legal-legal-legal-legal-legal-legal-legal-legal-legal-legal-lemental-legal-legal-legal-legal-legal-lection-lection-traction-lection-lection-lection-lection-traction-traction-legal-lection-traction-lection-lection-traction-traction-traction-tracisal-traction-tracisal-de) lection-tra a legal-tracisal-tracal-traction-tracal-tracal-tracisal-tracisal-tracal-tracisal-tracal-tracisal-tracal-tracisal-tracal-tracal-tracal-tracal-tracal-tracal-tracal-tra