嵌入式系统软件测试技术期末总结报告
期末总结报告
课程名称: 嵌入式系统软件测试技术
学 院: 信息工程与自动化
专 业: 计算机科学与技术
年 级: 2010级
学生姓名:
学生学号: 201010405108
指导教师: 江虹
日 期: 2013年1月2日
一、嵌入式软件测试的特点及步骤
1) 嵌入式软件测试是在特定的硬件环境下才能运行的软件。因此,嵌入式软件测试最重要的目的就是保证嵌入式软件能在此特定的环境下更可靠地运行。
2) 嵌入式软件测试除了要保证嵌入式软件在特定环境中运行的高可靠性,还要保证嵌入式软件的实时性。比如在工业控制中,如果某些特定环境下的嵌入式软件不具备实时响应的能力,就可能造成巨大的损失。
3) 嵌入式软件产品为了满足高可靠性的要求,不允许内存在运行时有泄漏等情况发生,因此嵌入式软件测试除了对软件进行性能测试、GUI测试、覆盖分析测试是同普通软件测试一样都不可或缺之外,还需要对内存进行测试。
4) 嵌入式产品不同于一般的软件产品,在嵌入式软件和硬件集成测试完成之后,并不代表测试全部完成,在第一件嵌入式产品生产出来之后,还需要对其进行产品测试。嵌入式软件测试的最终目的是使嵌入式产品能够在满足所有功能的同时安全可靠地运行。
1.嵌入式软件测试的总体步骤如下:
首先进行操作系统移植并编写系统底层驱动,然后进行系统平台测试,其中包括硬件电路测试、操作系统及底层驱动程序的测试等。如果测试不通过,需要重新进行操作系统移植和编写系统底层驱动;如果此测试通过,可以进行以下的开发——用模块化的方法编写应用代码,随后在对软件模块进行测试。如果测试没有通过,则要对此代码模块进行修改,然后对软件模块进行测试;如果所有的模块都通过测试,需要进行集成测试,再利用关联矩阵确定需要测试模块,并重新回到软件模块测试;如果集成测试通过,则要进行系统测试。如果系统测试未通过,需要修改程序代码,如果问题出现在操作系统的移植上,需要重新进行系统的移植;吐过问题只是出现在软件模块上,只需修改软件模块就行了。如果系统测试通过,就可以退出测试。在第一件产品出来之后,需要对产品进行测试,如果测试通过,则表示嵌入式产品的所有步骤已经完成。
二、嵌入式软件测试与普通软件测试的区别
从嵌入式软件同普通软件在开发过程中的区别中可以得到嵌入式软件同普通软件在测试方面的区别:
1) 因为嵌入式软件开发和运行的环境是分开的,因此,各个阶段测试的平
台是不一样的。
单元测试阶段:所有单元级测试都可以在宿主机环境下进行,只有个别情况下会特别指定单元测试要直接在目标机环境下进行。应该最大化在宿主机环境进行软件测试的比例,通过尽可能小的目标单元访问其指定单元界面,提高单元测试有效性和针对性。
集成测试阶段:软件集成也可在宿主机环境下完成,在宿主机平台上模拟目标环境运行,在此级别上的确认测试可确定一些与环境有关的的问题,比如在内存定位和分配方面的一些错误。
系统测试和确认测试阶段:所有的系统测试和确认测试必须在目标机环境下执行。当然在宿主机上开发和执行系统测试,然后移植到目的及环境重复执行时很方便的。对目标系统的依赖性会妨碍将宿主机上的系统测试移植到目标系统上,况且只有少数开发者会卷入系统测试,所以有时放弃在宿主机上执行系统测试可能更方便。
2)由于开发平台的复杂多样,使得嵌入式软件的测试从测试环境的建立到测试用例的编写也是复杂多样的。与不同的开发平台对应的嵌入式软件氏肯定不同的;与相同的开发平台对应的嵌入式软件也可能是不同的。嵌入式软件测试在一定程度上并不是只是对嵌入式软件的测试,很多情况下是对嵌入式软件在开发平台中同硬件的兼容性的测试。因此,对于任何一套嵌入式软件系统,都需要有其自己的测试、创建其自己的测试环境。编写其自己的测试用例。
3)由于嵌入式软件在开发时受目标机的硬件资源的限制,因此嵌入式软件在测试时应党充分考虑到对软件的性能进行测试,并且充分利用性能测试的数据来进一步优化软件。另一方面,嵌入式软件在测试时应当充分考虑系统实时响应的问题,很多嵌入式系统会要求系统的响应时间英在多少毫秒之内。在测试有严格响应时间要求得嵌入式系统时需要做负载测试。
三、有人认为黑盒测试是基于无知的测试,因为测试人员自始自终都不了解软件的内部代码,根据你的认识体会对此观点进行评价
答: 黑盒测试也称功能测试,黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。但是黑盒测试是发现问题的最直接方式,简单方便不需要了解内部代码的执行,黑盒测试不是无知测试,是必不可少的,他需要你尽可能多的设计测试用例执行,能够很好的直观的测试出软件存在缺陷,穷举测试,而这是需要有很好的测试经验的
四、某应用程序完成如下功能:输入某年某月某日(1900年~2050年),判断这一天是这一年的第几天。
程序C源代码如下:
main()
{
int day,month,year,sum,leap;
printf("\nplease input year,month,day\n");
scanf("%d,%d,%d",&year,&month,&day);
switch(month)/*先计算某月以前月份的总天数*/
{
case 1:sum=0;break;
case 2:sum=31;break;
case 3:sum=59;break;
case 4:sum=90;break;
case 5:sum=120;break;
case 6:sum=151;break;
case 7:sum=181;break;
case 8:sum=212;break;
case 9:sum=243;break;
case 10:sum=273;break;
case 11:sum=304;break;
case 12:sum=334;break;
default:printf("data error");break;
}
sum=sum+day; /*再加上某天的天数*/
printf("It is the %dth day.",sum);
}
答:满足路径覆盖指标的测试案例至少13个
3)该程序是否有缺陷?这些缺陷可以用什么测试案例检测出来? 答:有缺陷,没有考虑闰年问题。可以用以下测试案例测试:
year=2000,month=3,day=1
预期输出:61 实际输出:60
4)修改缺陷部分,给出代码。
if(year%400==0||(year%4==0&&year%100!=0))
/*判断是不是闰年*/
leap=1;
else
leap=0;
if(leap==1&&month>2)
/*如果是闰年且月份大于2,总天数应该加一天*/ sum++;
…… 此处隐藏:1208字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [资格考试]石油钻采专业设备项目可行性研究报告编
- [资格考试]2012-2013学年度第二学期麻风病防治知
- [资格考试]道路勘测设计 绪论
- [资格考试]控烟戒烟知识培训资料
- [资格考试]建设工程安全生产管理(三类人员安全员
- [资格考试]photoshop制作茶叶包装盒步骤平面效果
- [资格考试]授课进度计划表封面(09-10下施工)
- [资格考试]麦肯锡卓越工作方法读后感
- [资格考试]2007年广西区农村信用社招聘考试试题
- [资格考试]软件实施工程师笔试题
- [资格考试]2014年初三数学复习专练第一章 数与式(
- [资格考试]中国糯玉米汁饮料市场发展概况及投资战
- [资格考试]塑钢门窗安装((专项方案)15)
- [资格考试]初中数学答题卡模板2
- [资格考试]2015-2020年中国效率手册行业市场调查
- [资格考试]华北电力大学学习实践活动领导小组办公
- [资格考试]溃疡性结肠炎研究的新进展
- [资格考试]人教版高中语文1—5册(必修)背诵篇目名
- [资格考试]ISO9001-2018质量管理体系最新版标准
- [资格考试]论文之希尔顿酒店集团进入中国的战略研
- 全国中小学生转学申请表
- 《奇迹暖暖》17-支2文学少女小满(9)公
- 2019-2020学年八年级地理下册 第六章
- 2005年高考试题——英语(天津卷)
- 无纺布耐磨测试方法及标准
- 建筑工程施工劳动力安排计划
- (目录)中国中央空调行业市场深度调研分
- 中国期货价格期限结构模型实证分析
- AutoCAD 2016基础教程第2章 AutoCAD基
- 2014-2015学年西城初三期末数学试题及
- 机械加工工艺基础(完整版)
- 归因理论在管理中的应用[1]0
- 突破瓶颈 实现医院可持续发展
- 2014年南京师范大学商学院决策学招生目
- 现浇箱梁支架预压报告
- Excel_2010函数图表入门与实战
- 人教版新课标初中数学 13.1 轴对称 (
- Visual Basic 6.0程序设计教程电子教案
- 2010北京助理工程师考试复习《建筑施工
- 国外5大医疗互联网模式分析




