1
第
1
章
软件测试概述
1.
简述软件测试的意义。
解:随着计算机技术的迅速发展和广泛深入的应用,软件质量问题已成为开发和使用软件人员关注的焦点。而由于软件
本身的特性,软件中的错误是不开避免的。不断改进的开发技术和工具只能减少错误的发生,但是却不可能完全避免错
误。因此为了保证软件质量,必须对软件进行测试。软件测试是软件开发中必不可少的环节,是最有效的排除和防治软
件缺陷的手段,是保证软件质量、提高软件可靠性的最重要手段。
2.
什么是软件缺陷?它的表现形式有哪些?
解:从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题;从外部看,软件缺陷是系
统所需实现的某种功能的失效或违背。
它的表现形式主要有以下几种:
(
1
)软件未达到产品说明书中已经标明的功能;
(
2
)软件出现了产品说明书中指明
不会出现的错误;
(
3
)软件未达到产品说明书中虽未指出但应当达到的目标;
(
4
)软件功能超出了产品说明书中指出的
范围;
(
5
)软件测试人员认为软件难以理解、不易使用,或者最终用户认为该软件使用效果不良。
3.
简单分析软件缺陷产生的原因,其中那个阶段引入的缺陷最多,修复成本又最低?
解:软件缺陷产生的主要原因有:需求规格说明错误;设计错误;程序代码有误;其他。其中在需求分析阶段引入的缺
陷最多,修复的成本又最低。
4.
当用户登录某网站购物完毕并退出后,忽然想查查购物时付账的总金额,于是按了浏览器左上角的
“
退回
”
按钮,
就又回到了退出前的网页,你认为该购物软件有缺陷吗?如果有,属于哪一类?
解:有缺陷。其所属类别与软件产品说明书的要求有关。
5.
什么是软件测试?简述其目的与原则。
解:软件测试是为了尽快尽早地发现在软件产品中所存在的各种软件缺陷而展开的贯穿整个软件开发生命周期,对软件
产品(包括阶段性产品)进行验证和确认的活动过程。
测试目的:
(
1
)证明:获取系统在可接受风险范围内可用的信心;尝试在非正常情况和条件下的功能和特性;保证
一个工作产品是完整的并且可用或可被集成。
(
2
)检测:发现缺陷、错误和系统不足;定义系统的能力和局限性;提
供组件、工作产品和系统的质量信息。
(
3
)预防:澄清系统的规格和性能;提供预防或减少可能制造错误的信息;在
过程中尽早检测错误;确认问题和风险,并且提前确认解决这些问题和风险的途径。
测试过程中应注意和遵循的原则:
(
1
)测试不是为了证明程序的正确性,而是为了证明程序不能工作。
(
2
)测试应
当有重点。
(
3
)事先定义好产品的质量标准。
(
4
)软件项目一启动,软件测试也就开始,而不是等到程序写完才开始进
行测试。
(
5
)穷举测试是不可能的。
(
6
)第三方进行测试会更客观,更有效。
(
7
)软件测试计划是做好软件测试工作的
前提。
(
8
)测试用例是设计出来的,不是写出来的。
(
9
)对发现错误较多的程序段,应进行更深入的测试。
(
10
)重视
文档,妥善保存一切测试过程文档。
6.
件测试阶段是如何划分的?
解:软件测试的阶段划分为:规格说明书审查;系统和程序设计审查;单元测试;集成测试;确认测试;系统测试;验