想要产品质量高,嵌入式接口测试这关怎么过?

接口测试是软件测试中的一项重要工作,它涉及到系统与系统之间的交互点。接口可以是外部接口,也可以是内部接口,包括上层服务与下层服务接口以及同级接口。在接口测试中,我们需要确保接口能够按照预期的方式进行通信和交互,并且能够正确处理输入和输出数据。

01

什么是接口测试?

所谓接口,是指同一个系统中模块与模块间的数据传递接口、前后端交互、跨系统跨平台跨数据库的对接。而接口测试,则是通过接口的不同情况下的输入、去对比输出,看看是否满足接口规范所规定的功能、安全以及性能方面的要求。

为什么要做接口测试?

1)相比系统测试,更早介入测试,提高效率;

2)可以发现前段测试不了的问题,提高版本质量;

3)接口标准化了,更容易实现自动化和持续集成,降低测试成本。

图片

02

接口测试的分类

1.按接口类型分

➤API接口测试:对被测软件提供的API接口函数进行测试;

➤协议接口测试:对被测软件接口数据和控制进行测试;

   ①物理层协议测试:信号

   ②链路、传输层协议测试:数据

   ③会话、应用层协议测试:文本

➤数据库接口测试:SQL语句的测试、存储过程的测试;

➤硬件接口测试:对软件与硬件的数据和控制进行测试。

2.按测试的种类分

➤接口功能测试:接口的基本能力的测试,接口数据/接口业务逻辑测试;

➤接口性能测试:响应时间、吞吐量、并发数等的测试;

➤接口安全性测试:关键操作的安全性、敏感信息加密、接口防恶意攻击等方面的测试;

➤接口稳定性测试:长时间运行接口是否能够稳定可靠的提供服务。

图片

03

嵌入式软件接口测试

1.什么是嵌入式系统

嵌入式即嵌入式系统,IEEE(美国电气和电子工程师协会)对其定义是用于控制、监视或者辅助操作机器和设备的装置。

嵌入式系统是嵌入式计算机系统+执行装置(外围装置),软件和硬件的综合体。由嵌入式微处理器、存储器通用设备接口(A/D、D/A、RS232、Ethernet、USB等)和软件(系统软件+应用软件)组成。

2.嵌入式软件测试与非嵌入式软件测试的比较

1)嵌入式软件测试一般接口、协议种类多,不通用、不常见;

2)与底层和硬件联系紧密,面向信号和数据(十六进制),理解比较困难;

3)很大比例是安全关键软件,关系到生命安全和国家安全,要求非常严格;

4)一般来说上比非嵌入式软件测试更困难一些。

图片

3.嵌入式软件接口测试

1)对嵌入式软件测试包括静态和动态,包括基于结构的白盒测试和基于需求规约的黑盒测试;

2)嵌入式软件接口测试:对嵌入式软件提供的接口按照接口需求进行测试和验证;

    ➤测试嵌入式软件接口信息数据与控制逻辑的正确性;

    ➤测试正常情况和异常情况(包括数据和逻辑);

    ➤测试接口的功能性、性能、安全性和稳定性;

3)接口测试之于嵌入式软件测试,有的时候是测试类型和测试内容,有的是时候是嵌入式软件测试的一种必须的手段,或者说唯一手段。

4.嵌入式接口测试分类

1)API接口测试:对被测软件提供的API接口函数进行测试;

2)总线/网络接口测试:A/D、D/A、DI/DO、RS232/422/485、CAN、ARINC429、1553B、A/D、Rapid IO、……

3)数据库接口测试:SQL语句的测试、存储过程的测试;

4)硬件接口测试:对软件与硬件的数据和控制进行测试;

图片

04

嵌入式接口测试方法

1.接口测试流程:

1)测试需求分析:分析理解协议,根据接口需求文档设计测试项;

2)测试设计:设计测试用例和测试数据;

3)测试环境搭建:构建测试环境,与被测件进行数据通信;

4)测试执行:使用测试工具构造接口数据包并发送、接收接口数据包并解析;

