第二章 软件测试策略与过程(1).ppt

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * A Free sample background from Slide * 第2章 软件测试策略与过程 2.1 软件测试的复杂性分析 2.2 软件测试方法与策略 2.3 单元测试 2.4 集成测试 2.5 确认测试 2.6 系统测试 2.7 验收测试 2.8 测试后的调试 2.9 面向对象的软件测试 本章教学目标 理解软件测试的复杂性 理解软件测试的方法与策略 明确单元测试的主要任务和过程 明确集成测试的方法和确认测试的准则 明确系统测试的八个领域测试要点 明确验收测试的主要内容和相关配置 2.1 软件测试的复杂性分析 1、无法对程序进行完全测试 (1)测试所需要的输入量太大 (2)测试的输出结果太多 (3)软件实现的途径太多 (4)软件规格说明没有一个客观标准 2、测试无法显示潜在的软件缺陷和故障 ——通过软件测试只能报告软件已被发现的缺陷和故障,无法报告隐藏的软件故障。 3、存在的故障现象与发现的故障数量成正比 ——结论:应当对故障集中的程序段进行重点测试 软件测试的复杂性分析(续) 4、不能修复所有的软件故障 ——原因: 没有足够的时间进行修复; 修复的风险较大; 不值得修复; 可不算做故障的一些缺陷; “杀虫剂现象”。 结论:关键是要进行正确的判断、合理的取舍,根据风险分析决定哪些故障必须修复,哪些故障可以不修复。 软件测试的复杂性分析(续) 5、软件测试的代价 ——工作原则:针对软件风险做出恰当选择,去粗存精,找到最佳的测试量,既能达到测试的目的,又能较为经济。 2.2 软件测试方法与策略 2.2.1 静态测试与动态测试 2.2.2 黑盒测试与白盒测试 2.2.3 软件测试过程 Return 软件测试策略 什么是软件测试策略? ——是为软件工程过程定义的一个软件测试的模板,也就是把特定的测试用例方法放置进去的一系列步骤。 软件测试策略的特征: (1)测试从模块层开始,然后扩大延伸到整个基于计算机的系统集合中。 (2)不同的测试技术适用于不同的时间点。 (3)测试是由软件的开发人员和(对于大型系统而言)独立的测试组来管理的。 (4)测试和调试是不同的活动,但是调试必须能够适应任何的测试策略。 软件测试充分性准则 P40 对任何软件都存在有限的充分测试集合。 如果一个软件系统在一个测试数据集合上的测试是充分的,那么再多测试一些数据也应该是充分的。这一特性称为单调性。 即使对软件所有成分都进行了充分的测试,也并不表明整个软件的测试已经充分了。这一特性称为非复合性。 即使对软件系统整体的测试是充分的,也并不意味软件系统中各个成分都已经充分地得到了测试。这个特性称为非分解性。 软件测试的充分性应该与软件的需求和软件的实现都相关。 软件越复杂,需要的测试数据就越多。这一特性称为复杂性。 测试得越多,进一步测试所能得到的充分性增长就越少。这一特性称为回报递减率。 请同学们自己慢慢体会以下定义: 2.2.1 静态测试与动态测试 根据程序是否运行,测试分为静态测试与动态测试。 1.静态测试:指不实际运行被测软件,只是静态地检查程序代码、界面或文档中可能存在的错误的过程,主要是对软件的编程格式、结构等方面进行评估。 包括三个方面: 对于代码测试:主要测试代码是否符合相应的标准和规范。 对于界面测试:主要测试软件的实际界面与需求中的说明是否符合。 对于文档测试:主要测试用户手册和需求说明是否真正符合用户的实际需求。 案例1:C语言程序的静态分析和动态测试 #include stdio.h max(float x,float y) float z; z=xy?x:y return(z);} main() {float a,b; int c; scanf(“%f,%f”,a,b); c=max(a,b); printf(“Max is %d\n”,c);} 案例1修改后,如下 #include stdio.h max(float x,float y) //返回两个单精度数中的大数 { float z; z=xy?x:y return(z); } main() {float a,b,c; scanf(“%f,%f”,a,b); c=max(a,b); printf(“Max is %d\n”,c);} 可参考C语言编码规范 2.

文档评论(0)

junjun37473 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档