资料介绍
随着制造行业的再一次崛起,嵌入式软件目前在软件行业中越来越多,2004年软件行业最火爆的三个项目是:嵌入式开发,软件培训以及软件外包。
由于嵌入式软件与其他产品息息相关,这给嵌入式软件的测试工作带来了极大的困难,软件的测试工作不能够等程序烧到或者固化到芯片中才开始进行测试,这就太晚了,本文结合自己的一些经验提出自己的看法,希望大家一起讨论。
搞好开发前的原型设计
原型开发目前在开放流程中受到了更多的重视,同样嵌入式软件也是非常需要的。比如说一个录音机版面的设计,可以定义好版面上面的按键以及每个按键的功能。然后画出状态转化图,写清楚每个按键何时可以触发,触发后由哪个状态转入别的其他状态。原型设计好了,组织专家,工程师进行评审,尽可能多的找出原型中不合理需要改进的地方;改进以后,有必要可以进行再一次的评审工作。每一次评审工作需要记录评审建议是否需要解决?如何解决以及实际解决情况。
进行设计和开发工作
设计和开发工作需要设立里程碑。每个里程碑结束前都需要进行评审工作。由于嵌入式软件的运行环境不同,受到很大的限制,所以在进行开发之前需要进行编程规范工作,编码的时候需要严格按照编码要求进行工作,每一个条款都需要认真执行和审查。现在业界提供许多关于嵌入式软件开发的标准,大家可以通过网站搜索,最好能够购买业界一些比较著名的标准。
目前市场上也提供许多关于代码检验的工具。为什么一直提出代码编码规范?这是因为嵌入式软件的质量与代码规范是十分重要的。举个例子,著名的阿里亚火箭失事,专家进行详细的调查工作,最后发现问题出在代码上。代码是符合标准C语言的,但是在运行过程中由于程序员将一个长整形变量赋给了一个短整形变量,造成内存溢出,这是导致火箭失事的关键所在。
(
int8 a;
int32 b;
…
a=b;
)
代码测试
当程序开发完毕,需要进行测试工作,但是在程序烧入或固化芯片之前如何进行测试呢?这里介绍一种方法:比如程序时使用C语言进行开发的,请将所有的操作都封入在函数中,函数的定义都在相应的头文件中定义(.h),然后设计测试用例,书写测试代码,测试代码包含相应头文件,可以对函数进行检测。测试案例往往分为两类:一种是功能测试,主要测试函数的功能;另外一种是错误参数测试,主要检查程序对进行错误参数进行检验。
功能测试
这种测试的运行往往需要通过仿真器辅助完成,比如类似录音机软件程序,分别测试播放,加大(减小)音量,停止,暂停(取消暂停),快速前进,快速后退,录音对应的功能是否能够正常运行。
错误测试
主要测试函数在调用参数无效的时候,系统是否会按照规定返回正确的错误代码。比如
function test(int Tid)
测试的时候给出一个错误的序列号(Tid),看程序是否返回正确的错误代码。
对于函数function test1(int t)需要进行特出的处理
t 定义为1-100
我们可以按照边界值法和等价分类法进行测试
上边界:-1,0,1
下边界:99,100,101
中边界:50
所以测试用例集合为(-1,0,1,50,99,100,101),其中-1,101为错误测试用例,其他为正确测试用例
功能组合测试
在进行完功能测试后,我们可以进行功能组和测试,还是拿录音机程序做个例子。我们可以定义将音量增加到10,快速前进,检查音量,看是否还是为10;播放,暂停,试图调整音量,检查调整音量的功能是否可以被成功执行。
烧入固化测试
当以上测试都通过后可以将程序烧入芯片或者固化,进行最后在实际环境中进行测试工作。
最后需要指出的是,虽然目前市场上嵌入式测试工具比较多,最有名气的就是CodeTest,但是价格都非常昂贵,一般都需要上千美金,中小型企业可以根据自己的情况多想办法,如果大家有啥好的别的方法,可以告诉我(xianggu@yahoo.com),大家一起讨论。希望中国的嵌入式产品质量越来越高
由于嵌入式软件与其他产品息息相关,这给嵌入式软件的测试工作带来了极大的困难,软件的测试工作不能够等程序烧到或者固化到芯片中才开始进行测试,这就太晚了,本文结合自己的一些经验提出自己的看法,希望大家一起讨论。
搞好开发前的原型设计
原型开发目前在开放流程中受到了更多的重视,同样嵌入式软件也是非常需要的。比如说一个录音机版面的设计,可以定义好版面上面的按键以及每个按键的功能。然后画出状态转化图,写清楚每个按键何时可以触发,触发后由哪个状态转入别的其他状态。原型设计好了,组织专家,工程师进行评审,尽可能多的找出原型中不合理需要改进的地方;改进以后,有必要可以进行再一次的评审工作。每一次评审工作需要记录评审建议是否需要解决?如何解决以及实际解决情况。
进行设计和开发工作
设计和开发工作需要设立里程碑。每个里程碑结束前都需要进行评审工作。由于嵌入式软件的运行环境不同,受到很大的限制,所以在进行开发之前需要进行编程规范工作,编码的时候需要严格按照编码要求进行工作,每一个条款都需要认真执行和审查。现在业界提供许多关于嵌入式软件开发的标准,大家可以通过网站搜索,最好能够购买业界一些比较著名的标准。
目前市场上也提供许多关于代码检验的工具。为什么一直提出代码编码规范?这是因为嵌入式软件的质量与代码规范是十分重要的。举个例子,著名的阿里亚火箭失事,专家进行详细的调查工作,最后发现问题出在代码上。代码是符合标准C语言的,但是在运行过程中由于程序员将一个长整形变量赋给了一个短整形变量,造成内存溢出,这是导致火箭失事的关键所在。
(
int8 a;
int32 b;
…
a=b;
)
代码测试
当程序开发完毕,需要进行测试工作,但是在程序烧入或固化芯片之前如何进行测试呢?这里介绍一种方法:比如程序时使用C语言进行开发的,请将所有的操作都封入在函数中,函数的定义都在相应的头文件中定义(.h),然后设计测试用例,书写测试代码,测试代码包含相应头文件,可以对函数进行检测。测试案例往往分为两类:一种是功能测试,主要测试函数的功能;另外一种是错误参数测试,主要检查程序对进行错误参数进行检验。
功能测试
这种测试的运行往往需要通过仿真器辅助完成,比如类似录音机软件程序,分别测试播放,加大(减小)音量,停止,暂停(取消暂停),快速前进,快速后退,录音对应的功能是否能够正常运行。
错误测试
主要测试函数在调用参数无效的时候,系统是否会按照规定返回正确的错误代码。比如
function test(int Tid)
测试的时候给出一个错误的序列号(Tid),看程序是否返回正确的错误代码。
对于函数function test1(int t)需要进行特出的处理
t 定义为1-100
我们可以按照边界值法和等价分类法进行测试
上边界:-1,0,1
下边界:99,100,101
中边界:50
所以测试用例集合为(-1,0,1,50,99,100,101),其中-1,101为错误测试用例,其他为正确测试用例
功能组合测试
在进行完功能测试后,我们可以进行功能组和测试,还是拿录音机程序做个例子。我们可以定义将音量增加到10,快速前进,检查音量,看是否还是为10;播放,暂停,试图调整音量,检查调整音量的功能是否可以被成功执行。
烧入固化测试
当以上测试都通过后可以将程序烧入芯片或者固化,进行最后在实际环境中进行测试工作。
最后需要指出的是,虽然目前市场上嵌入式测试工具比较多,最有名气的就是CodeTest,但是价格都非常昂贵,一般都需要上千美金,中小型企业可以根据自己的情况多想办法,如果大家有啥好的别的方法,可以告诉我(xianggu@yahoo.com),大家一起讨论。希望中国的嵌入式产品质量越来越高
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- 嵌入式软件之c语言编码规范 28次下载
- 【测试】嵌入式软件测试VS一般软件测试
- 嵌入式软件测试
- 嵌入式软件接口怎么测试,嵌入式系统接口测试策略.doc
- 嵌入式软件测试研究意义,嵌入式软件测试的研究
- 嵌入式软件怎样测试,如何对嵌入式软件进行可靠性测试
- 嵌入式软件测试参考书籍
- 嵌入式测试
- 基于Python的实时嵌入式软件测试脚本总结
- 关于嵌入式实时系统软件测试的设计方案的探究 0次下载
- 嵌入式Linux软件测试框架的研究 29次下载
- 基于CodeTEST的嵌入式软件测试技术
- 嵌入式软件的动态测试
- 嵌入式实时系统软件测试实践
- 基于模块化设计的嵌入式软件测试方法
- 嵌入式软件开发和软件开发的区别 1738次阅读
- 基于功能安全的汽车嵌入式软件单元验证技术研究 847次阅读
- 聊聊嵌入式软件分层 525次阅读
- 嵌入式软件的设计模式(上) 1119次阅读
- 嵌入式系统的发展趋势和测试方法详细说明 2813次阅读
- 基于CPLD实现嵌入式软件bootrom自动备份及切换功能的方法介绍 1177次阅读
- 基于嵌入式软件的JNI技术应用解析 1020次阅读
- 汽车嵌入式系统的设计过程、方法和测试工具框架浅析 1819次阅读
- 优化嵌入式软件时可以遵循几个通用技巧盘点 628次阅读
- 把软件项目管理方法引入嵌入式系统的开发之中的设计浅析 2034次阅读
- 业界广为流传的嵌入式软件测试十大秘诀 2630次阅读
- 嵌入式软件开发编程规范介绍 4206次阅读
- 嵌入式软件开发的这些编程规范你了解吗 3809次阅读
- 面向智能电表嵌入式应用的测试方法 1258次阅读
- 关于嵌入式软件系统测试策略和方案设计详解 9081次阅读
下载排行
本周
- 1TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 2开关电源基础知识
- 5.73 MB | 6次下载 | 免费
- 3100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 4嵌入式linux-聊天程序设计
- 0.60 MB | 3次下载 | 免费
- 5基于FPGA的光纤通信系统的设计与实现
- 0.61 MB | 2次下载 | 免费
- 6基于FPGA的C8051F单片机开发板设计
- 0.70 MB | 2次下载 | 免费
- 751单片机窗帘控制器仿真程序
- 1.93 MB | 2次下载 | 免费
- 8基于51单片机的RGB调色灯程序仿真
- 0.86 MB | 2次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33564次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21548次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6653次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537796次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191185次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183278次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多