软件测试练习

更新时间:2024-01-17 22:06:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一、 选择题:

1、下列说法中错误的是:

A.充分测试后的软件不存在缺陷; B.测试工作要及早展开;

C.所有的测试应追溯到用户的需求;

D.在软件生命周期的后期修改缺陷的成本比在前期修改的成本要高很多。

2、某软件公司在招聘软件评测师时,应聘者甲向公司做如下保证:①经过自己测试的软件今后不会再出现问题; ②在工作中对所有程序员一视同仁,不会因为在某个程序员编写的程序中发现的问题多,就重点审查该程序,以免不利于团结;③承诺不需要其他人员,自己就可以独立进行测试工作; ④发扬咬定青山不放松的精神,不把所有问题都找出来,决不罢休; 你认为应聘者甲的保证中错误的有: A.① B.② C.③

3、软件测试按阶段划分可分类为:

D.④

A.需求测试、单元测试、集成测试、验证测试 B.单元测试、集成测试、系统测试、验收测试 C.单元测试、集成测试、验证测试、系统测试 D.调试、单元测试、集成测试、用户测试

4、下面能够体现“测试驱动开发”含义的有: A.软件开发过程中测试在先,编码在后; B.软件开发过程中编码在先,测试在后; C.测试脚本或测试用例在编码之前完成; D.更符合“缺陷预防”的思想。

1、针对程序段IF(X>10)AND(Y<20)THEN W=W/A,对于(X,Y)的取值,以下能够满足判定覆盖准则的测试用例是: ( ) A.(30, 15) (40, 10) B.(3, 0) (30, 30) C.(5, 25) (10, 20) D.(20, 10) (1, 100)

2、使用白盒测试方法时,确定测试数据应根据指定的覆盖标准和 ( ) A.程序的内部逻辑 B.程序的复杂程度 C.使用说明书 D.程序的功能

3、下列关于黑盒测试与白盒测试技术的说法中错误的是: ( ) A.测试员不需要了解源代码的内部结构也可以执行黑盒测试; B.达到预定的代码覆盖率是白盒测试用例设计完成的标准;

C.成功对某模块执行白盒测试后,发现所有测试用例均运行成功,说明该模块已实现了预定的需求; D.黑盒测试主要是测试软件的功能需求与非功能需求是否正确的实现。

4、下列选项中属于动态测试技术的是: ( ) A.文档审核 B.代码审查 C.程序插桩 D.走查

5、下列说法中不正确的一项是: ( ) A.覆盖准则中覆盖性最弱的是语句覆盖;

B.满足条件覆盖准则的测试用例使得每个判定的每个条件的可能值至少执行一次,因此可以保证覆盖程序的每一条路径;

C.满足分支覆盖准则的测试用例使得每个判定的每条分支至少执行一次; D.条件/分支覆盖准则由条件覆盖准则与分支覆盖准则组合而成。

6、对if (A &&(B||C)) 执行逻辑覆盖测试(A、B、C均为原子布尔表达式),测试用例至少需要设计______种组合才能满足条件组合覆盖的要求? ( ) A.6 B.4 C.8 D.12

7、针对下列程序段,至少需要设计 个测试用例可以满足语句覆盖要求? ( ) switch (value) {

case 0:

other = 30; break;

case 1:

other = 50; break;

case 2:

other = 100;

case 3:

other = 300; break; default:

other = other * value; } A.2 B.3 C.4 D.5

AABDBCA

1、假定1

B.X=0,X=1,X=100,X=101

C.X=1,X=2,X=99,X=100 取内侧 D.X=0,X=101

2、在某大学学籍管理信息系统中,假设学生年龄的输入范围为 16~40,则根据黑盒测试中的等价类划分技术,下面划分正确的是: ( ) A.可划分为2个有效等价类、2个无效等价类; B.可划分为1个有效等价类、2个无效等价类; C.可划分为2个有效等价类、1个无效等价类; D.可划分为1个有效等价类、1个无效等价类。

3、下列不属于功能测试用例构成元素的一项是: A.测试数据 B.实测结果 C.测试步骤 CBB

1、下面对验收测试的描述不正确的一项是

D.期望结果

( )

( )

A、与系统测试不同的是以客户业务需求为标准来进行测试。

B、测试人员多由客户方担任,也可以客户委托第三方来进行验收测试。 C、不仅仅要验收程序,还要验收相关的文档。 D、由企业自己的测试人员和开发人员进行测试。 2、对于软件的β测试,下列描述正确的一项是

A.β测试就是在软件公司内部展开的测试,由公司专业的测试人员执行的测试。 B.β测试就是在软件公司内部展开的测试,由公司的非专业测试人员执行的测试。 C.β测试就是在软件公司外部展开的测试,由专业的测试人员执行的测试。 D.β测试就是在软件公司外部展开的测试,由非专业的测试人员执行的测试。 3、下列关于各种测试技术的说法中不正确的是

A.压力测试指以异常数量、频率等要求资源的方式来测试系统; B.恢复测试指验证系统从各种等级的故障中恢复能力的方法;

