0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

将测试工作减少到最低限度的5个秘密技巧

北汇信息POLELINK 2023-04-12 11:39 次阅读

作者 | 小新小编 | 吃不饱

由于在开发早期阶段编写的需求会随着时间的推移变得不够充分,所以需要对其进行相应调整。那么这时就会出现一个问题:
已经根据需求实现的测试也要跟着进行调整和检查(进行维护),但这对测试人员来说是相对单调且耗时的。

如何将维护工作减少到最低限度呢?

TPT作为德国PikeTec公司嵌入式软件测试工具,通过测试服务和客户的建设性反馈,不断识别工具新需求,对上述问题提供了几种策略。接下来将从5个方面介绍TPT是如何减少维护工作的。1. 分离测试数据和预期行为2. 使用状态机型测试用例开发测试3. 测试用例和评估与需求的双向链接4. 巧用测试方法设计稳健的测试5. 测试执行的自动化

01分离测试数据和预期行为
与传统方法相比,TPT可以将测试用例(用于刺激测试对象)和对预期行为的评估进行分离。这种方式既提高了清晰度,也在测试用例创建过程中节省了大量的工作。

举个例子

当前输出信号d等于0,如果输入信号a、b、c同时大于0,输出信号d等于输入信号a、b的和。对于传统方法,根据需求和MC/DC要求编写如下四条测试用例:
3acaf1d6-d4cd-11ed-ad0d-dac502259ad0.png当使用测试工具TPT时,可以将上述预期行为通过脚本、Trigger Rule等评估方法定义到Assesslet中,且其内容对所有测试用例均可重用。
如图1,使用Trigger Rule的While condition is true 模式进行评估,简单介绍一下其使用方法:当测试数据满足Condition中的内容时,会评估Then check 中的语句,否则就评估Else check中的内容。
3ae3c2a6-d4cd-11ed-ad0d-dac502259ad0.png图1 Trigger Rule
还可以通过使用信号波形或斜坡来减少被测系统(SUT)的必要测试用例的数量。如下图,将上述四条测试用例用一条表示。(预期行为如上述写在Assesslet中)
3af43942-d4cd-11ed-ad0d-dac502259ad0.png图2 测试用例
另外如果我们想要增加测试深度,例如进行边界值测试,只需编写测试数据即可,因为在Assesslet中已经定义了缺失的信息和期望值。

通过上述内容可以看到TPT提供的这种分离方法在创建测试用例时节省了相当大的成本。另外在大多数情况下测试数据可以保持不变,只需要调整Assesslet,这就使得维护工作进一步减少。


02使用状态机型测试用例开发测试
TPT支持步骤列表型和状态机型的测试用例
对于状态机型测试用例来说,可以将重复需要的测试数据分离到状态机的变种中。

举个例子

开关处于自动档位下,头灯根据不同的光照强度,产生不同的变化,测试车辆的灯控功能。这里重复使用的测试数据是开关处于自动挡,对其创建状态机和变种,如下图所示。3b1aa99c-d4cd-11ed-ad0d-dac502259ad0.png图3 测试用例

如果重复使用的测试数据内容需要更改,这时只需更改一次即可将使用该变种的测试用例全部更改,内容更改越频繁,节省的工作也就会越多。


03测试用例和评估与需求的双向链接
TPT支持测试用例和评估与需求的双向链接,在ASPICE中所有测试活动都需要保持双向追溯。
3b2f656c-d4cd-11ed-ad0d-dac502259ad0.png图4 测试用例和评估与需求的双向链接
TPT会在每次测试执行后,将需求和测试用例,包括它们的结果,清楚地显示在报告中。
3b5551b4-d4cd-11ed-ad0d-dac502259ad0.png图5 报告显示
如果测试失败,可以很容易地找到相应的需求。
3b70e956-d4cd-11ed-ad0d-dac502259ad0.png图6 未通过需求显示
对于每个需求,可以很容易找到与之链接的测试用例和评估。
3b90ca3c-d4cd-11ed-ad0d-dac502259ad0.png图7 链接的测试用例和评估显示
如果需求在生命周期中发生了改变,那么被改变的需求所链接的测试用例会高亮显示,能够方便查找,进而减少维护时间。
3bb6d362-d4cd-11ed-ad0d-dac502259ad0.png图8 测试用例突出显示

04使用反应式测试方法设计稳健的测试
TPT的反应式测试方法增加了测试对变化和环境变量的稳健性。反应式测试可以理解为,在测试设计中(搭建测试用例时)定义只有当SUT为已定义状态时才执行的动作(在转移线上设置判断条件),也可以称为基于事件的测试。

举个例子

当车辆速度达到30km/h时,执行紧急制动操作,以测试车辆的ABS功能。搭建测试用例时,只需明确当车辆达到30km/h的目标速度时,TPT会检测到这一点,并启动全面制动即可。3bde5856-d4cd-11ed-ad0d-dac502259ad0.png图9 测试用例
前一状态机可以切换到不同变种,转移线和后一状态机内容可以不进行调整。这样一来就可以为测试用例搭建和维护节省时间。
3bf375ec-d4cd-11ed-ad0d-dac502259ad0.png图10 变种显示

05自动化
我们可以发现测试中的许多任务都是重复的工作,例如在软件更改后更新测试框架、日常的需求更新、将测试结果反馈到应用程序生命周期管理工具中等。这些工作即使是在测试自动化中也需要由测试人员手动执行。
但是,现阶段TPT已经创造了一些可能性来自动化这些手动工作:提供一个允许用户使用自己的自动化脚本来自动化执行部分工作的API接口(API Script Editor),并且TPT 中85%的GUI功能可以由用户来实现自动化。

例如

