嵌入式软件单元/集成测试工具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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/26135.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

四川蔚澜时代电子商务有限公司抖音电商服务怎么样?

随着数字经济的蓬勃发展,电商行业已成为推动经济增长的重要引擎。在这个充满变革与机遇的时代,四川蔚澜时代电子商务有限公司凭借对抖音电商的深入理解和专业服务,迅速崛起为行业的佼佼者,引领着潮流营销的新风尚。 四川蔚澜时代…

ARM32开发--串口库封装(初级)

知不足而奋进望远山而前行 目录 文章目录 前言 目标 内容 开发流程 文件目录创建 分组创建 接口定义 完整代码 总结 前言 在嵌入式软件开发中,封装抽取流程和抽取封装策略是非常重要的技术,能够提高代码的复用性和可维护性。本文将介绍如何在文…

这可能是最清晰易懂的 G1 GC 资料

滑动验证页面 概述 G1 (Garbage-First) 于JDK 6u14版本发布,JDK 7u4版本发行时被正式推出,在JDK9时已经成了默认的垃圾回收器,算是CMS回收器的替代 方案(CMS在JDK9以后已经废弃) G1是一款分代的 (generational)&a…

@并行计算和分布式计算解决方案

并行计算和分布式计算解决方案 文章目录 为什么需要并行计算为什么需要分布式计算常见的解决方案有哪些 为什么需要并行计算 需要最大化利用计算机资源,加速计算。 为什么需要分布式计算 单机资源不足或者单机加速不达标,需要联合多台计算机&#xff…

如何使用C++ STL标准模板库中的算法函数(附源码)

目录 1、概述 2、调用sort函数对列表元素进行排序 3、调用count_if查找满足条件的元素个数 4、调用find_if函数找到目标元素的信息 5、调用remove_copy_if函数搜索满足条件的多个元素 6、总结 VC++常用功能开发汇总(专栏文章列表,欢迎订阅,持续更新...)https://blog.…

LeetCode刷题之HOT100之子集

2024/6/11 周二,闷热,很热。两天没有做题了,前天去附近一景点《十八重溪》游玩,去了才知道暂停开放,只能在附近转转了,瀑布是看不到了。昨天在宿舍呆了一天,今天早上起来就来了实验室。补三张图…

端午节,来看看这本应景的“龙舟书”吧!

大家端午安康呀图片~~ 端午节,不仅要吃粽子,还要看龙舟!图片 所以,今天就和大家分享一本“龙舟书”——《精进ChatGPT:高效应用实战88例》! 不仅和今天的端午节应景,还和当今的AI时代很配图片…

AI Agent 热门的10篇论文

人工智能代理领域广阔,涵盖广泛的主题,包括多代理系统、强化学习、上下文感知系统以及将大型语言模型 (LLMs) 集成到基于代理的系统中。以下是 arXiv 的一些顶级论文,涵盖了人工智能代理的各个方面: A Framework For Intelligent Multi Agent System Based Neural Network …

Python 基础语法详解(四)

Python 基础语法详解(四) Python 条件语句最简单的 if 语句基本的 if 语句实战: 复杂 if 语句实战: 看一看 elif 的好处题目:代码实现: 三元表达式格式为:实操: Python 条件语句 在…

Windows 托盘图标实现类封装及使用(附源码)

在系统桌面右下角的托盘区域,创建一个托盘图标,已经是很多软件的标配了,特别是IM即时通讯软件,要在托盘图标上显示来消息时的闪动头像。 其实托盘图标创建很简单,使用起来也比较方便,主要是调用Shell_NotifyIcon API函数,传入不同参数表示对应的操作: 1)NIM_AD…

synchronized 的底层实现

用户态与内核态 JDK 早期,synchronized 叫做重量级锁, 因为申请锁资源必须通过 kernel(指大多数操作系统的核心部分),系统调用。 ;hello.asm ;write(int fd, const void *buffer, size_t nbytes)section datamsg db …

数据结构(用 JS 实现栈和队列【三种方式】)

栈 先进后出 JS 实现栈 栈 : 用数组实现入栈 push ---- 时间复杂度 O(1)出栈 pop ---- 时间复杂度 O(1) let stack [];// 入栈 stack.push("a"); stack.push("b");console.log(stack);// 出栈 -- 先进后出 -- b 出栈 stack.pop();console.log(stack);队…

安装golang

官网:All releases - The Go Programming Language (google.cn) 下载对应的版本安装即可

【Python】 如何使用Pandas DataFrame的‘in‘和‘not in‘进行筛选,就像在SQL中一样

基本原理 在Python的Pandas库中,DataFrame是一个强大的数据结构,用于处理表格数据。Pandas提供了多种方法来筛选DataFrame中的数据,其中使用in和not in是模仿SQL查询中IN和NOT IN操作的一种方式。在SQL中,IN用于筛选出在某个列表…

线性代数|机器学习-P9向量和矩阵范数

文章目录 1. 向量范数2. 对称矩阵S的v范数3. 最小二乘法4. 矩阵范数 1. 向量范数 范数存在的意义是为了实现比较距离,比如,在一维实数集合中,我们随便取两个点4和9,我们知道9比4大,但是到了二维实数空间中&#xff0c…

C# Maui 报错:程序“[15748] MauiApp1.exe”已退出,返回值为 2147942405 (0x80070005)

“MauiApp1.exe”(CoreCLR: DefaultDomain): 已加载“C:\Program Files\dotnet\shared\ Microsoft.NETCore.App\8.0.6\System.Private.CoreLib.dll”。 “MauiApp1.exe”(CoreCLR: clrhost): 已加载“E:\cDemo\MauiApp1\MauiApp1\bin\Debug\net8.0-windows10.0.19041.0\win10-x…

碳酸钠去除铁离子杂志树脂T-IRR

"高级"铁去除离子交换树脂介质 Tulsion T- IRR 是一款高级的离子交换树脂介质。设计了更好的多空性架构和卓越的催化性以去除溶解在地下水中的铁离子。 Tulsion T- IRR 具有氧化性能,可以把铁转化为3价铁离子。形成的不溶铁离子会被床体有效的拦截过滤&a…

LCD屏的价格和显示区的尺寸有关

LCD屏的价格和显示区的尺寸有关,和外尺寸无关。 下面通过12864点阵屏,对不同尺寸的屏,进行价格比较,就可以发现:LCD屏的价格和显示区的尺寸有关; 同点阵的屏,显示区域太小,显示12*1…

Python基础速成

文件操作 文件读取 with open语法 文件写入 注意事项 文件追加 异常、模块与包 捕获异常 捕获方法 捕获传递 模块的导入与自定义 定义 导入方式 自定义 测试模块 注意事项 python包 定义 操作 第三方包 定义 pip指令安装包

FlashSequence: SORA视频生成长序列任务训练解决方案

作者:黄奕桐、沈雯婷、艾宝乐、王昂、九丰 摘要 我们提出了长序列训练方案 FlashSequence 并集成在 PAI-TorchAcc (阿里云机器学习平台开发的Pytorch上的大模型训练加速框架)中,该方案能够支持SORA类超长序列模型的高效训练。在…