2014计算机三级《软件测试技术》常见问题:软件测试基础
①.项目规划
②.需求定义分析
③.软件设计
④.程序编码
⑤.软件测试
⑥.运行维护
3)软件测试目的是什么?
①.发现系统的错误
②.验证系统是否满足需求
③.保障产品质量
④.改进开发进程
4)软件缺陷(bug)与软件错误(error)的区别和联系?
区别:软件缺陷是存在于软件之中的不希望或者不可接受的偏差,而软件错误是由于人为的原因产生的错误。缺陷是在软件中抽象存在的,而错误是人的行为问题。
联系:由于人的错误行为,在设计或者编码过程中的失误,导致了软件内部的缺陷。人为错误是引发软件缺陷的直接原因。一个软件错误必定引发一个或多个软件缺陷。
5)软件测试如何改进软件开发过程?
软件测试和软件开发是不同的两个过程,但是通过软件测试发现软件的缺陷,然后通过缺陷的分析确定错误产生的原因从而发现软件开发过程中存在的缺陷。同时通过对测试结果的分析整理,还可以修正软件开发规则。因此,软件测试在一定程度上可以改进软件开发流程。
6)分析“软件测试没有什么技术含量,不就是点击按钮,对系统进行操作吗?”。
分析:在上述问题中只所以出现这样的言论,是对软件测试理解的片面性和对软件测试理解的偏激造成的。对于一个规范的软件测试过程包括了软件测试的计划、系统分析、测试设计、开发等技术。软件测试是一个发现软件缺陷的过程,要想发现软件缺陷必须对被测对象有足够的了解,而不是简单的对被测对象的执行,更不是只是点击“按钮”。这里边包括了如何设计测试场景、测试数据、测试执行等过程。同样的通过软件测试发现系统的问题,通过问题的改进可以提高软件产品的质量,赢得用户的口碑,从而提高产品的市场竞争力,提高公司的利益。因此软件测试是一项非常有意义的关系公司存亡的活动。
7)软件测试对象包括什么?
①.需求规格说明
②.概要设计规格说明
③.详细设计规格说明
④.源程序
⑤.系统
⑥.用户手册
⑦.帮助文档
8)主要的软件测试手段分别是什么,如何理解?
软件的测试手段包括验证和确认;验证是对前一个阶段的验证;确认是对原始开发需求的确认,任何一个阶段的确认都应追溯到需求。
9)软件测试的原则包括那些方面?
①.尽早的不断的测试
②.测试过程中要设计测试用例
③.程序员避免检查自己的程序
④.彻底测试是不可能的
⑤.测试应追溯到需求
⑥.从“小规模”到“大规模”
⑦.注意群集现象
⑧.严格执行测试计划
⑨.测试结果进行全面检查
⑩.测试维护
10)软件测试的局限性包含哪些?
11)为什么说软件测试不能保证软件质量
高质量的软件不是测试出来的,而是开发出来的;软件测试是保证软件质量的手段之一,不是唯一手段。要想提高软件质量必须提高开发质量。
12)常见的软件测试模型有哪些,分别具有什么样的特点?
测试中常见的模型有V、W、H、X等模型;
其特点如下:
①.V模型适用于产品,描述的是开发和测试的对应过程
②.W模型是V模型,强调的是针对需求,设计的测试
③.V、W模型不支持迭代
④.x模型增加了探索性测试
13)什么是V(或者W模型),它的特点是什么?
V模型是软件测试的一个基础应用模型,包括了软件开发和软件测试的两个阶段,并且两个阶段是串行的,V模型的左边是:需求分析、概要设计、详细设计、编码;右边包括:“单元测试”、“集成测试”、“系统测试”、“确认测试”和“验收测试”。
V模型的特点:
①.测试对象是程序本身
②.实际应用中容易导致需求阶段的错误一直到最后系统测试阶段才被发现
③.测试深度高
④.评审深度低
14)什么是敏捷开发和敏捷测试?他们的特点是什么?
敏捷开发:敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。