服务粉丝

我们一直在努力
当前位置:首页 > 财经 >

TASMO-自动测试建模好帮手

日期: 来源:芝能汽车收集编辑:北汇信息



作者 | ilil

小编 | 吃不饱
 
对于一名汽车软件测试工程师,最关心的问题是如何高效完成产品测试。目前提高测试效率的方法主要有以下两个方向:一、提高测试建模的效率,最好能够实现“自动化”,并且测试用例能够复用于后续的SiL、PiL以至于HiL测试阶段。二、快速完成模型\代码覆盖度统计,并提升模型\代码结构覆盖度。TPT-TASMO,一款能够完美满足上述需求的神奇工具箱来了!


01
TASMO的特性

TASMO是TPT中一个独立的工具箱,能够针对Simulink/Stateflow、TargetLink模型或C代码,基于CC、DC、MC/DC原则自动生成测试用例、进行结构覆盖度统计。
图1 TASMO测试用例自动生成

▪️ 针对Simulink/Stateflow、TargetLink模型、C代码,自动进行模型或C代码的结构分析,确保测试完整性
▪️ 自动生成测试用例,帮助用户节约大量时间和成本
▪️ 用户可自定义测试用例的创建准则
▪️ 提供详细的覆盖范围报告,包括测试集覆盖的以及未覆盖的结构
▪️ 支持CC、DC、MC/DC准则


02
应用一:自动生成测试用例

以灯控模型为例,在Simulink子系统中,分别有两个输入信号和一个输出信号,当开关处于ON或OFF状态时,头灯也随之打开或关闭;当开关处于AUTO状态时,头灯受到光照条件的影响打开或关闭。

图2 灯控模型

功能安全要求软件单元测试要进行基于需求的测试和接口测试,同时为了保证测试的完整性,还需尽可能满足结构覆盖度。TASMO的用例生成算法不断精进,同时利用静态分析技术,自动生成最少数量的测试用例来最大化遍历模型,满足上述要求的前提下还实现了“自动化”。用户只需要进行以下步骤:

(1)点击Generate Test Cases - for MATLAB/Simulink Models (TASMO),启动TASMO工具箱,选择当前测试的模型;


图3 TASMO界面-模型分析

(2)点击Input Specification,对输入接口的最大最小值、步进长度、信号组成方式进行配置,自动生成的用例会在配置的数值范围内实现遍历,覆盖接口测试;


图4 输入信号配置

(3)点击Coverage Goals Selection,选择生成用例的结构覆盖度目标,可选择CC、DC、MC/DC准则。以模型中的OR模块为例,如须满足MC/DC准则,须包含如下情况:①两个输入为false;②一个输入为true,另一个输入为false。TASMO可以分析出如下结构:


图5 灯控OR结构分析

图6 生成测试用例准则选择

(4)点击Generate,基于之前的配置一键生成测试用例。


图7 自动生成测试用例

测试用例生成完成后,只需根据功能需求逐条编写GUI评估,便可实现基于需求的测试。相比传统的测试方式,使用TASMO工具箱,不仅验证了模型设计符合功能需求设计,在测试建模效率上也得到了极大的提高。同时TASMO自动生成的测试用例也可以复用于后续的SiL测试,验证模型生成的代码是否符合功能预期。


03
应用二:模型覆盖度统计

TPT在统计结构覆盖度时提供了多种选择,对于模型测试,可以调用TargetLink、CTC++ for TargetLink和Simulink V&V工具统计结构覆盖度。除此之外,TASMO也具有统计结构覆盖度的功能。我们可在MATLAB/Simulink平台配置中的TASMO Coverage Analysis选择覆盖度统计准则,无需集成外部测试覆盖度工具,从而节省测试成本。

图8 覆盖度准则选择

TASMO会自动根据覆盖准则去分析模型结构,列出相应子层级下的关系运算符或逻辑块的输入和输出的组成情况,最后统计出当前运行的测试用例或测试用例集的覆盖情况,并在测试报告中展示出覆盖度详情页。

图9 模型覆盖度报告


04
应用三:C代码覆盖度统计

TASMO工具箱不仅可以统计模型的结构覆盖度,对于C代码也同样适用。

