`
tomhibolu
  • 浏览: 1383246 次
文章分类
社区版块
存档分类
最新评论

章三 软件测试的本质

 
阅读更多

章三 软件测试的本质


一、完全测试程序是不可能的。
原因:
1)输入量太大;
2)输出结果太多;
3)软件执行路径太多;
4)软件说明书是主观的。可以
软件测试是有风险的行为。软件测试员要学会的一个关键思想是,如何把数量巨大的可能测试减少到控制的范围,以及如何针对风险做出明智的抉择,哪些测试重要,哪些不重要。
目标是找到最优的测试量,使测试不多不少。
二、并非所有软件缺陷都要修复
原因:
1)没有足够的时间;
2)不算真正的软件缺陷;
3)修复的风险太大;
4)不值得修复。
决策过程通常由软件测试员、项目经理、程序员共同参与。
三、软件测试的术语和定义
1)精确(precision)和准确(accuracy);
软件测试要精度还是准度很大程度上取决于产品是什么,最终取决于开发小组的目标。
2)确认(verification)和验证(validation);
确认是保证软件符合产品说明书的过程。
验证是保证软件满足用户要求的过程。
3)质量(quality)和可靠性;
软件的质量主要指它能够满足客户要求。
可靠性仅仅是质量的一个方面。
为了确保程序质量高而且可靠性强,软件测试员必须在整个产品开发过程中进行确认和验证。
4)测试(testing)和质量保证(quality assurance,QA)。
这两个术语经常用于描述确认和验证的小组和过程。
软件测试员的目标是尽可能早地找出软件缺陷,并确保缺陷得以修复。
软件质量保证人员的主要职责是创建和执行改进软件开发过程并防止软件缺陷发生的标准和方法。

章四 检查产品说明书


一、编写产品说明书
优点:
1)确保最终产品符合客户要求以及正确计划测试投入的唯一方法是在产品说明书中完整描述产品;
2)另一个好处是软件测试员可以将其作为测试项目的书面材料。
二、黑盒测试和白盒测试
黑盒测试(black-box testing):有时又称功能性测试(functional testing)或行为测试(behavioral testing)。在黑盒测试中,软件测试员只需知道软件要做什么——而无法看到盒子里的软件是如何运行的。只要进行一些输入,就能得到某种输出结果。他不知道软件如何运行、为什么会这样,只知道程序做了什么。
白盒测试有时又称为透明盒测试(clear-box testing),软件测试员可以访问程序员的代码,并通过检查代码的线索来协助测试——可以看到盒子里面。测试员可以根据代码检查结果判断或多或少可能出错的数目,并据此定制测试。
三、静态测试和动态测试
静态测试(static testing)是指测试不运行的部分——只是检查和审核;
动态测试(dynamic testing)是指通常意义上的测试——使用和运行软件。
四、静态黑盒测试、测试产品说明书
测试产品说明书属于静态黑盒测试。产品说明书是书面文档,而不是可执行程序,因此是静态的。
它是利用各种资源而获得的数据——诸如易用性研究、焦点人群、销售收入等建立的。
无论产品说明书的格式如何,都可以利用静态黑盒技术测试。产品说明书是书面文字文档或图形文档,或者两者兼而有之。通过询问软件的设计者和编制者甚至可以测试没有写出来的产品说明书。
五、对产品说明书的高级审查
定义软件产品是一个困难的过程。产品说明书必须处理许多不可预料的情况,接受众多变化的输入,并设法把这些汇集在一个描述新产品文档中。
1)假设自己是客户
在假设自己是客户时不要忘记了软件的安全性。客户也许会假设软件是安全的,但软件测试员不能假定程序员会正确处理安全问题。这方面必须详细说明。
2)研究现有的标准和规范
目前要考虑的是在产品中应该应用何种标准和规范。
标准和规范的差别在于程度不同,标准比规范更加严格。如小组认为很重要,则标准应该严格遵守;规范是可选的,但应该遵守。小组将标准作为规范也不罕见,前提是只要每个人都清楚就行。
公司惯用语和约定、行业要求、政府标准、图形用户界面、安全标准。
软件测试员的任务不是定义软件要符合何种标准和规范,这是项目经理或者编写产品说明书的人的任务。
软件测试员要做的是观察,“检查”采用的标准是否正确、有无遗漏。在对软件进行确认和验收时,还要注意是否与标准和规范相抵触,把标准和规范视为产品说明书的一部分。
3)审查和测试类似软件
了解软件最终结果的最佳方法是研究类似软件。
在审查竞争产品时要注意的问题包括:
规模、复杂性、测试性、质量和可靠性、安全性。
记住要阅读关于竞争对手软件的评价方面的联机或印刷的文章。这对安全方面的问题特别有帮助,因为软件测试员偶然使用软件不一定能发现安全方面的缺陷。

分享到:
评论

相关推荐

    最经典的软件测试入门教程(下)

    第3章 软件测试的实质 第二部分 测试基础 第4章 检查产品说明书 第5章 闭着眼睛测试软件 第6章 检查代码 第7章 带上X光眼镜检查软件 第三部分 运用测试技术 第8章 配置测试 第9章 兼容性测试 第10章 外国语言测试 第...

    最经典的软件测试入门教程(上)

    第3章 软件测试的实质 第二部分 测试基础 第4章 检查产品说明书 第5章 闭着眼睛测试软件 第6章 检查代码 第7章 带上X光眼镜检查软件 第三部分 运用测试技术 第8章 配置测试 第9章 兼容性测试 第10章 外国语言测试 第...

    软件测试复习.docx

    第一章:导论 3 1.1软件测试定义 3 ...第三章:软件测试的实质 12 3.1找出所有的软件缺陷,确保软件完美无缺是不可能的。 12 3.2软件测试是有风险的行为 12 3.3准确和精确 13 3.4确认和验证 14 3.5质量和可靠性

    [软件测试].赵瑞莲.文字版

    第2章 软件测试的实质 2.1 软件测试的基本概念 2.1.1 软件测试的目的 2.1.2 软件测试涉及的关键问题 2.1.3 软件测试与软件质量保证 2.2 软件故障 2.2.1 故障定义 2.2.2 软件故障分类 2.2.3 软件故障的修复费用 2.3 ...

    软件测试培训资料.pptx.pptx

    课程教学内容安排: 第一部分 软件测试综述(共三章) 第二部分 软件测试基础(共五章) 第三部分 运用测试技术(共七章) 第四部分 软件测试的进一步深入(共两章) 第五部分 使用测试文档(共四章) 第六部分 ...

    软件测试的本质是什么?

    读到第三章“软件的实质”,觉得确实不错,这里摘  最近在读《软件测试》一书,对叫这个名字的书多,我读的是RonPatton写的那本,对!2002年的中文版,已经十年了,虽然没《软件测试的艺术》那么经典,那么有深度,...

    性能测试进阶指南——LoadRunner11实战_(完整)扫描版_@vs.part1

    同时,《测试实践丛书:性能测试进阶指南·LoadRunner 11实战》也可以作为高校开展性能测试课程的参考教材,让在校学生能对性能测试的本质和价值有一定的认识。 《测试实践丛书:性能测试进阶指南·LoadRunner 11...

    简单之美-软件开发实践者的思考(中文高清版)

    6.3.3 软件测试的第三个原则:自动化 6.3.4 软件测试的第四个原则:目标一致 6.4 一个典型的破坏:性能测试 6.5 其他 第7章 关于团队的思考 7.1 团队的实践场景 7.2 湘江战役 7.3 团队建设 7.3.1 思想准备 ...

    性能测试进阶指南——LoadRunner11实战_(完整)扫描版_@vs.part3

    同时,《测试实践丛书:性能测试进阶指南·LoadRunner 11实战》也可以作为高校开展性能测试课程的参考教材,让在校学生能对性能测试的本质和价值有一定的认识。 《测试实践丛书:性能测试进阶指南·LoadRunner 11...

    性能测试进阶指南——LoadRunner11实战_(完整)扫描版_@vs.part5

    同时,《测试实践丛书:性能测试进阶指南·LoadRunner 11实战》也可以作为高校开展性能测试课程的参考教材,让在校学生能对性能测试的本质和价值有一定的认识。 《测试实践丛书:性能测试进阶指南·LoadRunner 11...

    性能测试进阶指南——LoadRunner11实战_(完整)扫描版_@vs.part6

    同时,《测试实践丛书:性能测试进阶指南·LoadRunner 11实战》也可以作为高校开展性能测试课程的参考教材,让在校学生能对性能测试的本质和价值有一定的认识。 《测试实践丛书:性能测试进阶指南·LoadRunner 11...

    性能测试进阶指南——LoadRunner11实战_(完整)扫描版_@vs.part2

    同时,《测试实践丛书:性能测试进阶指南·LoadRunner 11实战》也可以作为高校开展性能测试课程的参考教材,让在校学生能对性能测试的本质和价值有一定的认识。 《测试实践丛书:性能测试进阶指南·LoadRunner 11...

    性能测试进阶指南——LoadRunner11实战_(完整)扫描版_@vs.part4

    同时,《测试实践丛书:性能测试进阶指南·LoadRunner 11实战》也可以作为高校开展性能测试课程的参考教材,让在校学生能对性能测试的本质和价值有一定的认识。 《测试实践丛书:性能测试进阶指南·LoadRunner 11...

    BREW开发配套源码,VS.NET源代码

     Test1 : 第二章 软件基础 指针测试  Test2 : 第二章 软件基础 理解指针的本质  Test2-1 : 第二章 软件基础 指针的增减  Test3 : 第二章 软件基础 函数指针  Test4 : 第三章 编译器基础  Test5 : 第八章 ...

    性能测试从零开始:LoadRunner入门

    性能测试从零开始:LoadRunner入门软件测试第1章软件性能测试当今,计算机和软件工程发展越来越快,新的概念名词和技术手段层出不穷,可谓日新月异。在软件性能测试范畴内就有很多,诸如并发测试、压力测试、基准...

    软件工程综合复习题连答案

    C、完成软件测试工作以后,为了缩短程序的长度应删除程序中的注释。 D、一般来说,程序中存在错误的概率与在该段程序中已发现的错误数成正比。 4、_____是以提高软件质量为目的的技术活动。 A.技术创新  B....

    代码大全第二版(软件构建)笔记

    这是我的《代码大全(第二版)》笔记,前三章没有内容,因为这三章属于引言性质,没有实质内容。另外,具体的工程规范我也没有做笔记,因为不同的公司有不同的规范,我只是给出了工程规范的注意事项和原则。

    Think in UML大象(架构师必备,珍藏版).part05.rar

    第15章 理解用例的本质 第17章 理解建模的抽象层次 第18章 划分子系统的问题 第19章 学会使用系统边界 第20章 学会从接口认知事物 第21章 学会正确选择 第22章 学会使用设计模式 附录 UML视图常用元素参考 图目录 表...

Global site tag (gtag.js) - Google Analytics