5)测试结果分析:分析测试数据,得出测试结论,生成报告。

难点:环境的搭建,测试的驱动执行。

2.接口测试策略:

1)区分内部接口与外部接口

➤外部接口对外提供服务,重点测试,根据需求和业务要求开展接口功能、接口性能和接口安全性测试;

➤内部接口,根据需要进行测试,测试接口的功能和性能。

2)区分接口类型:API接口、协议接口、数据库接口、硬件接口、……

➤API接口:输入/输出参数,状态转换;

➤协议接口:物理层、链路层/网络层/传输层、会话层/表示层/应用层;

➤数据库接口:SQL语句、存储过程、性能/安全性;

➤硬件接口:功能测试、边界测试、安全性测试。

图片

05

嵌入式软件测试工具ETest

俗话说,工欲善其事必先利其器,对于嵌入式接口测试来说,有一个趁手好用的嵌入式接口测试工具就显得尤为关键。凯云科技铸剑十年,厚积薄发,在国家重大战略背景下,推出了具有完全自主知识产权的测试系统集成开发环境ETest。

1.ETest是什么?

ETest是一款软件开发环境,支持图形化和代码两种开发方式,主要应用于嵌入式系统测试工装(测试设备)研发与部署。该产品是由凯云科技率先在行业内推出的国产自主可控半实物仿真测试开发平台,有效打破了国内该领域长期由进口软件LabVIEW、dSPACE等产品垄断的格局。

图片

2、ETest有哪些核心功能?

➤提供涵盖测试资源管理、测试环境描述、接口协议定义、测试用例设计、测试执行监控、测试任务管理等功能为一体的测试软件集成开发环境;

➤提供各类控制总线和仪器接口API,包括:RS232/422/485、1553B、CAN、TCP、UDP、AD、DA、DI、DO、ARINC429等,可灵活扩展;

➤支持对待测系统及其外围环境、接口情况等进行可视化仿真建模设计;

➤提供接口协议描述语言(DPD语言)及编辑编译环境;

➤可通过表格、仪表、曲线图、状态灯等虚拟仪表实时监测接口数据;

➤可按二进制、十进制、十六进制监测输入与输出的原始报文并查询过滤;

➤提供灵活快捷的测试用例脚本编辑与开发环境;

➤测试脚本支持时序测试和多任务实时测试;

➤具有可自动生成满足不同组合覆盖要求测试数据的功能;

➤实时记录加时间戳的测试数据,并支持测试数据的管理与统计分析;

➤提供Simulink、同元MWorks等集成接口,可实现仿真模型的开发和运行,支持仿真模型实时代码的生成和运行;

➤提供实时内核模块,支持高可靠性强实时测试,响应时间<=1ms,同步传送和抖动时间小于10us;

➤平台上位机支持Linux、Windows、麒麟及统信等操作系统;下位机支持VxWorks、RTLinux及国产操作系统;

➤支持打包独立可执行应用程序、支持分布式部署以及单机使用。

图片

▲ ETest系统架构图

3、ETest执行流程

1)测试环境搭建

可视化配置测试环境和通信协议

图片

图片

2)测试设计(测试脚本编辑)

多种方式的程序设计

图片

支持接入多种第三方程序

图片

3)测试设计(可视化界面设计)

具有可视化控件的选择面板,通过拖拽绑定,简单易用。

图片

4)测试执行

测试环境一次配置,多次运行;标准IO控制中心可综合显示各类信息;监视窗体与实时数据的报警条件设置与报警提示;测试结果的收集与分析。

图片

5)测试数据分析与记录

多种格式的数据记录;历史测试数据的管理;测试场景的自动回放;测试报告模板的编辑与管理;测试报告的自动生成。

图片

ETest已广泛应用于航空航天、兵器船舶、通信电子等国防军工以及轨道交通、工业控制、汽车电子等安全关键领域。ETest具有应用范围广、实时性强、开发效率高、使用简单、易于扩展、国产自主等特点,支持各种国产CPU+国产操作系统的部署方案,同时兼容Windows、linux、Mac等多种操作系统。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值