嵌入式软件单元/集成测试工具TESSY功能、特点介绍

本文主要是介绍嵌入式软件单元/集成测试工具TESSY功能、特点介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在当前的智能物联网时代,嵌入式软件测试越来越受到关注。

嵌入式软件的特点

首先,我们来快速了解一下嵌入式软件自身的特点。

嵌入式软件具有实时性、内存空间有限、I/O通道少,而且要求功耗低、高可靠性,对成本也比较敏感,和硬件关联性强等特点。因此,嵌入式软件的测试与一般商用软件的测试有较大区别。

嵌入式软件的开发和运行环境通常是分离的。开发在Windows/Mac OS桌面客户端(宿主机环境)上进行,而运行环境是在目标机环境上,即一般是基于Linux/Android内核开发的嵌入式操作系统或像RT-thread那样的实时操作系统,支持ARM CPU、MCU和蓝牙芯片等低功耗的关键硬件。

嵌入式软件的测试:单元测试与集成测试

嵌入式软件的单元测试一般在宿主机环境下进行,只是在个别情况下(如目标机编译器可能有缺陷)会要求在目标机环境下进行,所以在单元测试上,嵌入式软件和一般商用软件之间的差别比较小。不过,嵌入式软件的单元测试对代码的质量要求比较高,一般要求达到MC/DC覆盖率。

嵌入式软件的集成测试,一般指与目标机的硬件环境集成,也可以和仿真环境集成,这时需要做相应的硬件兼容性测试。但到了系统测试、配置项测试或确认测试,一般就会在目标机环境下执行,这时和一般商用软件的测试有较大的差别。

由于嵌入式系统的实时性,其测试应充分考虑系统实时响应的问题,其响应时间一般要求在毫秒级别,其对应的负载测试少不了。在对目标机进行测试时,一般需要对在宿主机上编译通过的代码进行插桩处理。

除此之外,还需要制定符合系统需求的可靠性级别和安全级别,进行相应的可靠性测试和安全性测试。嵌入式软件测试工具,开源工具比较少,多数是商业工具,而且往往成套,覆盖系统功能、性能分析和安全性测试。

专业的嵌入式软件测试工具 TESSY

TESSY作为较早的单元测试工具之一,是当今嵌入式软件测试的领先解决方案。TESSY设计用于支持符合标准的开发和测试,已经成为高质量产品和安全关键应用的常用工具。

TESSY是一款应用于嵌入式软件的自动化测试工具,专门针对嵌入式软件的C/C++代码进行单元测试、集成测试。它易于安装和操作,可自动执行测试、评估测试结果并生成测试报告。此外,TESSY还负责完整的测试组织以及测试管理,包括需求、覆盖率度量和可追溯性。

作为一款经过认证的测试工具,TESSY支持所有行业领先的编译器、调试器和微控制器,以及主机模拟,符合IEC 61508/ISO 26262、IEC 62304和EN 50128标准的安全相关软件开发要求。

关键特点:

> 直观的测试设计和自动化工作流程
> 管理、链接和追踪需求
> 在电子表格和用户代码中编辑测试数据
> 支持软件变体测试
> 故障注入测试
> 定义基于时间的组件测试场景
> 在主机、模拟器和硬件上执行测试
> 图形化绘制测试结果
> 自动代码访问(Automatic Code Access)检查
> 用流程图的形式分析代码覆盖率
> 累计基于行的超覆盖率(Hyper Coverage)
> 生成多种格式的定制报告
> 用于持续集成的命令行脚本
> 集成分类树编辑器(CTE)
> 软件度量的计算(McCabe)
> 测试工作估算和跟踪
> 通过文本测试脚本审查测试更改
> 基于更改的回归测试
> 自动检查测试用例质量

TESSY的最新版本v5.1可用于Windows和Linux,并提供各种有趣的新功能。一个突出的新功能是新的“测试驾驶舱”,它可用于从整个软件中确定要测试的源文件,汇总来自各种测试对象和方法的所有覆盖率测量结果,并记录在新的报告“测试摘要”中。

龙智即将携TESSY等全球主流工具亮相2024上海国际嵌入式展

2024年6月12日-14日,龙智即将携嵌入式开发解决方案亮相2024上海国际嵌入式展 640展位 