C. 回归测试指对系统某个单元或功能进行测试后,再重复测试以确认首次测试结果的过程; D.性能测试的测试对象是整个系统。 4、下列关于软件缺陷的说法中正确的一项是

A.在软件SDLC中,引入缺陷数量最多的阶段是编码阶段;

B.缺陷管理的过程自测试员提出缺陷开始至开发人员修改缺陷结束;

C.开发人员在修改缺陷后需要验证缺陷,并且根据验证结果关闭或重新打开缺陷; D.在修改缺陷前,开发团队必须确认缺陷是否有效。 5、下列关于缺陷分类的说法中不正确的是

A.可以将缺陷分为功能缺陷、界面缺陷、警告、功能建议四类。 B.可以将缺陷按照严重程度分为高严重性、中严重性、低严重性。 C.可以将缺陷按照优先级分类,优先级的高低是从用户需要角度来考虑的; D.一般说来,低严重性缺陷(如界面缺陷)优先级较低。 6、下列关于alpha 测试的描述中正确的是: A.alpha 测试需要用户代表参加; B.alpha 测试不需要用户代表参加; C.alpha 测试是系统测试的一种; D.alpha 测试是验收测试的一种。

7、下列哪种方法会减少修改缺陷的成本? A.让客户去找缺陷 B.发现缺陷而不是预防它们

C.预防缺陷而不是发现它们 D.忽视小的缺陷

8、缺陷探测率是衡量一个公司测试工作效率的软件质量成本指标。在某公司开发一个软件产品的过程中,开发人员自行发现并修正的缺陷数量为80个;测试人员A发现的缺陷数量为50个,测试人员B发现的缺陷数量为50个,测试人员A和测试人员B发现的缺陷不重复;客户反馈的缺陷数量为50个,则该公司针对本产品的缺陷探测率为: A.56.5%

B.78.3% (80+50+50)/(80+50+50+50) C.43.5% D.34.8%

9、下列不属于单元测试内容的一项是: A.全局数据测试 B.局部数据结构 C.单元接口测试 D.单元边界条件测试 DDCDD DCBA 二、判断题:

(1)在集成测试阶段既要使用黑盒测试又要使用白盒测试技术。 (3)自底向上集成需要测试员编写驱动程序。

( √ ) ( √ ) ( × )

(2)W模型是对V模型的扩展,注重于在开发的各个阶段应用静态测试技术。( √ ) (4)集成测试计划在需求分析阶段末提交。 (在详细阶段) 修改,以加快、提高开发的进程。

(5)测试人员在测试过程中发现一处问题,如果问题影响不大,而自己又可以修改,应立即将此问题正确

( × )

( √ )

(6)软件项目在进入需求分析阶段后,测试人员应该开始介入其中。

(7)β测试是由测试团队模拟最终用户对系统所做的测试活动。(潜在最终用户)(×) (8)开发人员修改完缺陷后,可将此缺陷的状态由“处理中”改为“关闭”。( ×) 四、案例分析题:

1、公司A 承担了业务B 的办公自动化系统的建设工作。2004 年10 月初,项目正处于开发阶段,预计2005 年5 月能够完成全部开发工作,但是合同规定2004 年10 月底进行系统验收。

因此2004 年10 月初,公司A 依据合同规定向业主B 和监理方提出在2004 年10 月底进行验收测试的请求,并提出了详细的测试计划和测试方案。在该方案中指出测试小组由公司A 的测试工程师、外聘测试专家、外聘行业专家以及监理方的代表组成。

公司A 的做法是否正确?请给出理由。 答:B公司的用户(第三方测试机构代表)

2、某软件公司A承担了某银行B的网上银行系统的开发工作。2008年5月,双方签订合同,合同规定公司A于2008年5月至2008年11月完成该系统的开发工作。

2008年10月,该系统的编码工作结束,系统转入测试阶段。由于时间紧迫,在测试过程中,测试员C发现一处界面缺陷,此错误对相关模块的功能未造成影响。测试员C立即修正了此缺陷,加快了测试进程。

测试员D在测试过程中发现某网页界面上多出一个查询功能,此功能在用户帮助文档中未提及。测试员D将此问题记录为缺陷并提交给用户帮助文档的开发者进行修改。

由于银行B未提出明确的系统性能需求,因此在进行完善的功能测试后,公司A按期向银行B提出了与2008年11月进行系统验收测试的请求。

试指出此案例中公司A哪些做法不当,并给出理由。

答:测试员C不能修改缺陷,应提交缺陷给开发人员。缺陷统计无法记录。

测试员D首先应该根据需求说明书来判断功能是否该存在,根据得到的结果来进行相应操作。若需求说明书中含此功能,并提交此问题的缺陷给用户帮助文档的开发者,若需求说明书不含此功能的描述并由项目经理(向用户询问)确认该功能是否需要存在,如果需要,则需提交用户手册和需求说明书的缺陷,如果不需要,则提交功能缺陷给开发人员。

性能需求是隐式需求,作为开发者应做性能测试。