在C/C++ Platform选择TPT Coverage,即可使用TASMO生成C代码的测试数据,统计当前测试用例或测试用例集的结构覆盖度。同样地,可选择CC、DC、MC/DC准则作为统计标准。

图10 C Platform覆盖度准则选择

如下图所示,测试报告展示了覆盖度详情页。点击link查看C代码的具体覆盖情况,对未覆盖的代码语句进行标红高亮显示,包括语句true和false的覆盖次数,帮助定位问题和基于覆盖度结果补充测试用例。

图 11 C代码覆盖度报告

图12 C代码覆盖度报告详情页


05
小结

本文介绍了TPT-TASMO在自动生成测试用例和统计模型/代码覆盖度方向的应用,帮助我们更高效、更完整地完成软件测试,节约测试成本。同时随着越来越多的小伙伴开始关注形式化需求,在TPT19中即将推出基于TASMO生成形式化需求的测试用例,我们诚邀您一起来体验TPT19强大的测试功能,敬请期待!


往期精彩

▪️ 基于TPT实现自动化场景测试

▪️ 通过TPT命令行自动化执行测试

▪️ 快来围观–TPT18新版报到

▪️ 如何符合E-NCAP测试规范?TPT让AEB场景测试更简单

相关阅读

  • 上班摸鱼!如何让ChatGPT帮我们做测试!

  • 作为软件开发领域中至关重要的一环,软件测试的重要性日益凸显。然而,随着软件测试开发技术的不断发展,软件测试也面临着越来越多的挑战,为了更好地应对这些挑战,测试人社区将持续
  • 2023中国AIGC市场潜力研究报告

  • “未来几年内,AIGC技术将在多个领域落地,预计到2030年,AIGC的产业规模将突破千亿元。”01研究方向及背景AIGC是AI Generated Content的缩写,指利用人工智能技术生成的内容。它也
  • ChatGPT爆火之后,AIGC往何处去?| 峰瑞报告28

  • “ChatGPT”可能是从2022年底至今,最为出圈的科技热词之一。GPT是Generative Pre-trained Transformer的缩写,表示生成型预训练变换模型。这个由OpenAI研发的语言模型激起了人
  • 最强逻辑|光储结构件增速强势(20230309)

  • 逻辑哥在研究祥鑫科技时,发现他的光储结构件业务增速特别快,2022年上半年光储结构件营收2.3亿,同比238%,预计22年营收5亿以上,同比182%,预计2023年营收15亿以上,同比2倍以上,占营收
  • 结构性行情中的:死亡切换!

  • 作者/梅森重视一下股市依据走势,大体分为:牛市行情、熊市行情、结构性行情。结构性行情是最近10年,专业机构特别爱用的一个词,它的本意就是:指数失效,个别板块行情!指数失效,意味着

热门文章

  • “复活”半年后 京东拍拍二手杀入公益事业

  • 京东拍拍二手“复活”半年后,杀入公益事业,试图让企业捐的赠品、家庭闲置品变成实实在在的“爱心”。 把“闲置品”变爱心 6月12日,“益心一益·守护梦想每一步”2018年四

最新文章

  • TASMO-自动测试建模好帮手

  • 作者 | ilil小编 | 吃不饱 对于一名汽车软件测试工程师,最关心的问题是如何高效完成产品测试。目前提高测试效率的方法主要有以下两个方向:一、提高测试建模的效率,最好能够实
  • 锂解热点|国内首个车用操作系统开源版本将发布

  • 国内首个车用操作系统原创微内核开源版本将发布,汽车智能网联更进一步?‍‍‍‍‍‍背景:2月18日,中国汽车工业协会软件分会发布了中国车用操作系统开源计划,首个车用操作系统原
  • 锂解热点|碳酸锂由涨到跌,还会经历什么?

  • 从“疯狂上涨”到“一路下跌”,碳酸锂究竟经历了什么?‍‍‍‍‍‍‍背景:2023年开年就迎来了电池级碳酸锂价格的一路下跌,从1月3日的51.75万元/吨跌至2月25日的40.75万元/吨,跌
  • 41万年薪董秘,4亿买股票!关注函来了

  • 中国基金报记者 南深 近日闹得沸沸扬扬的“41万年薪董秘自掏4亿买公司股份”事件,有了最新进展。 3月10日深夜,深交所向奥飞数据下发关注函,要求公司董事会核