BTC TestStack

回归测试

在模型、代码或工具版本发生任何更新后,确认行为未发生变化。

问题

工具链升级或模型重构可能在不易察觉的情况下改变行为。

当团队升级代码生成工具链,或重构模型或其生产代码时,除非手动重新测试全部内容,否则没有可靠方法确认行为是否保持不变。

定义

将背靠背测试应用于两个版本。

回归测试将同一套背靠背测试机制应用于同一实现的两个版本,而非两个不同实现:以上一版本作为参考,以当前版本作为对比。两个版本采用相同的激励向量、相同的两个引擎和相同的报告类型。

两种运行方式

软件回归或工具鉴定。

软件回归

参考: 上一版模型/代码比较: 当前版本

这对于代码优化或重组等行为应保持一致的变更尤其重要;回归测试可证明行为确实未变。

工具鉴定

参考: 上一版 MATLAB/TargetLink比较: 当前版本

当团队升级代码生成工具链时,这种比较可提供形式化证据,证明生成代码的行为未发生变化,并以自动化、可追溯的比较取代人工复审。

工作原理

在两个版本上运行相同的激励向量。

系统自动生成激励向量,以达到结构覆盖率和稳健性覆盖目标。生成过程使用快速启发式引擎(ATG)和基于形式化模型检验的引擎(CV),后者能够从数学上证明某个目标不可达。同一组向量在两个版本上运行,任何偏差都会被自动标记并定位。

查看完整的背靠背测试机制
面向规模化应用

支持大型模型和繁忙的流水线。

分层测试方法

对于大型模型,如果只关注顶层,回归测试会面临挑战。BTC TestStack 可以先独立分析各个子作用域,再将结果汇总到顶层作用域,使生成工作在复杂度增加时仍保持可处理。

有关分层方法的更多信息

测试自动化与 CI/CD

测试自动化附加组件可在无人值守状态下运行回归工作流程,由脚本或 Jenkins 触发,并在完成后提供完整的 HTML 报告。此外还提供 REST API,以及可在自有服务器或云端运行的 Linux 容器镜像。

有关 CI/CD 集成的更多信息
报告

面向工具鉴定资料包的证据。

每次回归运行都会生成 BTC TestStack 全程使用的背靠背测试报告、代码分析报告和模型覆盖率报告。这些报告作为配置项进行版本管理,并可导出用于工具鉴定资料包或客户文档。

已认证

BTC TestStack

已通过 ISO 26262 认证

该证书涉及多个行业的功能安全标准:

ISO 26262
汽车
IEC 61508-3:2010
工业/跨行业功能安全
ISO 25119
农林机械
IEC 62304
医疗设备软件
EN 50716
轨道交通/铁路应用

对于 ISO 26262,BTC TestStack 已获得最高工具置信等级(TCL)认证,适用于包括 ASIL D 在内的所有 ASIL 等级。客户提出请求后,我们会免费提供证书和报告,从而免去客户侧的大部分工具鉴定工作。

Feel the Quality

与我们的工程团队交流。

告诉我们您的工程问题具体出现在哪里。我们会与您一起判断,下一步更适合申请评估许可证、参加研讨会,还是直接交流。