通过下图中的脚本可以创建TPT工程,生成状态机型的测试用例。3c09a3da-d4cd-11ed-ad0d-dac502259ad0.png图11 API Script Editor 内容
3c448e46-d4cd-11ed-ad0d-dac502259ad0.png图12 执行API Script生成的工程
除此以外,还可以通过API Script实现平台配置,测试评估等功能。

06总结
本文介绍了使用TPT将维护工作减少到最低限度的五种方法,但TPT的优势不仅限于以上内容,想了解更多请联系我们吧。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 测试
    +关注

    关注

    8

    文章

    4453

    浏览量

    125126
  • TPT
    TPT
    +关注

    关注

    0

    文章

    22

    浏览量

    6904
收藏 人收藏

    评论

    相关推荐

    嵌入软件单元测试工具的作用

    测试单元进行测试,来验证其是否按照设计要求正常工作。 嵌入软件单元测试工具能够提高开发人员的工作效率和软件质量。首先,它可以帮助开发人员快
    的头像 发表于 04-23 15:31 84次阅读
    嵌入软件单元<b class='flag-5'>测试工</b>具的作用

    为什么要做自动化测试测试工程师存在的必然性

    软件测试这个过程的实施主体就是测试工程师。那么多少个测试工程师比较合适呢,或者换句话说如上的事情必须要测试工程师完成吗?
    的头像 发表于 01-16 11:32 563次阅读

    软件测试工作中常见的风险有哪些

    软件测试 工作中常见的风险有哪些,作为测试人员我们应该如何规避呢? ** 1、需求的风险** 其实存在于测试各阶段,例如:测试人员对需求理解
    的头像 发表于 12-27 10:35 415次阅读

    如何使用芯片测试工测试芯片静态功耗?

    。对于移动设备、物联网设备等使用电池供电的应用来说,降低静态功耗可以延长电池续航时间,提供更好的用户体验。对于其他应用,降低静态功耗可以减少芯片的热量和能源浪费。 芯片静态功耗测试使用专门的测试工具来完成。下面
    的头像 发表于 11-10 15:36 1365次阅读

    笔记本转轴扭力测试仪是实用的测试工具吗

    笔记本转轴扭力测试仪是实用的测试工具吗?|深圳磐石测控
    的头像 发表于 11-06 09:10 237次阅读
    笔记本转轴扭力<b class='flag-5'>测试</b>仪是实用的<b class='flag-5'>测试工</b>具吗

    Linux下的stress-ng压力测试工具介绍

    今天浩道跟大家分享Linux下一款强大的压力测试工具------stress-ng,这款测试工具对于运维工程师或者测试工程师,还是比较受欢迎的。本文带你安装部署,并且列举出它常用的测试
    的头像 发表于 11-03 09:31 3199次阅读
    Linux下的stress-ng压力<b class='flag-5'>测试工</b>具介绍

    光伏逆变器测试工作内容介绍

    光伏逆变器是太阳能发电系统中非常重要的组件之一,它负责将直流电转换为交流电以供家庭或公司使用。由于逆变器的功能极其重要,所以测试工作也是必不可少的。下面将对光伏逆变器测试工作内容进行详细介绍。
    的头像 发表于 10-07 13:11 698次阅读

    最大限度减少SIC FETs EMI和转换损失

    最大限度减少SIC FETs EMI和转换损失
    的头像 发表于 09-27 15:06 255次阅读
    最大<b class='flag-5'>限度</b>地<b class='flag-5'>减少</b>SIC FETs EMI和转换损失

    T900串口测试工具的使用教程

    T900原厂提供了“串口测试工具”,以便更好地评估T900的相关性能。下面就简单谈下该工具如何使用。
    的头像 发表于 09-13 11:04 1199次阅读
    T900串口<b class='flag-5'>测试工</b>具的使用教程

    STM32L4定时器(TIMER)介绍

    以下特征: •它提供了最低限度的功能(从而尽可能降低功耗) •它能够独立于系统的其他部分工作,通常在MCU 处于STOP模式(内部时钟已禁用) •超低功耗异步设计
    发表于 09-07 07:21

    如何使用DudeSuite进行渗透测试工作

    技术的理解使用DudeSuite进行渗透测试工作,半自动Web渗透测试就目前的来说依然是主流,相比起全自动化的扫描器及批量化脚本可以在测试时具有更大的灵活性和准确性来挖掘复现Web应用中的安全风险。 程序核心功能为六个部分组成,
    的头像 发表于 06-13 09:04 1046次阅读
    如何使用DudeSuite进行渗透<b class='flag-5'>测试工作</b>

    基于ESPHelper的项目,第一网络连接的引导循环和异常是怎么回事?

    ),从一天下一天(在意外更新之后??),一旦与我的路由器建立连接(都是 Cisco EPC 3925 和树莓派)。这就是发生的事情(减少最低限度,基于 ESPHelper 示例):
    发表于 06-08 06:47

    怎样才能最低限度地点亮ESP8266-01上的蓝色LED?

    嗨,我只想点亮 ESP8266-01 上的蓝色 LED,所以我 vcc 连接到 3.3v 并将 gnd 连接到 - 但没有任何反应?我怎样才能最低限度地让 LED 点亮?
    发表于 06-06 07:55

    详解半导体封装测试工

    详解半导体封装测试工
    的头像 发表于 05-31 09:42 1091次阅读
    详解半导体封装<b class='flag-5'>测试工</b>艺

    TPT将维护工作减少最低限度的五种方法

    来说是相对单调且耗时的。   如何将维护工作减少最低限度呢? TPT作为德国PikeTec公司的嵌入式软件测试工具,通过测试服务和客户的建
    的头像 发表于 05-29 09:04 450次阅读
    TPT将维护<b class='flag-5'>工作</b><b class='flag-5'>减少</b>到<b class='flag-5'>最低限度</b>的五种方法