Cyber-Physical Systems (CPSs) are often safety-critical and deployed in uncertain environments. Identifying scenarios where CPSs do not comply with requirements is fundamental but difficult due to the multidisciplinary nature of CPSs. We investigate the testing of control-based CPSs, where control and software engineers develop the software collaboratively. Control engineers make design assumptions during system development to leverage control theory and obtain guarantees on CPS behaviour. In the implemented system, however, such assumptions are not always satisfied, and their falsification can lead to guarantees loss. We define stress testing of control-based CPSs as generating tests to falsify such design assumptions. We highlight different types of assumptions, focusing on the use of linearised physics models. To generate stress tests falsifying such assumptions, we leverage control theory to qualitatively characterise the input space of a control-based CPS. We propose a novel test parametrisation for control-based CPSs and use it with the input space characterisation to develop a stress testing approach. We evaluate our approach on three case study systems, including a drone, a continuous-current motor (in five configurations), and an aircraft.Our results show the effectiveness of the proposed testing approach in falsifying the design assumptions and highlighting the causes of assumption violations.
翻译:信息物理系统(CPS)通常具有安全关键性,并部署在不确定环境中。识别CPS不符合需求的情景至关重要,但由于CPS的多学科特性,这一任务颇具挑战性。我们研究基于控制的CPS的测试问题,此类系统中控制工程师与软件工程师协同开发软件。控制工程师在系统开发过程中做出设计假设,以借助控制理论获得CPS行为的保证。然而在实际实现系统中,此类假设并非总能满足,其证伪可能导致保证失效。我们将基于控制的CPS的压力测试定义为:生成测试用例以证伪此类设计假设。我们重点阐释不同假设类型,聚焦于线性化物理模型的使用。为生成能够证伪此类假设的压力测试,我们利用控制理论对基于控制的CPS的输入空间进行定性刻画。我们提出一种新颖的基于控制的CPS测试参数化方法,并结合输入空间刻画开发了压力测试方案。通过三个案例系统(含无人机、五种配置下的直流电机及飞行器)进行实验评估。结果表明,所提测试方法能有效证伪设计假设,并揭示假设违反的成因。