展会期间,我们将为大家全面介绍TESSY的功能、特点与使用场景,除此之外,还会有静态代码分析、需求管理、版本控制、IP生命周期管理、项目管理、知识库管理等多领域的全球主流工具与大家见面。欢迎点击报名,直击展会现场>>>

获取更多TESSY产品详情,欢迎咨询TESSY授权分销商——龙智:

官网:http://www.shdsd.com

电话:400-666-7732

邮箱:marketing@shdsd.com

这篇关于嵌入式软件单元/集成测试工具TESSY功能、特点介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1047304

相关文章

C#使用StackExchange.Redis实现分布式锁的两种方式介绍

《C#使用StackExchange.Redis实现分布式锁的两种方式介绍》分布式锁在集群的架构中发挥着重要的作用,:本文主要介绍C#使用StackExchange.Redis实现分布式锁的... 目录自定义分布式锁获取锁释放锁自动续期StackExchange.Redis分布式锁获取锁释放锁自动续期分布式

Android使用ImageView.ScaleType实现图片的缩放与裁剪功能

《Android使用ImageView.ScaleType实现图片的缩放与裁剪功能》ImageView是最常用的控件之一,它用于展示各种类型的图片,为了能够根据需求调整图片的显示效果,Android提... 目录什么是 ImageView.ScaleType?FIT_XYFIT_STARTFIT_CENTE

Python的time模块一些常用功能(各种与时间相关的函数)

《Python的time模块一些常用功能(各种与时间相关的函数)》Python的time模块提供了各种与时间相关的函数,包括获取当前时间、处理时间间隔、执行时间测量等,:本文主要介绍Python的... 目录1. 获取当前时间2. 时间格式化3. 延时执行4. 时间戳运算5. 计算代码执行时间6. 转换为指

redis过期key的删除策略介绍

《redis过期key的删除策略介绍》:本文主要介绍redis过期key的删除策略,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录第一种策略:被动删除第二种策略:定期删除第三种策略:强制删除关于big key的清理UNLINK命令FLUSHALL/FLUSHDB命

Android实现两台手机屏幕共享和远程控制功能

《Android实现两台手机屏幕共享和远程控制功能》在远程协助、在线教学、技术支持等多种场景下,实时获得另一部移动设备的屏幕画面,并对其进行操作,具有极高的应用价值,本项目旨在实现两台Android手... 目录一、项目概述二、相关知识2.1 MediaProjection API2.2 Socket 网络

Redis消息队列实现异步秒杀功能

《Redis消息队列实现异步秒杀功能》在高并发场景下,为了提高秒杀业务的性能,可将部分工作交给Redis处理,并通过异步方式执行,Redis提供了多种数据结构来实现消息队列,总结三种,本文详细介绍Re... 目录1 Redis消息队列1.1 List 结构1.2 Pub/Sub 模式1.3 Stream 结

MySQL索引的优化之LIKE模糊查询功能实现

《MySQL索引的优化之LIKE模糊查询功能实现》:本文主要介绍MySQL索引的优化之LIKE模糊查询功能实现,本文通过示例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录一、前缀匹配优化二、后缀匹配优化三、中间匹配优化四、覆盖索引优化五、减少查询范围六、避免通配符开头七、使用外部搜索引擎八、分

Spring Boot 集成 Quartz并使用Cron 表达式实现定时任务

《SpringBoot集成Quartz并使用Cron表达式实现定时任务》本篇文章介绍了如何在SpringBoot中集成Quartz进行定时任务调度,并通过Cron表达式控制任务... 目录前言1. 添加 Quartz 依赖2. 创建 Quartz 任务3. 配置 Quartz 任务调度4. 启动 Sprin

Android实现悬浮按钮功能

《Android实现悬浮按钮功能》在很多场景中,我们希望在应用或系统任意界面上都能看到一个小的“悬浮按钮”(FloatingButton),用来快速启动工具、展示未读信息或快捷操作,所以本文给大家介绍... 目录一、项目概述二、相关技术知识三、实现思路四、整合代码4.1 Java 代码(MainActivi

SpringBoot集成Milvus实现数据增删改查功能

《SpringBoot集成Milvus实现数据增删改查功能》milvus支持的语言比较多,支持python,Java,Go,node等开发语言,本文主要介绍如何使用Java语言,采用springboo... 目录1、Milvus基本概念2、添加maven依赖3、配置yml文件4、创建MilvusClient