欢迎来到天天文库
浏览记录
ID:32017934
大小:663.50 KB
页数:51页
时间:2019-01-30
《嵌入式软件测试》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、嵌入式软件测试技术与策略AnIntroductiontoEmbeddedSoftwareTesting2021年7月13日2内容提要关于软件测试软件测试技术嵌入式软件测试方法嵌入式软件测试策略嵌入式软件测试解决方案2021年7月13日3对软件测试的几种认识测试与调试类似,是对调试的一种补充测试是为了证明软件正确测试是为了发现软件错误测试是检验软件是否满足规定的需求测试是为了减小软件不工作的风险测试是不需要更多的测试工作即可以产生低风险软件的一种认识上的训练关于软件测试(1)2021年7月13日4关于软件
2、测试(2)什么是软件测试专家说法:测试是为了发现错误而执行程序的过程软件测试是对软件建立信心的过程……IEEE1983:使用人工或自动手段来运行某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清结果与实际结果之间的差别总结软件测试要解决的问题是:软件的行为是否符合“规定的”要求,它有两个方面的含义:Doesitdoeverythingitisspecifiedtodo?Doesitdoanythingitisnotspecifiedtodo?2021年7月13日5软件测试的重要性海湾战争期间,由
3、于跟踪软件在运行100小时后出现0.36秒的舍入误差,导致未能成功拦截一枚飞毛腿导弹,致使28名联军士兵丧生。1963年美国宇航局事例(Fortran程序):DO5I=1,3误写成DO5I=1.3;一点之差导致火箭发射失败1996年6月4日,阿利亚娜5型火箭首次发射失败关于软件测试(3)doubled_bh;shorts_bh;sense_horizontal_velocity(&d_bh);s_bh=d_bh;//OPERANDERROR2021年7月13日6软件测试的重要性当前的软件开发方法——免疫
4、力低软件是一种特殊的产品开发方法学因素人不能避免犯错误软件开发工具不完备维护费用昂贵软件测试——保证软件产品质量的重要手段软件测试能最大限度的发现软件中的错误,减少软件中残留的错误,提高软件产品的可靠性通过软件测试可以验证软件功能、性能、可用性、可移植性、约束、限制等指标满足规定的需求软件可靠性测试可得到软件可靠性指标软件测试为软件质量的定量评定提供依据关于软件测试(4)2021年7月13日7软件测试的重要性一汽大众召回6速自动变速箱(DSG)汽车2760辆油液温度传感器上的插头处导线为卡紧,传感器可能
5、发出错误温度信息,严重时会导致控制单元启动变速箱保护模式,暂时中断动力输出——需要更新变速箱控制单元程序宝马召回气门电控马达问题汽车5470辆因软件错误,发动机气缸的气门电控马达可能出现不同步现象,将导致发动机工作不稳定,有时会熄火——对发动机管理系统控制单元重新编成现代召回悬架自动稳定控制缺陷问题车辆2017辆在部分装备了3.3L发动机和电子稳定控制系统(ESC)车辆上,ESC可能设置得对过渡转向过于敏感,会对外侧前轮施加不必要的制动力,可能导致碰撞事故——对ESC的液压电控单元重新编程沃尔沃发动机冷
6、却风扇控制模块版本错误关于软件测试(4)2021年7月13日8关于软件测试(5)软件测试的发展历程软件测试并不是一开始就有的轻视——重视简单——复杂被迫——主动如何开展软件测试测试是一个非常复杂的过程,不仅要掌握相应的技术和方法,而且还要懂得在什么时候、什么情况下使用什么方法,这就是软件测试的策略问题。另外,软件测试的实施需要有效的管理,仅靠简单地组建测试队伍或购买一两件测试工具是不够的。因此,技术、策略和管理构成了软件测试工程的三大要素。2021年7月13日9测试与调试的关系测试是检查软件发现问题,调
7、试是分析软件解决问题测试贯穿于整个软件生存期,调试主要是在软件开发过程中调试具有随意性、不明确性,而测试是明确的、可重复的测试是全方位的,而调试是代码级的测试与调试不能相互替代,但相互支持,相辅相成关于软件测试(6)2021年7月13日10软件测试的基本原则Good-enough原则:权衡投入/产出比,既不要不充分,也不要过分。Pareto法则:在分析、设计、试验、复审等阶段能够发现和避免80%的bug而系统的软件测试能够找出其余bug中的80%。应尽早地开展软件测试。问题发现得越早,解决问题的代价就越
8、小。严格执行测试计划,排除测试的随意性测试是需要维护的妥善保存测试计划、测试用例、出错统计和测试分析报告,为维护提供方便完全彻底的测试是不可能的。关于软件测试(7)2021年7月13日1118timesStatisticalPaths=1018假设每次测试用时1ns,全年不间断地测试:T=31.7Years关于软件测试(8)T=3600x24x365101810-9x2021年7月13日12什么是“错误”我们通常用“错误”这一术语来描述测试
此文档下载收益归作者所有