当前位置 : 主页 > 编程语言 > 其它开发 >

快来围观–TPT18新版报到

来源:互联网 收集:自由互联 发布时间:2022-06-22
前言 TPT作为PikeTec公司的嵌入式软件测试工具,具有很高的扩展性和便捷性。随着软件测试日趋复杂并且需求多样化,TPT不断改进以满足与时俱进的要求。您可以在所有开发阶段使用T

前言

 

 

TPT作为PikeTec公司的嵌入式软件测试工具,具有很高的扩展性和便捷性。随着软件测试日趋复杂并且需求多样化,TPT不断改进以满足与时俱进的要求。您可以在所有开发阶段使用TPT进行测试。无论是简单的单元测试还是复杂的系统测试,TPT都能够使测试变得快捷、简单和直观。

 

那么,TPT18是如何让测试变得简单快捷呢?

 

TPT18更新总体预览:

1. 新增形式化需求评估,实现需求和评估强相关;

2. 更灵活的需求管理,支持自定义功能需求;

3. 基于TASMO工具箱,自动生成满足MC/DC要求的测试用例;

4. 新增覆盖度统计工具TPT Coverage;

5. 丰富MATLAB平台功能;

6. 新增给定激励信号的方式(TPT内置函数);

7. Batch Runner界面和功能更新;

8. ASAM XiL及Vector系列平台相关更新;

 

其他:

1. 新增Simulink Real-Time XiL 平台,支持新一代Speedgoat硬件;

2. Carmaker Platform优化接口交互,并且当前测试可通过IPG可视化;

3. 新增评估函数,TPT.getConstant和TPT.isConstant(),支持任意表达式;

4. 全局评估可添加到Assesslet中,可针对任意平台激活;

5. 测试执行前后,可添加Python Script,实现自定义功能;

6. 在Test Case Details/Description中可导出评估条件;

7. Test Case Summary中可显示链接的需求ID;

……

 

 

一、  形式化需求评估

 

 

想不想只编辑需求而不写评估?现在TPT18形式化需求评估能够满足这一要求。

 

形式化需求具有简洁、明确和可评估的特点。在TPT18中,可将导入的Excel需求翻译成形式化需求评估。形式化需求不仅仅是靠链接关系完成的需求覆盖,而是更直接的对需求进行评估。

比如,灯控模型需求SPEC-17,可以翻译成如下形式化需求评估。

 

 

图 1 形式化需求评估

 

测试结果如下。

 

图 2 测试结果

 

 

二、  更灵活的需求管理

 

 

TPT18前,功能需求只能从外部导入,不能在TPT中更改。虽然这样能保证需求的统一,但也为功能需求的更改带来不便。在TPT18中,可直接在Requirements中更改/新建功能需求/子功能需求,并且该需求不会随着功能需求的导入而改变。 

 

 图 3 功能需求更新  

 

三、  TASMO支持MC/DC自动生成测试用例

 

 

测试覆盖度不能达到要求怎么办?这时候可以考虑使用TASMO。TASMO可根据模型/代码结构生成测试用例,提高测试覆盖度。

 

TPT18除了支持CC和DC覆盖外,还支持MC/DC覆盖,更容易达到理想覆盖度。

 

例如模型中OR模块,如须满足MC/DC,须包含如下情况:

1. 所有输入为False;

2. 一个输入为True,其余均为False;

 

 

图 4 模型中的Or结构

 

在TPT18中,可分析出如下结构,并根据此结构自动生成测试用例。

 

 

图 5 TPT18 Or模块结构

 

 

四、  新增代码覆盖度统计工具——TPT Coverage

 

 

TPT在统计覆盖度时,提供了多种选择,在测试时按照自身情况决定即可。

 

在模型阶段,可以调用Targetlink、CTC++ for Targetlink和Simulink V&V统计覆盖度。

 

在代码阶段,除了CTC++和GNU gcov外,还提供了TPT Coverage统计覆盖度。

 

 

图 6 TPT Coverage

 

 

图 7 覆盖度报告

 

 图 8 覆盖度报告

 

 

五、  丰富MALTAB平台功能

 

 

1)       MATLAB/Simulink Platform加速运行模式

 

你能想象一条测试用例运行后的数据达到将近10G吗?

 

超大的数据量也就意味着一个字——慢,而且是超级慢。

 

现在,这种情况得到缓解,TPT18的“MATLAB/Simulink Platform”新增选项“Simulation Mode”,可使用“Normal”、“Accelerator”、“Rapid Accelerator”和“Software in the loop”模式运行测试,可加快测试运行速度。

 

Tip针对测试用例数量较多情况,TPT支持多核模式加速运行。

 

 

图 9 加速运行模式

 

2)       检测特定系统覆盖度

 

TPT18前,如果需要分析特定子层级覆盖度时,需要将其它子层级注释掉。但是,如果子层级之前存在交互,需要进行接地等调试,较为复杂。现在,TPT18免去这一烦恼,因为可以直接排除掉不想检测的子层级。

 

 

图 10 Advanced setting

 

图 11 选择特定子系统

 

3)       直接导入Stateflow中间变量

 

TPT18前导入Stateflow中间变量需要手动新建并设置Import Measurements,还需在测试平台中加入脚本。TPT18的可直接点击“offline logging”导入,方便快捷。 

 

 

图 12 导入Stateflow 中间变量

 

4)       自动生成TPT Simulink Function Handler

 

当模型中使用了Simulink Function,但是测试目标层级的 Function Caller与Simulink Function不在同一层级,运行测试时会报错(找不到Simulink Function)。

面对此种情况,TPT18在测试框架中可自动生成TPT Simulink Function Handler。

 

 

图 13 TPT Simulink Function Handler

 

 

六、  丰富给定激励信号的方式(TPT内置函数)

 

 

TPT18增加了激励信号的给定方式,例如:TPT.impulse()、TPT.step()、TPT.sinwave()等,更方便实现想要的信号。

 

图 14 TPT内置函数

 

 

七、  Batch Runner界面和功能更新

 

 

当有多个TPT工程需要运行时,可以使用Batch Runner同时运行。

 

在TPT18中,更新了界面,并且增加了如下步骤:

  • TPT API-script
  • Execute Tests
  • Generate Testframe
  • Generate Overview RePort

支持如下平台生成测试框架:

  • AUTOSAR
  • C/C++
  • MATLAB
  • ASCET@FUSION
  • ASCET

 图 15 Batch Runner

 

 

八、  ASAM XiL及Vector相关更新

 

 

1)      扩展了ASAM XiL支持

服务项中增加了ASAM XiL Diag Port,可直接在测试用例中对DTC进行操作,如下:

  • Read DTCs
  • Clear DTCs
  • Read/Write Values
  • Execute Services

 

图 16增加的服务步骤

 

2)      支持导入DBC中枚举类型信号

在DBC中如果定义并关联了Value Table,TPT18支持导入。

 

 

图 17 导入枚举

 

3)      XCP通信控制

不仅在测试用例执行前可以控制XCP通信,而且在测试用例中也可以控制,方便进行测试。

 

图 18 XCP控制

 

 

图 19 测试用例中控制

 

 

总结

 

 

篇幅所限,不能一一介绍TPT18的改变,如想了解更多内容,请点击此处。

北汇信息携手PikeTec,共同促进软件测试发展。欢迎各位同学提出宝贵意见,

让软件测试变得越来越“方便”和“简单”!

 

网友评论