1.什么是软件缺陷?它的表现形式有哪些?
从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题;从外部看,软件缺陷是系统所需实现的某种功能的失效或违背。
它的表现形式主要有以下几种:
(1)软件未达到产品说明书中已经标明的功能
(2)软件出现了产品说明书中指明不会出现的错误
(3)软件未达到产品说明书中虽未指出但应当达到的目标
(4)软件功能超出了产品说明书中指出的范围
(5)软件测试人员认为软件难以理解、不易使用,或者最终用户认为该软件使用效果不良。
2.简单分析软件缺陷产生的原因,其中哪个阶段引入的缺陷最多,修复成本又最低?
软件缺陷产生的主要原因有:需求规格说明错误;设计错误;程序代码有误;其他。其中在需求分析阶段引入的缺陷最多,修复的成本又最低。
3.什么是软件测试?简述其目的与原则。
软件测试是为了尽快尽早地发现在软件产品中所存在的各种软件缺陷而展开的贯穿整个软件开发生命周期,对软件产品(包括阶段性产品)进行验证和确认的活动过程。
测试目的:
(1)证明:获取系统在可接受风险范围内可用的信心;尝试在非正常情况和条件下的功能和特性;保证一个工作产品是完整的并且可用或可被集成。
(2)检测:发现缺陷、错误和系统不足;定义系统的能力和局限性;提供组件、工作产品和系统的质量信息。
(3)预防:澄清系统的规格和性能;提供预防或减少可能制造错误的信息;在过程中尽早检测错误;确认问题和风险,并且提前确认解决这些问题和风险的途径。
测试过程中应注意和遵循的原则:
(1)测试不是为了证明程序的正确性,而是为了证明程序不能工作。
(2)测试应当有重点。
(3)事先定义好产品的质量标准。
(4)软件项目一启动,软件测试也就开始,而不是等到程序写完才开始进行测试。
(5)穷举测试是不可能的。
(6)第三方进行测试会更客观,更有效。
(7)软件测试计划是做好软件测试工作的前提。
(8)测试用例是设计出来的,不是写出来的。
(9)对发现错误较多的程序段,应进行更深入的测试。
(10)重视文档,妥善保存一切测试过程文档。
4.测试阶段是如何划分的?
软件测试的阶段划分为:规格说明书审查;系统和程序设计审查;单元测试;集成测试;确认测试;系统测试;验收测试。
5.简述软件测试过程
软件测试过程主要包括如下6个活动:测试计划;测试需求分析;测试设计;测试规程实现;测试执行;总结生成报告。
6.“软件测试能够保证软件的质量”这句话对吗?软件测试和软件质量之间是什么关系?
不对。软件测试是保障软件质量的手段之一,但不是唯一手段。测试是产品高质量的必要非充分条件,软件测试不能决定软件质量。
7.判断以下说法是否正确。
(1)软件测试和软件调试是同一回事。
(2)软件测试是可以无穷尽的。
(3)测试是为了证明软件的正确性。
(4)测试过程中应重视测试的执行,可以轻视测试的设计。
(5)测试不能修复所有的软件故障。
(6)因为测试工作简单,对软件产品影响不大,所以可以把测试作为新员工的一个过渡工作,或安排不合格的开发人员做测试。
(1)(2)(3)(4)(6)错误,(5)正确
8.简述软件开发进程与测试进程的关系
软件测试是一个贯穿软件开发生命周期的活动,它可以是一个与开发并行的过程,也可以是在开发完成某个阶段任务之后的活动。