浏览次数: 时间:2016/01/13
一、单选题(D)0.99,100 000 000.00
13.下列哪一项内容通常属于易用性测试的范围是________。
(A)安装与卸载测试
(B)系统故障频率
(C)联机文档中断开的链接
(D)中文版与英文版的一致
14.下列关于软件测试自动化,说法正确的是________。
(A)无法依靠人工完成的测试活动均可以通过测试自动化完成
(B)输出结果不明确的测试不适合自动化
(C)是否采用测试自动化与所开发的应用软件项目的性质无关
(D)与手工测试相比,采用自动化测试可以明显的提高测试质量
15.关于人工测试方法,说法正确的是________。
(A)走查以小组为单位进行,是一系列规程和错误检查技术的集合
(B)同行评审的文档是一种过渡性的文档,不是公开的正式文档
(C)桌上检查的文档是一个最终可交付的文档
(D)评审是一项很浪费时间的活动,会减缓项目的进度
16.软件性能测试的目标有________。
(A)发现(和改正)软件性能缺陷
(B)性能调优
(C)能力检验和规划
(D)以上全部
17.下列关于面向对象软件测试的说法中,不正确的是_______。
(A)面向对象软件的白盒测试不能不加改变地照搬传统软件的白盒测试准则
(B)在存在多态的情况下,为了达到较高的测试充分性,应对所有可能的绑定都进行测试
(C)假设类B是类A的子类,如果类A已进行了充分的测试,在测试类B时不必测试任何类B继承类A的成员方法
(D)对于一棵继承树上的多个类,处于叶子节点的类也需要测试
18.Web应用软件的性能测试主要包括________。
(A)并发测试
(B)负载测试和压力测试
(C)配置测试和性能调优
(D)以上全部
19.下列兼容性不属于软件兼容性的考虑范畴的是________。
(A)与外设的兼容性
(B)与不同类软件的兼容性
(C)与浏览器的兼容性
(D)与中间件的兼容性
20.下列关于Web应用软件的系统安全检测与防护说法不正确的是________。
(A)对系统安全漏洞的检测同样也属于测试的范畴
(B)Web应用软件的安全性仅与Web应用软件本身的开发相关
(C)系统安全检测与防护应当作一个系统工程来完成,仅仅经过入侵检测和漏洞扫描是不够的,在这其中最重要的应该是建立完善的安全策略
(D)访问安全是指控制外界对主机的访问,从而减少甚至避免非法的访问和使用
21.下列关于软件测试过程的几种抽象模型,说法正确的是________。
(A)H模型指出软件测试具有独立性,只要某个测试达到准备就绪点,测试执行活动就可以开展
(B)W模型强调在整个项目开发中需要经历的不同测试级别,指明测试的对象是程序
(C)软件测试过程与软件开发过程不同的是,它不必遵循软件工程原理
(D)V模型强调测试的对象不仅仅是程序,需求、设计等同样需要测试
22.关于测试的策划,说法不正确的是________。
(A)测试设计的任务是执行测试用例,需要时也可以将测试用例设计与执行并行开展
(B)若系统对质量要求很高,则需要开展多次的回归测试验证
(C)在实际软件项目中,一个测试团队可能大都是骨干人员
(D)测试团队的规模与被测系统规模、测试方资源调配情况有关
23.下列关于测试策略说法不正确的是________。
(A)测试策略活动可以和测试设计活动并行开展
(B)测试设计活动也可以和测试执行活动并行开展
(C)在测试的最后阶段里,测试总结和测试执行通常并行开展
(D)在实际测试过程中,要不得不将一些测试活动并行开展,主要是因为时间原因
24.下列关于软件缺陷状态的定义,不正确的是________。
(A)New--测试中新报告的软件缺陷
(B)Open--缺陷被确认并分配给相关开发工程师处理
(C)Fixed--测试工程师已完成修正,等待开发人员验证
(D)Closed--缺陷已被修复
25.在QESAT/C中,下列属于动态测试过程步骤的是________。
(A)设定待测试的配置、编译相关的源程序
(B)设定需插装的函数
(C)运行源程序、合并动态运行的结果
(D)以上全部
二、论述题
1.论述题1:以下是某应用程序的规格描述,请按要求回答问题。
程序规则:实现某城市的电话号码,该电话号码由三部分组成。它的说明如下:区号:空白或3为数字;前缀:非"0"或"1"开头的3为数字;后缀:4位数字。
请分析该程序的规则说明和被测程序的功能,采用等价类划分方法设计测试用例。
2.论述题2:你认为应该由谁来进行确认测试?是软件开发者还是软件用户?为什么?
3.论述题3:以下电费计算的几条规则,请按要求回答问题
一些城市的电力公司把用户分为两类:单费率用户和复费率用户。对于单费率用户实行单一电价,即在任何时间短都是一个价;对于复费率用户在不同时段实行不同的电价。有4条计算电费的规则:对于单费率用户,按公式A计算电费;对于复费率用户,如果不在规定期间内,同单费率用户,按照公式A计算电费,否则按公式B计算;如果既不是单费率用户也不是复费率用户,则做其他处理。
(1)根据上述要求,设计判定表。
(2)根据上述判定表设计测试用例,尽量使其覆盖所以得情况。
论述题解析:
1.分析:首先分析程序的规则说明和被测程序的功能,将其输入情况划分为有效等价类和无效等价类,然后按照等价类设计测试用例的方法设计有效的测试用例和无效的测试用例。
2.分析:首先搞清楚确认性测试的含义及整个测试过程,在确认测试阶段主要任务是确认软件的有效性,即确认软件的功能和性能及其他特性是否与用户的要求一致。该阶段需要做的工作包括功能测试和软件配置复审。具体由谁来执行,应根据阶段不同而不同。
3.分析:首先根据电费计算的规则,列出相关的条件以及动作,画出判定表,然后再根据黑盒测试中基于判定表的测试方法设计测试用例。
参考答案与分析
一、选择题
1.D 2.B 3.C 4.C5.D 6.D 7.B 8.A 9.C10.C
11.D 12.C 13.A 14.A15.A 16.C 17.A 18.D 19.C20.C
21.D 22.D 23.B 24.A25.A
二、论述题
1.问题1:
采用常用方法设计测试用例如下:
对于该程序的输入条件,因为每个条件分别有两个输入参数,如果要全部覆盖他们的输入组合,则需设计8个测试用例,分别是:
1填写姓名、选择男性、状态设置为激活。
2填写姓名、选择女性、状态设置为激活。
3填写姓名、选择男性、状态设置为未激活。
4填写姓名、选择女性、状态设置为未激活。
5不填写姓名、选择男性、状态设置为激活。
6不填写姓名、选择女性、状态设置为激活。
7不填写姓名、选择男性、状态设置为未激活。
8不填写姓名、选择女性、状态设置为未激活。
问题2:
下面采用正交试验设计法设计测试用例
步骤1:确定有哪些因素,即输入的条件。该应用程序有姓名、性别、状态三个因素。
步骤2:每个因素有哪几种参数,即输入条件的参数。该应用程序中的因素都有两种参数,如姓名有填写和不填写两个参数。
步骤3:选择一个合适的正交表。对上述应用程序,我们可以选用L4,构造正交表,如表下所示:
步骤4:将变量的值映射到表中,即把表中的0和1映射成条件和参数,则上表转换为下表:
步骤5:把上表中每一行各种因素组合,即作为一个测试用例。由上表有4行,故用正交试验法设计的该应用程序的测试用例有4个,分别是:
1)填写姓名、性别为男,状态设置为激活。
2)填写姓名、性别为女,状态设置为未激活。
3)不填写姓名、性别为男,状态设置为未激活。
4)不填写姓名、性别为女,状态设置为激活。
正交试验设计法的好处:简化测试用例,是一种可以用最少的测试用例获得较为全面的测试覆盖率的设计方法,尤其对于较为复杂的程序,该方法优点显著。
2.问题1:
分析软件规格说明书,找出原因和结果并进行编号。
原因:1-第一个字符为A
2-第一个字符为B
3-第一个字符为数字
结果:80-修改文件
81-打印错误信息X12
82-打印错误信息X13
找出各原因和结果之间、原因和原因之间的关系,画出因果图,如图下所示:
问题2:
将上述因果图转换为判定表,如下表所示。
根据判定表设计测试用例,如下表所示。
3.(1)根据题意设计判定表,如下表所示:
(2)由判定表设计测试用例时,要求覆盖所有规则,一般针对每个规则设计一个测试用例。对于该测试用例以规则所对应的条件为要求满足的输入条件,并以规则所对应的动作的动作为预期结果。根据上表可以设计4个测试用例,它们分别覆盖规则1~5,如下表所示。
答案解析:
一、选择题
1.分析:外部质量是针对要求的满足程度而言的,是表征软件产品在规定条件下使用时,满足规定的和隐含的要求的程度而内部质量则主要是根据软件产品的情况给出的,内部质量是表征软件产品在规定条件下使用时,决定其满足规定的和隐含的要求的能力的产品属性的全体。故选项A和C叙述刚好颠倒,选项B中的性质都是属于软件的质量特性的,而选项D中关于使用质量的叙述是完全正确的。
2.分析::验证是检查软件开发的各个阶段过程活动的结果是否满足规格说明的描述,证实各阶段和阶段之间的逻辑协调性、完备性和正确性。确认是证实在一个给定的外部环境中软件的逻辑正确性,即是否满足用户的要求。Bohem给出了一个经典定义:验证是检查我们是否正在正确地建造一个产品,它强调的是过程的正确性。而确认是检查我们是否在建成一个正确的产品,它强调的是产品的正确性。
3.分析:软件测试生存周期模型描述了软件测试的全过程:单元测试、集成测试、系统测试、验收测试和回归测试等。
4.分析:自底向上测试与自顶向下测试策略都是增量式的测试,软件是分层设计的,主模块调用子模块,子模块又依次调用更低层次的模块,依此类推。在自底向上单元测试的策略中,应首先测试最底层的模块,利用辅助的测试驱动模块调用他们并传递测试数据,然后再测试更高层次的模块,再较高层次的模块测试中可以直接调用已测试过的较低层次的模块。在自顶向下测试中,首先测试的则是顶层模块,无须编写驱动模块,但要使用桩模块,当顶层模块被证明无误后,在测试下一个高层次的模块。
5.分析:在各个时期进行的软件测试,其依据都是不同的,测试用例的设计应该与各个时期的文档有关,故测试用例的设计与需求规格说明书,程序复杂程度,源程序都是有关的。而项目的开发计划是为程序的开发做准备的,与测试无关。
6.分析:在黑盒测试中,这些测试策略基本上都要考虑输入条件的组合,但是基于因果图的方法就是着重检查输入条件组合的一种测试方法。
7.分析:题目要求达到100%的判定覆盖率,即要求所以的判定真假都至少执行一次,故我们取定(A=12,B=7)和(A=7,B=10)两组测试用例,即可满足题目要求。
8.分析:单元测试主要从下面五个基本特征进行测试,分别是:模块接口、局部数据结构、独立路径和出错处理。故不能完成的测试是系统功能,这通常是在系统测试时进行的。
9.分析:考察各种逻辑覆盖的关系:
条件组合覆盖>判定覆盖>语句覆盖(即如果达到条件组合覆盖,就达到判定覆盖和语
句覆盖;如果达到判定覆盖,就达到语句覆盖,下面类似理解)。
条件组合覆盖>条件覆盖。
条件覆盖不一定包含判定覆盖、语句覆盖。
判定覆盖不一定包含条件覆盖。
路径覆盖>判定覆盖>语句
10.分析:评审是一种软件开发前期阶段人工测试的方法,主要是发现缺陷,并通过评审标准检查软件文档,故选项A、选项B和选项D都与软件评审有关。而评审这一阶段是不需要依靠测试信息的。
11.分析:Myers提出的软件缺陷的群集现象是指:测试后程序中残余的错误数目与该程序中已发现的错误数目成正比。即一个功能部件已发现的缺陷越多,找到它的更多未发现的缺陷的可能性就越大。
12.分析:根据等价类划分法设计测试用例的原则。
13.分析:自动测试脚本最好采用模块化方法。
14.分析:增量测试策略首先要对程序的每个程序单元或程序部件单独进行测试,这种测试便是单元测试或模块测试或部件测试。在单元测试时,程序员必须编写一个驱动模块,用来调用被测模块并向其传送测试数据,若该模块调用了其他模块,程序员必须编写一个桩模块,用来代替被调用的模块。
15.分析:软件的性能是软件的一种非功能特性,响应时间软件性能指标之一,响应时间是指系统对请求作出响应的时间,对于单机的没有并发操作的应用系统而言,人们普遍认为响应时间会是一个合理且准确的性能指标,但是要指出的是,在实际测试中,响应时间的绝对值并不能直接反映软件性能的高低,软件性能的高低实际上取决于用户对响应时间的接受程度。
16.分析:软件可靠性分析方法主要有:失效模式影响分析、严酷性分析、故障树分析、事件树分析和潜在线路分析。其中失效模式影响分析(FMEA)的基本假设是产品本身的逻辑没有故障,但其各部件出现的故障可能会导致产品出现故障,所以,该方法的思路是通过分析产品与其各个部件的逻辑,从而分析出各个部件的故障对整个产品可靠性的影响。故当软件的各部件组成逻辑都相对简单的情况下,采用该方法是最适合的。
17.分析:在面向对象程序测试中,通过执行程序代码完成的测试通常包括单元测试、集成测试和系统测试三个主要方面。其中单元测试的基本要求是被测单元被独立地测试,而在测试面向对象程序时,由于一个类的各个成员方法通常是相互联系的,因而很难对一个类中的单个成员方法进行充分的单元测试。面向对象程序中的一个类甚至也不能作为被独立测试的单元,主要原因一方面是由于继承的存在,一个类通常依赖于其父类和其他祖先类,另一方面由于面向对象程序经常出现多个类相互依赖也会导致每个类难以被独立的测试。集成测试是针对程序的集成结构进行,在面向对象程序中,许多集成机制在传统结构化程序中没有,因而结构化程序的集成测试技术难以适用于对类的测试。
18.分析:Web应用软件与其他的应用软件有较大的差别,其特点有①基于无连接协议,②内容驱动,③开发周期短,④演化频繁,⑤安全性要求较高,⑥美观性要求较高。
19.分析:Web应用软件的系统测试除了功能测试外还包括性能测试、易用性测试、内容测试、安全性测试和接口测试等。功能测试主要包括:①连接测试,②表单测试,③Cookie测试,故选项C正确,由排版结构的测试是Web应用软件表示层的测试,故A不正确。而对数据完整性的测试是Web应用软件数据层的测试,故选型B不正确。对于Web应用软件而言,性能测试是一个至关重要的因素,所以对Web应用软件进行系统测试时,必须考虑性能测试,故D说法错误。
20.分析:所谓兼容性测试,是指针对软件对其运行环境的依赖进行测试,以验证软件是否能够在所有期望的环境中运行。在大多数情况下,兼容性测试主要考虑硬件兼容性、软件兼容性和数据兼容性三个方面。
21.分析:功能易用性是指用户能否方便、快速、准确地使用软件提供地功能来完成需
要完成的任务。一般功能易用性测试涉及面很广,其主要内容有:①业务符合度,②功能定制性,③功能的关联度,④数据的共享度,⑤用户约束的合理性,⑥反馈的及时性。
22.分析:极限编程强调灵活的分析和设计,极限编程与传统软件开发方法相比,有四个主要特征:①简单地分析设计,②频繁地客户交流,③增量式开发,④连续的测试。这些特征决定了极限编程可以随时应对新增或改变的需求。单元测试是极限编程中最重要的发现缺陷的手段,主要由编码人员来完成,验收测试主要由用户来完成,但编码人员也必须在场,以便与用户进行交流。另外极限编程要求在编码之前先设计测试,因为这样可提高编码人员测试自己编写代码的效率。
23.分析:软件问题的状态定义如下:
新建(New)--测试中新报告的软件问题
打开(Open)--软件问题已被确认并分配给相关开发工程师处理
关闭(Closed)--确认为无效的软件问题
待验(Pending)--工程师已完成修正,等待测试人员验证
解决(Resolved)--软件问题已被修复
24.分析:在软件系统开发过程中,度量与分析同样体现的是"全过程测试"理念,对测试过程的度量有利于及时把握项目情况,对过程数据进行分析,很容易发现优势和劣势,找出需要改进的地方,及时调整测试策略。所以说度量与分析是软件测试过程可持续改进的根本。
25.分析:在QESuiteWebVersion1.0中,可以监控软件问题报告处理过程和软件系统各
模块软件问题布状况,测试管理人员使用"按功能分类"视图查看软件问题分布情况,可以了解哪些模块存在严重的软件问题。使用"按状态/子状态"视图可以了解当前所有软件问题的处理状态。使用"按子系统/状态"视图可以了解各个部分软件问题的数量情况,及时调整开发人员修复和测试人员验证的工作方向。使用"严重性"视图可以了解当前软件问题的严重性分布。