1、假定一台ATM机允许提取金额为100元整数倍的纸币,一天的取款总额为从100元到5000元不等的现金;并要求一次最多可取2000元,一天最多可取3次。试采用等价类划分法设计取款操作的测试用例。 一次取款金额 有效等价类 A1:取款额为100的整数倍 A2:取款额[100,2000] 取款次数 取款总额 B1:次数[1,3] C1:总额[100,5000] 无效等价类 A3:取款额不为100的整数倍 A4:取款额小于等于0 A5:取款额大于2000 B2:次数大于3次 C2:大于5000元

6条用例:测试数据+预期结果(相应的提示——eg:“取款失败,取款额不为100的整数倍”)

一条预期结果(有效等价类)

五条(无效等价类)

2、分析中国象棋中走马的实际情况(下面未注明的均指的是对马的说明)

(1)如果落点在棋盘外,则不移动棋子;

(2)如果落点与起点不构成日字型,则不移动棋子; (3)如果落点处有自己方棋子,则不移动棋子;

(4)如果在落点方向的邻近交叉点有棋子(绊马腿),则不移动棋子; (5)如果不属于(1)-(4)条,且落点处无棋子,则移动棋子;

(6)如果不属于(1)-(4)条,且落点处为对方棋子,则移动棋子并除去对方棋子; [问题1]:

根据上述说明,利用因果图法,下面列出走棋出现的情况和结果。找出哪些是正确的输入条件,哪些是正确的输出结果,请把相应的字母编号填入表中。(4.5分) A、落点在棋盘上;

B、落点与起点构成日字; C、移动棋子;

D、落点处为对方棋子; E、落点处为自己方棋子;

F、移动棋子,并除去对方棋子; G、落点方向的邻近交叉点无棋子; H、不移动棋子;

(22) I、落点处无棋子。

输入条件 A B D E G I 输出结果 C F H [问题2]:

下图所示为中国象棋中走马的因果图,请把问题1中列出的输入条件和输出结果的字母编号填入到空白框中相应的位置。E:互斥 V:与 波浪:非(4.5分)

(A) (B) (G) ∧ (E) ∧ (F) O ∨ H E (D) ∧ (I) (C)

[问题3]:试将上述因果图转换为判定表。 ABG:000,001,010?? 8种 EDI:(互斥)000,001,010,100 3种(去除不可能情况000) ??

3、场景法是黑盒测试中重要的测试用例设计方法。目前多数软件系统都是用事件触发来控制业务流程,事件触发时的情景便形成了场景,场景的不同触发顺序构成用例。场景法通过场景描述业务流程(包括基本流(基本流程)和备选流(分支流程)),设计用例遍历软件系统功能,验证其正确性。

下面是对网上银行支付交易系统的基本流和备选流的描述:

基本流 步骤 A1 A2 A3 A4 A5 A6 编号 B C D 步骤名称 网上订购商品 输入银行卡信息 校验银行卡信息 金额验证1 金额验证2 银行卡扣款 名称 密码不正确 银行卡内余额不足 银行卡网上可支付额度不够 步骤描述 用户登录网站,订购所需商品,然后单击网上银行支付。 输入银行卡号和密码。 系统校验银行卡号和密码。 系统确认订单金额不大于卡内余额。 系统确认订单金额不大于银行卡网上可支付额度。 支付成功,系统从银行卡中扣除相应金额,返回订单号。 备选流 备选流描述 在基本流A3步骤中,密码不正确(且密码输入尚未超过3次),重新加入基本流A2,否则退出基本流。 在基本流A4步骤中,系统判断银行卡内余额不足以支付订单,退出基本流。 在基本流A5步骤中,系统判断银行卡网上可支付额度小于订单金额,退出基本流。 [问题1]:

假定输入的银行卡号是正确的;不考虑备选流内循环情况。使用场景法设计场景,指出所涉及到的基本流和备选流。基本流用字母A表示,备选流用题干中描述对应编号表示。 场景1:A 场景2:AB 场景3:AC 场景4:AD 场景5:ABC 场景6:ABD [问题2]:

请针对问题1设计的场景,依次将银行卡号、初次输入密码、最终输入密码、卡内余额、银行卡可支付额度等信息填入下述测试用例表中。表中行代表各个测试用例,列代表测试用例的输入值,用V表示有效数据元素,I表示无效数据元素,n/a表示不适用,例如C01表示“成功支付” 用例。

测试用例 场景ID C01 C02 C03 C04 C05 C06 银行卡号 初次输入密码 最终输入密码 卡内余额 银行卡可支付额度 V V V V V V V I V V I I n/a n/a n/a n/a V V V n/a I V I V V n/a n/a I n/a I [问题3]:

在上述系统中,假设银行卡号只能输入0~9的数字,请参考下表,给出用边界值法检查银行卡号字符合法性的关键测试数据(字符或ASCII值)。

部分ASCII字符 字符 Null Space / 0 1 2 9 : @ A 【47 48】【57 58】

ASCII值 0 32 47 48 49 50 57 58 64 65 字符 B Y Z [ ‘ a b y z { ASCII值 66 89 90 91 96 97 98 121 122 123

本文来源:https://www.bwwdw.com/article/qgvo.html

Top