软件测试习题集_第1页
软件测试习题集_第2页
软件测试习题集_第3页
软件测试习题集_第4页
软件测试习题集_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件测试习题集软件测试习题集软件测试习题集软件测试习题集编制仅供参考审核批准生效日期地址:电话:传真:邮编:软件测试习题集一、判断题1、发现错误多的模块,残留在模块中的错误也多。(√)2、测试人员在测试过程中发现一处问题,如果问题影响不大,而自己又可以修改,应立即将此问题正确修改,以加快开发的进程。(×)3、单元测试通常应该先进行“人工走查”,再以白盒法为主,辅以黑盒法进行动态测试。(√)4、功能测试是系统测试的主要内容,检查系统的功能、性能是否与需求规格说明相同。(√)5、软件质量管理即QM由QA和QC构成,软件测试属于QC的核心工作内容。(√)6、软件测试只能发现错误,但不能保证测试后的软件没有错误。(√)7、软件就是程序。(X)8、测试只要做到语句覆盖和分支覆盖,就可以发现程序中的所有错误。(X)9.软件测试的目的是尽可能多的找出软件的缺陷。(Y)10.Beta测试是验收测试的一种。(Y)11.验收测试是由最终用户单方面来实施的。(N)12.单元测试能发现约80%的软件缺陷。(Y)14.自底向上集成需要测试员编写驱动程序。(Y)16.负载测试是验证要检验的系统的能力最高能达到什么程度。(N)15.测试人员要坚持原则,缺陷未修复完坚决不予通过。(N)16.代码评审员一般由测试员担任。(N)17.我们可以人为的使得软件不存在配置问题。(N)18.集成测试计划在需求分析阶段末提交。(N)19.测试是调试的一个部分(╳)

20.程序中隐藏错误的概率与其已发现的错误数成正比(√)

21.测试的目的是发现软件中的错误。(√)

22.代码评审是检查源代码是否达到模块设计的要求。(√)

23.自底向上集成需要测试员编写驱动程序。(√)

24.因为测试工作简单,对软件产品影响不大,所以可以把测试作为新员工的一个过渡工作,或安排不合格的开发人员做测试。(N)25.在集成测试过程中,刚开始集成时由于规模较小,主要以黑盒测试为主(N)。26.Beta测试是验收测试的一种。(Y)27软件测试和软件调试是同一回事。(N)28.负载测试是验证要检验的系统的能力最高能达到什么程度。(N)29.软件测试是可以无穷尽的。(N)30.测试不能修复所有的软件故障。(Y)31.测试过程中应重视测试的执行,可以轻视测试的设计。(N)32.项目立项前测试人员不需要提交任何工件。(Y)33.测试是为了证明软件的正确性。(N)34.单元测试一般由专门的测试人员进行(N)二、

选择题(每题2分

20)1、进行软件质量管理的重要性有:(ABCD)A、维护降低成本

B、法律上的要求

C、市场竞争的需要D、质量标准化的趋势

E、软件工程的需要

F、CMM过程的一部分G、方便与客户进一步沟通为后期的实施打好基础2、选出属于黑盒测试方法的选项(ABC)A、测试用例覆盖

B、输入覆盖

C、输出覆盖D、分支覆盖

E、语句覆盖

F、条件覆盖3、编写测试计划的目的是:(ABC)A、使测试工作顺利进行 B、使项目参与人员沟通更舒畅 C、使测试工作更加系统化D、软件工程以及软件过程的需要

E、软件过程规范化的要求 F、控制软件质量4、依存关系有4种分别是:(ABCD)A、开始-结束

B、开始-开始

C、结束-开始D、结束-结束

E、开始-实施-结束

F、结束-审核-开始5、软件质量管理(QM)应有质量保证(QA)和质量控制(QC)组成,下面的选项属于QC得是:(ABC)A、测试

B、跟踪

C、监督D、制定计划

E、需求审查 F、程序代码审查6、实施缺陷跟踪的原由是:(ABCD)A、软件质量无法控制 B、问题无法量化

C、重复问题接连产生D、解决问题的知识无法保留 E、确保缺陷得到解决 F、使问题形成完整的闭环处理7、使用软件测试工具的目的:(ABC)A、帮助测试寻找问题

B、协助问题的诊断 C、节省测试时间D、提高Bug的发现率

E、更好的控制缺陷提高软件质 F、更好的协助开发人员8、典型的瀑布模型的四个阶段是:(ABCD)A、分析 B、设计

C、编码D、测试 E、需求调研

F、实施9.软件验收测试的合格通过准则是:(ABCD)A.软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。B.所有测试项没有残余一级、二级和三级错误。C.立项审批表、需求分析文档、设计文档和编码实现一致。D.验收测试工件齐全。10.软件测试计划评审会需要哪些人员参加(ABCD)A.项目经理 B.SQA负责人 C.配置负责人 D.测试组11.下列关于alpha测试的描述中正确的是:(AD)A.alpha测试需要用户代表参加 B.alpha测试不需要用户代表参加C.alpha测试是系统测试的一种 D.alpha测试是验收测试的一种12.测试设计员的职责有:(BC)A.制定测试计划 B.设计测试用例 C.设计测试过程、脚本 D.评估测试活动三、填空1.软件验收测试包括:正式验收测试,alpha测试,beta测试。2.请列举三种以上系统测试的策略有:功能测试,性能测试,可靠性测试,负载测试,易用性测试,强度测试,安全测试,配置测试,安装测试,卸载测试,文挡测试,故障恢复测试,界面测试,容量测试,兼容性测试,分布测试,可用性测试,(答对其中任意三个即得分)3.设计系统测试计划需要参考的项目文挡有:软件测试计划,软件需求工件和迭代计划。4.对面向过程的系统采用的集成策略有:自顶向下,自底向上两种。5.在已役入运行的软件中,与财务有关的关键软件所允许的故障密度为1~10个/每千行6.缺陷发现或解决得越迟,成本越高,几乎呈指数增长7.测试人员座右铭:尽早地、不断地测试!8.软件测试的对象:需求分析说明书、概要设计说明书、详细设计说明书、源代码9.单元测试也称模块测试,测试的对象是软件的最小单元——程序模块。10.单元测试的目的是检测程序模块中的错误故障,着力解决以下五个方面的问题:模块接口测试、模块局部数据结构测试、覆盖测试、出错处理检测、边界条件测试。11.系统测试的主要内容包括:功能测试、性能测试、用户界面测试、安全性测试、压力测试、可靠性测试、安装/卸载测试等。12.人为测试的主要方法有桌前检查(deskchecking),代码审查(codereview)和走查(walkthrough)。13.兼容性测试需要重点考虑的兼容性问题有:操作系统的兼容性;浏览器的兼容性;硬件的兼容性。14.边界值分析法的基本思想是:选取正好等于、刚刚大于和刚刚小于边界值的数据进行测试。15.白盒测试的两类主要方法是:静态测试和动态测试。16.逻辑覆盖以程序的内部逻辑结构为基础,主要分以下几种方式:语句覆盖、判定覆盖(分支覆盖)、条件覆盖、判定/条件覆盖、条件组合覆盖四、问答题1、测试人员在软件开发过程中的任务是什么答:1)、寻找Bug;2)、避免软件开发过程中的缺陷;3)、衡量软件的品质;4)、关注用户的需求。总的目标是:确保软件的质量。2、一条软件缺陷(或者叫Bug)记录都包含了哪些内容如何提交高质量的软件缺陷(Bug)记录答:一条Bug记录最基本应包含:编号、Bug所属模块、Bug描述、Bug级别、发现日期、发现人、修改日期、修改人、修改方法、回归结果等等;要有效的发现Bug需参考需求以及详细设计等前期文档设计出高效的测试用例,然后严格执行测试用例,对发现的问题要充分确认肯定,然后再向外发布如此才能提高提交Bug的质量。3、黑盒测试和白盒测试是软件测试的两种基本方法,请分别说明各自的优点和缺点!答:黑盒测试的优点有:1)比较简单,不需要了解程序内部的代码及实现;2)与软件的内部实现无关;3)从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;4)基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;5)在做软件自动化测试时较为方便。黑盒测试的缺点有:1)不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;2)自动化测试的复用性较低。白盒测试的优点有:帮助软件测试人员增大代码的覆盖率,提高代码的质量,发现代码中隐藏的问题。白盒测试的缺点有:1)程序运行会有很多不同的路径,不可能测试所有的运行路径;2)测试基于代码,只能测试开发人员做的对不对,而不能知道设计的正确与否,可能会漏掉一些功能需求;3)系统庞大时,测试开销会非常大。4、根据自己的理解回答什么是软件测试,软件测试分为哪几个阶段。答:软件测试是一个为了寻找软件中的错误而运行软件的过程,一个成功的测试是指找到了迄今为止尚未发现的错误的测试。

软件测试一般分为单元测试、集成测试和系统测试。5、根据自己的理解什么是测试用例和测试规程答:狭义的讲,一个测试用例就是测试人员用以测试被测软件的某个特性或特性组合的一组数据。这组数据可能是从用户处得来的实际的一组数据,也可能是测试人员专门设计出来的测试软件某些功能的一组数据。测试规程就是详细的对测试用例设计方法、测试方法、测试工具、测试环境和测试数据进行描述的文档,还可以包括能把某个或某一组测试用例应用到被测软件上完成某项测试的一系列的操作步骤。6、软件验收测试包括哪些内容答:正式验收测试,alpha测试,beta测试。7、设计系统测试计划需要参考哪些文档答:软件测试计划,软件需求工件和迭代计划。8、对面向过程的系统采用的集成策略有哪两种答:自顶向下,自底向上两种。9、.通过画因果图来写测试用例的步骤是什么答:(1)根据程序规格说明书描述,分析并确定因(输入条件)和果(输出结果或程序状态的改变),画出因果图。(2)将得到的因果图转换为判定表。(3)为判定表中每一列所表示的情况设计一个测试用例。10、阶段评审与同行评审有哪些不同答:目的人数内容时间同行评审发现小规模工作产品的错误,只要是找错误3-7人人员必须经过同行评审会议的培训,由SQA指导内容小一般文档<40页,代码<500行一小部分工作产品完成阶段评审评审模块阶段作品的正确性可行性及完整性5人左右评审人必须是专家具有系统评审资格内容多,主要看重点通常是设置在关键路径的时间点上11、什么是软件测试答:测试是为发现错误而执行程序的过程。软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。执行测试用例后,需要跟踪故障,以确保开发的产品适合需求。12、白盒测试有几种方法答:总体上分为静态方法和动态方法两大类。13、静态测试和动态测试有什么区别 答:静态测试不需要在计算机上运行程序;而动态测试需要将程序通过在计算机上运行以发现错误。14、系统测试计划是否需要同行审批,为什么答:需要,系统测试计划属于项目阶段性关键文档,因此需要评审。15、什么是Alpha测试答:Alpha测试(α测试)是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的受控测试,Alpha测试不能由程序员或测试员完成。Alpha测试发现的错误,可以在测试现场立刻反馈给开发人员,由开发人员及时分析和处理。目的是评价软件产品的功能、可使用性、可靠性、性能和支持。尤其注重产品的界面和特色。Alpha测试可以从软件产品编码结束之后开始,或在模块(子系统)测试完成后开始,也可以在确认测试过程中产品达到一定的稳定和可靠程度之后再开始。有关的手册(草稿)等应该在Alpha测试前准备好。16、什么是Beta测试答:Beta测试(β测试)是软件的多个用户在一个或多个用户的实际使用环境下进行的测试。开发者通常不在测试现场,Beta测试不能由程序员或测试员完成。因而,Beta测试是在开发者无法控制的环境下进行的软件现场应用。在Beta测试中,由用户记下遇到的所有问题,包括真实的以及主管认定的,定期向开发者报告,开发者在综合用户的报告后,做出修改,最后将软件产品交付给全体用户使用。Beta测试着重于产品的支持性,包括文档、客户培训和支持产品的生产能力。只有当Alpha测试达到一定的可靠程度后,才能开始Beta测试。由于Beta测试的主要目标是测试可支持性,所以Beta测试应该尽可能由主持产品发行的人员来管理。17、Alpha测试与beta有什么区别答:Alpha测试在系统开发接近完成时对应用系统的测试;测试后仍然会有少量的设计变更。这种测试一般由最终用户或其它人员完成,不能由程序或测试员完成。Beta测试当开发和测试根本完成时所做的测试,最终的错误和问题需要在最终发行前找到。这种测试一般由最终用户或其它人员完成,不能由程序员或测试员完成。18、比较负载测试,容量测试和强度测试的区别答:负载测试:在一定的工作负荷下,系统的负荷及响应时间。强度测试:在一定的负荷条件下,在较长时间跨度内的系统连续运行给系统性能所造成的影响。容量测试:容量测试目的是通过测试预先分析出反映软件系统应用特征的某项指标的极限值(如最大并发用户数、数据库记录数等),系统在其极限值状态下没有出现任何软件故障或还能保持主要功能正常运行。容量测试还将确定测试对象在给定时间内能够持续处理的最大负载或工作量。容量测试的目的是使系统承受超额的数据容量来发现它是否能够正确处理。容量测试是面向数据的,并且它的目的是显示系统可以处理目标内确定的数据容量。19、请简单地描述软件测试活动的生命周期答:测试周期分为计划、设计、实现、执行、总结。其中:计划阶段对整个测试周期中所有活动进行规划,估计工作量、风险,安排人力物力资源,安排进度等;设计阶段完成测试方案,从技术层面上对测试进行规划;实现阶段进行测试用例和测试规程设计;执行阶段根据前期完成的计划、方案、用例、规程等文档,执行测试用例。总结阶段记录测试结果,进行测试分析,完成测试报告。20、软件的缺陷等级应如何划分A类—严重错误,包括以下各种错误:1)由于程序所引起的死机,非法退出;2)死循环;3)数据库发生死锁;4)因错误操作导致的程序中断;5)功能错误;6)与数据库连接错误;7)数据通讯错误B类—较严重错误,包括以下各种错误:1)程序错误;2)程序接口错误;3)数据库的表、业务规则、缺省值未加完整性等约束条件C类—一般性错误,包括以下各种错误:1)操作界面错误(包括数据窗口内列名定义、含义是否一致);2)打印内容、格式错误3)简单的输入限制未放在前台进行控制;4)删除操作未给出提示5)数据库表中有过多的空字段D类—较小错误,包括以下各种错误:1)界面不规范2)辅助说明描述不清楚;3输入输出不规范4)长操作未给用户提示5)提示窗口文字未采用行业术语6)可输入区域和只读区域没有明显的区分标志21、软件具有哪些特点答:(1)软件是一种逻辑实体,而不是具体的物理实体。因而它具有抽象性。(2)软件的生产与硬件不同,它没有明显的制造过程。对软件的质量控制,必须着重在软件开发方面下功夫。(3)在软件的运行和使用期间,没有硬件那样的机械磨损,老化问题。然而它存在退化问题,必须要对其进行多次的修改与维护。(4)软件的开发和运行常常受到计算机系统的制约,对计算机系统有着不同程度的依赖性。为了解除这种依赖性,在软件开发中提出了软件移植的问题。(5)软件的开发至今尚未完全摆脱人工艺的开发方式。(6)软件本身是复杂的。软件的复杂性可能来自它所反映的实际问题的复杂性,也可能来自程序逻辑结构的复杂性。(7)软件成本相当昂贵。软件的研制工作需要投入大量的、复杂的、高强度的脑力劳动,它的成本是比较高的。(8)相当多的软件工作涉及到社会因素。许多软件的开发和运行涉及机构、体制及管理方式等问题,它直接影响到项目的成败。22、软件的分类方法有哪些答:(1)按软件的功能分类(2)按软件服务对象的范围分类(3)按开发软件所需要的人力、时间以及完成的源程序行数分类。(4)按软件工作方式分类:实时处理软件、分时软件、交互式软件、批处理软件。23.简述软件测试人员需要的知识结构。答:★需要具有懂得计算机的基本理论,又有一定开发经验的人员;★需要具有了解软件开发的基本过程和特征,对软件有良好的理解能力,掌握软件测试相关理论及技术的人员;★需要具有软件业务经验的人员;★需要根据测试计划和方案进行软件测试;针对软件需求开发测试模型,制定测试方案,安排测试计划,搭建测试环境,进行基本测试,设计简单的测试用例;★需要具有规划设计环境;编制测试大纲并设计测试用例;对软件进行全面测试工作的人员;★需要具有编制测试计划;评审测试方案,规范测试流程及测试文档;分析测试结果,管理测试项目;★需要会操作软件测试工具的人员。24、白盒测试有哪4个原则答:1)保证一个模块中所有路径至少被测试一次;2)所有逻辑值都要测试真和假两种情况;3)检查程序的内部数据结构是否有效;4)再上、下边界及可操作范围内运行所有循环。25、请简要写出白盒测试常用的7类技术中的5类以上技术。答:逻辑覆盖法、插桩技术、基本路径测试法、域测试法、符号测试、Z路径覆盖法、程序变异测试法26、逻辑覆盖主要测试哪8各方面的覆盖率(写出5个以上)答:(1)语句覆盖(2)判定覆盖(3)条件覆盖(4)条件判定组合覆盖(5)多条件覆盖(6)修正条件判定覆盖(7)组合覆盖(8)路径覆盖27、请详细说明黑盒测试的方法。答:因为黑盒测试是一种基于证明功能需求和用户最终需求的测试方法,所以在选择测试,设计测试方法方面有如下几种。★等价类划分法;★边界值分析法;★因果图法;★判定表驱动测试;★场景法;★功能图法;★错误推测法;★正交试验设计法。在实际测试工作中,往往是综合使用各种方法才能有效提高地提高测试效率和测试覆盖率,这就需要认真掌握这些方法的原理,积累更多的测试经验,以有效地提高测试水平和测试的效率。28、黑盒测试的原则都有哪些答:★根据软件规格说明书设计测试用例,规格说明书的正确性是至关重要的。★有针对性的地找问题,并且正确定位等价类★功能是否有缺陷或错误现象★根据测试的重要性来确定测试等级和测试重点,减少程序可能出现的缺陷。★在接口处,输入的信息是否能正确接受接受后能否输出正确的结果★认真选择测试策略,尽可能发现程序的数据结构错误或外部信息访问错误,站在用户立场上进行测试。29.测试用例主要包括哪些内容答:完整的测试用例通常包括:★测试用例的编号;★测试日期;★测试用例设计人员和测试人员;★测试用例的优先级;★测试标题;★测试目标;★测试环境;★输入数据/动作;★测试的操作步骤;★测试预期的结果。30.设计测试用例所需哪些文档资料答:设计测试用例所需要的文档资料包括:★软件需求说明书;★软件设计说明书;★软件测试需求说明书;★成熟的测试用例(案例库或财富库)。31、简述单元测试的目的。答:单元测试目的主要有以下几点:(1)检查单元模块内部的错误,为软件的评审验收提供依据。(2)单元测试是以程序设计说明书和之前所作的测试数据(正常的和错误的)为指导,测试模块内重要的路径,以检查出错误;(3)检验信息能否正确地流入和流出单元;(4)在单元测试工作过程中,其内部数据能否保持其完整性,包括内部数据的形式、内容及相互关系不发生错误,也包括全局变量在单元中的处理和影响。(5)在为限制数据加工而设置的边界处,能否正确工作。(6)单元的运行能否做到满足特定的逻辑覆盖。(7)单元中发生了错误,其中的出错处理措施是否有效。32.边界条件测试主要测试的是哪3点答:(1)程序内有一个n次循环,这个n次循环应该是1~n,而不是0~n;(2)由小于小于等于等于大于大于等于不等于确定的比较值出错;(3)出线上溢、下溢和地址异常问题。33.请简述功能测试的基本要求。答:功能测试(Functionaltesting)是基于产品功能说明书并根据产品特征、操作描述和用户方案,来测试产品的每个功能是否都能正常使用、是否达到了产品规格说明书的要求。功能测试只需要考虑它的功能点不需要考虑软件的内部结构及代码等。功能测试包括用户界面测试、各种操作的测试、不同的数据输入、逻辑思路、数据输出和存储等的测试。34.请详细说明搜索功能测试的方法主要包括的内容。答:对于搜索功能,主要通过以下八点测试:1.页面检查;2.默认条件搜索;3.修改可选条件搜索;4.修改输入条件搜索;5.修改区间条件搜索;6.组合可选、输入条件搜索;7.操作后检查搜索条件及查询结果;8.错误、空记录搜索。35.请说明集成测试的过程,可以用图表表示。答:集成测试的过程包括:制定集成测试计划,设计集成测试,实施集成测试,执行集成测试,评估集成测试。如下图所示。36.请列举性能测试的先决条件。答:性能测试的先决条件包括:(1)针对性能测试对象的技术要成熟;(2)性能测试的测试环境要稳定;(3)进行性能测试的准备要充分;(4)性能测试的目标要明确;(5)性能测试的计划要详细;(6)性能测试的数据要精确以及要有代表性;(7)性能测试的描述要精练。满足了这些之后我们才能够进入测试阶段。37.一个标准的性能调优过程是是什么答:(1)确定基准环境、基准负载和基准性能指标;(2)调整系统运行环境和实现方法,执行测试。(包括硬件环境的调优、Weblogic调优、Oracle调优);(3)记录测试结果、进行分析。38.简述系统测试的测试类型。答:系统测试一般要考虑功能测试、性能测试、负载测试、容量测试、安全性测试、用户界面测试、配置测试、安装测试、回归测试等。39.正式验收测试是什么答:正式验收测试,是系统测试的后续,也就是说正式测试的测试工作和系统测试差不多,测试计划和测试用例设计都应很详细,在这个测试过程中应用的测试用例应是系统测试的用例的子集,不能对系统的测试方向有所偏离,在很多测试过程中,正式验收是自动进行测试的。40.它的优缺点又是什么答:正式验收测试的优点是:要进行验收测试的软件的功能和特性都是已知的;可以对测试的过程进行评测;正式验收测试可以自动进行测试;对软件的要求是由用户需求说明书所决定的。正式验收测试的缺点:进行正式验收测试需要大量的资源和计划;正式验收测试可能和系统测试差不多;正式验收测试过程中可能不能发现某些缺陷。41.请简要列举回归测试用例库的维护方法。答:软件测试项目组在进行测试的过程中会将所用到的测试用例保存到“测试用例库”中,并进行维护,回归测试用例库的维护方法如下。删除过时的测试用例改进不受控的测试用例删除冗余的测试用例增添新的测试用例42.配置测试的目标都有哪些答:正如同所有测试的目标都是为了保证软件功能的强大,性能的优越,bug报错率小配置测试的目标也是相同的,它的目标有以下几点:★ 验证应用程序(即,确定它是否满足了它的配置要求)。★ 确定配置问题的软件出错。★ 帮助识别那些不能有效地在单元和集成测试发现的一些缺陷。★ 决定增加或修改,如硬件资源的影响:内存、磁盘和磁带资源、处理器、负载均衡。★ 确定最佳的系统配置。43.请用简短的语言介绍易用性测试。答:易用性是交互的适应性、功能性和有效性的集中体现。易用性一般分为两个层次,即用户界面的易用性和操作系统的易用性。易用性测试包括针对应用程序的测试,同时还包括对用户手册系统文档的测试。通常采用质量外部模型来评价易用性。44.请说明需求分析测试的内容。答:需求分析测试的内容主要讨论以下3点:1).功能是否能满足用户的需求2).性能是否能满足用户的需求3).需求说明书所讨论的内容是否得到了用户的认可45.请详细说明软件可靠性测试中需注意的问题。答:软件可靠性测试需要注意的问题主要有3点:1).功能识别软件可靠性测试首先考虑的是功能识别,确定系统所使用的功能。功能识别的目标是:★识别系统所确定的功能(依据系统功能说明书进行审核);★识别系统功能所需的相关条件。2).可靠性对时间的要求软件可靠性对时间的要求是比较高的,测试时应将“运行时间”作为衡量可靠性的重要指标,所谓运行时间就是软件运行时应在“规定的时间”内完成所要完成的工作。对于时间的要求应根据系统性能说明书的要求进行审核。3).可靠性对环境条件的要求环境条件是指软件系统运行时所需的各种支持要素,主要表现为:硬件环境(服务器、路由器、交换机、防火墙、磁盘阵列)、网络操作系统、软件工具、应用系统的操作规程等。46.请列举安装和反安装测试的4个目标。答:安装和反安装测试的目标有4点:1.安装/卸载程序能正确运行;2.程序安装正确;卸载时完全清除;3.程序安装后能正确运行;卸载后系统的影响;4.完善性安装后程序能正确运行。47.简述“5W”规则的含义,明确内容与过程答:“5W”规则指的是“What(做什么)”、“Why(为什么做)”、“When(何时做)”、“Where(在哪里)”、“How(如何做)”。利用“5W”规则创建软件测试计划,可以帮助测试团队理解测试的目的(Why),明确测试的范围和内容(What),确定测试的开始和结束日期(When),指出测试的方法和工具(How),给出测试文档和软件的存放位置(Where)。48.简述QTP测试工具的测试流程答:1)准备录制打开你要对其进行测试的应用程序,并检查QuickTest中的各项设置是否适合当前的要求。2)进行录制打开QuickTest的录制功能,按测试用例中的描述,操作被测试应用程序。3)编辑测试脚本通过加入检测点、参数化测试,以及添加分支、循环等控制语句,来增强测试脚本的功能,使将来的回归测试真正能够自动化。4)调试脚本调试脚本,检查脚本是否存在错误。5)在回归测试中运行测试在对应用程序的回归测试中,通过QuickTest回放对应用程序的操作,检验软件正确性,实现测试的自动化进行。6)分析结果,报告问题查看QuickTest记录的运行结果,记录问题,报告测试结果。49.软件缺陷的表现形式有哪些答:软件未达到产品说明书中已经标明的功能;软件出现了产品说明书中指明不会出现的错误;软件未达到产品说明书中虽未指出但应当达到的目标;软件功能超出了产品说明书中指出的范围;软件测试人员认为软件难以理解、不易使用,或者最终用户认为该软件使用效果不良。50.软件测试的原则有哪些答:(1)测试的目的是为了证伪而不是证真。(2)测试应当有重点。(3)事先定义好产品的质量标准,确定测试用例预期输出结果。(4)软件项目一启动,软件测试也就开始,而不是等到程序写完才开始进行测试。(5)穷举测试是不可能的。(6)第三方进行测试会更客观,更有效。(7)软件测试计划是做好软件测试工作的前提。(8)测试用例是设计出来的,不是写出来的。(9)对发现错误较多的程序段,应进行更深入的测试。(10)重视文档,妥善保存一切测试过程文档。51.用户界面测试原则通常有哪些原则答:1易用性原则;2规范性原则;3.帮助设置原则;4.合理性原则;5.美观与协调性原则;6.菜单位置原则;7.独特性原则;8.快捷方式的组合原则;9.排错性考虑原则;10.多窗口的应用与系统资源原则52.制定测试计划的原则有哪些答:1).制定测试计划应尽早开始2).保持测试计划的灵活性3).保持测试计划简洁和易读4).尽量争取多渠道评审测试计划5).计算测试计划的投入21.简述软件测试的意义。解:随着计算机技术的迅速发展和广泛深入的应用,软件质量问题已成为开发和使用软件人员关注的焦点。而由于软件本身的特性,软件中的错误是不开避免的。不断改进的开发技术和工具只能减少错误的发生,但是却不可能完全避免错误。因此为了保证软件质量,必须对软件进行测试。软件测试是软件开发中必不可少的环节,是最有效的排除和防治软件缺陷的手段,是保证软件质量、提高软件可靠性的最重要手段。22.什么是软件缺陷它的表现形式有哪些解:从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题;从外部看,软件缺陷是系统所需实现的某种功能的失效或违背。它的表现形式主要有以下几种:(1)软件未达到产品说明书中已经标明的功能;(2)软件出现了产品说明书中指明不会出现的错误;(3)软件未达到产品说明书中虽未指出但应当达到的目标;(4)软件功能超出了产品说明书中指出的范围;(5)软件测试人员认为软件难以理解、不易使用,或者最终用户认为该软件使用效果不良。23.简单分析软件缺陷产生的原因,其中那个阶段引入的缺陷最多,修复成本又最低解:软件缺陷产生的主要原因有:需求规格说明错误;设计错误;程序代码有误;其他。其中在需求分析阶段引入的缺陷最多,修复的成本又最低。24.当用户登录某网站购物完毕并退出后,忽然想查查购物时付账的总金额,于是按了浏览器左上角的“退回”按钮,就又回到了退出前的网页,你认为该购物软件有缺陷吗如果有,属于哪一类解:有缺陷。其所属类别与软件产品说明书的要求有关。25.什么是软件测试简述其目的与原则。解:软件测试是为了尽快尽早地发现在软件产品中所存在的各种软件缺陷而展开的贯穿整个软件开发生命周期,对软件产品(包括阶段性产品)进行验证和确认的活动过程。测试目的:(1)证明:获取系统在可接受风险范围内可用的信心;尝试在非正常情况和条件下的功能和特性;保证一个工作产品是完整的并且可用或可被集成。(2)检测:发现缺陷、错误和系统不足;定义系统的能力和局限性;提供组件、工作产品和系统的质量信息。(3)预防:澄清系统的规格和性能;提供预防或减少可能制造错误的信息;在过程中尽早检测错误;确认问题和风险,并且提前确认解决这些问题和风险的途径。测试过程中应注意和遵循的原则:(1)测试不是为了证明程序的正确性,而是为了证明程序不能工作。(2)测试应当有重点。(3)事先定义好产品的质量标准。(4)软件项目一启动,软件测试也就开始,而不是等到程序写完才开始进行测试。(5)穷举测试是不可能的。(6)第三方进行测试会更客观,更有效。(7)软件测试计划是做好软件测试工作的前提。(8)测试用例是设计出来的,不是写出来的。(9)对发现错误较多的程序段,应进行更深入的测试。(10)重视文档,妥善保存一切测试过程文档。26.件测试阶段是如何划分的解:软件测试的阶段划分为:规格说明书审查;系统和程序设计审查;单元测试;集成测试;确认测试;系统测试;验收测试。27.简述软件开发的几个模式,并说明每种模式对软件测试的影响。解:大棒模式简单,计划、进度安排和正规开发过程几乎没有,其开发过程是非工程化的。大棒模式的软件测试通常在开发任务完成后进行,很难回头修复存在的问题,测试工作只是向客户报告软件经过测试后发现的情况。边写边改模式通常最初只有粗略的想法就进行简单的设计,然后开始较长的反复编写、测试和修复过程,在认为无法更精细地描述软件产品要求时就发布产品。该模式下,软件测试人员将和程序员一起陷入可能是长期的循环往复过程。瀑布模式将软件生命周期的各项活动规定为按照固定顺序相连的若干个阶段性工作,形如瀑布流水,最终得到软件产品。软件测试在后期展开,使得开发中出现的问题直到开发后期才显露,失去了及早纠正的机会。快速原型模式首先构造一个功能简单的原型系统,然后通过对原型系统逐步求精,不断扩充完善得到最终的软件系统。原型系统在扩充完善过程中不断被检查、测试和修改。螺旋模式是瀑布模式与边写边改模式演化结合的形式,并加入了风险评估所建立的软件开发模式,其主要思想是在开始时不必详细定义所有细节,而是从小开始,定义重要功能,尽量实现,接受客户反馈,进入下一阶段并重复上述过程,直到获得最终产品。测试在每个阶段都要进行,并从最初就参与。28.简述软件测试过程。解:软件测试过程主要包括如下6个活动:测试计划;测试需求分析;测试设计;测试规程实现;测试执行;总结生成报告。29.“软件测试能够保证软件的质量”这句话对吗软件测试和软件质量之间是什么关系解:不对。软件测试是保障软件质量的手段之一,但不是唯一手段。测试是产品高质量的必要非充分条件,软件测试不能决定软件质量。30.简述软件开发进程与测试进程的关系。解:软件测试是一个贯穿软件开发生命周期的活动,它可以是一个与开发并行的过程,也可以是在开发完成某个阶段任务之后的活动。31.对软件测试的复杂性进行归纳分析。解:软件测试的复杂性在于:无法对程序进行完全的测试;测试无法保证被测程序中无遗留错误;不能修复所有的软件故障。32.分别解释什么是静态测试、动态测试、黑盒测试、白盒测试、人工测试和自动化测试。解:所谓静态测试是指不运行被测软件,仅通过分析或检查等其他手段达到检测的目的。所谓动态测试是指通过运行被测软件,检查运行结果与预期结果的差异,并分析运行效率和健壮性等性能。黑盒测试是指在对程序进行的功能抽象的基础上,将程序划分成功能单元,然后对每个功能单元生成测试数据进行测试。用这种方法进行测试时,被测程序被当作打不开的黑盒,因而无法了解其内部构造,因此又称为功能测试。白盒测试又称为结构测试或逻辑驱动测试,它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能。广义上,人工测试是人为测试和手工测试的统称。人为测试的主要方法有桌前检查,代码审查和走查。手工测试指的是在测试过程中,按测试计划一步一步执行程序,得出测试结果并进行分析的测试行为。自动化测试指的是利用测试工具来执行测试,并进行测试结果分析的测试行为。33.如果没有软件规格说明或需求文档,可以进行动态黑盒测试吗为什么解:不行。因为黑盒测试是基于软件规格说明的测试。34.在单元测试中,所谓单元是如何划分的解:单元测试的对象通常是软件设计的最小逻辑单元,单元的划分在面向过程的结构化程序中一般是函数或子过程,在面向对象的程序中可以是类或类的成员函数。35.简述单元测试的主要任务。解:单元测试的主要任务是:模块接口测试;局部数据结构测试;路径测试;错误处理测试;边界测试。36.如果开发时间紧迫,是否可以跳过单元测试而直接进行集成测试为什么解:不可以。因为没有经过单元测试的模块会遗留大量的缺陷到集成测试阶段,而在集成测试阶段对这些缺陷定位困难,导致后续工作展开困难,修复缺陷成本成指数级增长。37.什么是驱动模块和桩模块为下面的函数构造一个驱动模块。intdivide(inta,intb){intc;if(b==0){printf("除数不能为0");return0;}c=a/b;returnc;}解:驱动模块是用以模拟被测模块的上级模块,它接收测试数据,传送数据给被测模块,启动被测模块,最后输出实测结果。桩模块用以模拟被测模块工作过程中所调用的子模块。函数驱动模块:voidmain(){intx,y,z;scanf(“%d%d”,&x,&y);z=divide(x,y);printf(“%d”,z);}38.什么是回归测试什么时候进行回归测试解:回归测试就是重新运行现有测试用例测试原有功能,以便确定变更是否达到了预期的目的,检查变更是否损害了原有的正常功能。每当软件发生变化时就应进行回归测试。39.集成测试有哪些不同的集成方法简述不同方法的特点。解:集成测试通常有一次性集成、自顶向下集成、自底向上集成和混合集成4种集成方法。一次性集成方法需要的测试用例数目少,测试方法简单、易行。但是由于不可避免存在模块间接口、全局数据结构等方面的问题,所以一次运行成功的可能性不大;如果一次集成的模块数量多,集成测试后可能会出现大量的错误,给程序的错误定位与修改带来很大的麻烦;即使集成测试通过,也会遗漏很多错误进入系统测试。自顶向下集成在测试的过程中,可以较早地验证主要的控制和判断点;一般不需要驱动程序,减少了测试驱动程序开发和维护的费用;可以和开发设计工作一起并行执行集成测试,能够灵活的适应目标环境;容易进行故障隔离和错误定位。但是在测试时需要为每个模块的下层模块提供桩模块,桩模块的开发和维护费用大;桩模块不能反映真实情况,重要数据不能及时回送到上层模块,导致测试不充分;涉及复杂算法和真正I/O的底层模块最易出问题,在后期才遇到导致过多的回归测试。自底向上集成可以尽早的验证底层模块的行为;提高了测试效率;一般不需要桩模块;容易对错误进行定位。但是直到最后一个模块加进去之后才能看到整个系统的框架;驱动模块的设计工作量大;不能及时发现高层模块设计上的错误。混合集成具有自顶向下和自底向上两种集成策略的优点,但是在被集成之前,中间层不能尽早得到充分的测试。40.系统测试主要包括哪些内容解:系统测试主要包括强度测试、性能测试、恢复测试、安全测试、可靠性测试、安装测试、容量测试和文档测试。41.验收测试是由谁完成的通常包含哪些过程解:验收测试是以用户为主的测试,软件开发人员和QA(质量保证)人员也应参加。通常包含α测试和β测试过程。42.分析比较面向对象的软件测试与传统的软件测试的异同。解:传统的单元测试的对象是软件设计的最小单位——模块。当考虑面向对象软件时,单元的概念发生了变化,此时最小的可测试单位是封装的类或对象,而不再是个体的模块。传统单元测试主要关注模块的算法实现和模块接口间数据的传递,而面向对象的单元测试主要考察封装在一个类中的方法和类的状态行为。面向对象软件没有层次的控制结构,因此传统的自顶向下和自底向上集成策略就不再适合,它主要有以下两种集成策略:基于类间协作关系的横向测试;基于类间继承关系的纵向测试。系统测试一般不考虑内部结构和中间结果,因此面向对象软件系统测试与传统的系统测试差别不大。面向对象软件测试的整体目标和传统软件测试的目标是一致的,即以最小的工作量发现尽可能多的错误,但是面向对象测试的策略和战术有很大不同。测试的视角扩大到包括复审分析和设计模型,此外,测试的焦点从过程构件(模块)移向了类。43.分析黑盒测试方法的特点。解:黑盒测试又称为功能测试或数据驱动测试,主要针对软件界面、软件功能、外部数据库访问以及软件初始化等方面进行测试。优点:1)比较简单,不需要了解程序内部的代码及实现;2)与软件的内部实现无关;3)从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;4)基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;5)在做软件自动化测试时较为方便。缺点:1)不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;2)自动化测试的复用性较低。44.健壮等价类测试与标准等价类测试的主要区别是什么解:主要区别在于健壮等价类测试在标准等价类的基础上还要进行有效取值范围之外的输入(无效输入)的测试。45.试用等价分类法设计测试用例测试党政管理系统中党员出生年月的输入设计是否符合要求,假设出生年月格式为yyyymmdd。解:输入数据无效等价类有效等价类出生年月日①8位数字字符②有非数字字符③少于8个数字符④多于8个数字符对应数值⑤在0101之间⑥<⑦>月份对应数值⑧在1-12之间⑨等于"00"⑩>12日期对应值eq\o\ac(○,)1,3,5,7,8,10,12月在1-31之间eq\o\ac(○,)4,6,9,11月在1-30之间eq\o\ac(○,)闰年2月在1-29之间eq\o\ac(○,)非闰年2月在1-28之间eq\o\ac(○,)等于"00"eq\o\ac(○,)>31eq\o\ac(○,)2,4,6,9,11月等于"31"eq\o\ac(○,)2月等于"30"eq\o\ac(○,)非闰年2月等于"29"46.试为三角形问题中的直角三角形开发一个决策表和相应的测试用例。注意,会有等腰直角三角形。解:判断构成的是否为直角三角形的问题的决策表设计如下:c1:a<b+cFTTTTTTTTTTc2:b<a+c-FTTTTTTTTTc3:c<a+b--FTTTTTTTTc4:a2+b2=c2---TTTTFFFFc5:a2+c2=b2---TTFFTTFFc6:b2+c2=a2---TFTFTFTFa1:非三角形XXXa2:直角三角形XXXa3:非直角三角形Xa4:不可能XXXX根据该决策表设计测试用例如下:用例IDabc预期输出DT1412非三角形DT2142非三角形DT3124非三角形DT4不可能DT5不可能DT6不可能DT7345直角三角形DT8不可能DT9354直角三角形DT10534直角三角形DT11234非直角三角形47.简述白盒测试用例的设计方法,并进行分析总结。解:白盒测试用例设计方法主要有逻辑覆盖和独立路径测试。从覆盖源程序语句的详尽程度分析,逻辑覆盖主要有以下不同的覆盖标准:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖。实际项目中,由于程序内部的逻辑存在不确定性和无穷性,尤其对于大规模复杂软件,不必采用所有的覆盖指标,而应根据实际情况选择合适的覆盖指标。独立路径测试是在程序控制流图的基础上,通过分析控制结构的环路复杂性,导出可执行的独立路径集合,从而设计出相应的测试用例。设计出的测试用例要保证被测程序的每条可执行的独立路径至少被执行一次。独立路径测试给出了满足路径覆盖指标所需测试用例的下限,同时给出了语句覆盖的上限,它可以确保对所有相互独立的决策结果进行测试。48.分析归纳逻辑覆盖的各种策略,并比较每种覆盖的特点,分析在怎样的情况下采用何种覆盖方式。解:语句覆盖是选择足够多的测试数据,使被测程序中每个语句至少执行一次。语句覆盖是最弱的逻辑覆盖标准。判定覆盖又叫分支覆盖,它不仅每个语句必须至少执行一次,而且每个判定表达式的每种可能的结果都应该至少执行一次。判定条件覆盖比语句覆盖强,但是对程序逻辑的覆盖程度仍然不高。条件覆盖的含义是,使判定表达式中的每个条件都取到各种可能的结果。条件覆盖通常比判定覆盖强,但是也可能有相反的情况:虽然每个条件都取到了两个不同的结果,判定表达式却始终只取一个值。判定/条件覆盖的含义是,选取足够多的测试数据,使得判定表达式中的每个条件都取到各种可能的值,而且每个判定表达式也都取到各种可能的结果。但有时判定/条件覆盖也并不比条件覆盖更强。条件组合覆盖是更强的逻辑覆盖标准,它要求选取足够的测试数据,使得每个判定表达式中条件的各种可能组合都至少出现一次。满足条件组合覆盖标准的测试数据,也一定满足判定覆盖、条件覆盖和判定/条件覆盖标准。因此,条件组合覆盖是前述几种覆盖标准中最强的。但是,满足条件组合覆盖标准的测试数据并不一定能使程序中的每一条路径都执行到。路径覆盖的定义是选取足够多测试数据,使程序的每一条可能路径都至少执行一次。但在实际问题中,一个不太复杂的程序,其路径数都可能是一个庞大的数字,以致要在测试中覆盖所有的路径是不可能实现的。即使对于路径数有限的程序做到了路径覆盖,也不能保证被测程序的正确性。49.对图所示程序段进行语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖方法进行测试用例设计。图练习题3解:语句覆盖:x=90,y=90x=79,y=90x=70,y=60判定覆盖:同上条件覆盖:同上判定/条件覆盖:同上条件组合覆盖:=1\*ROMANIx>=80,y>=80=2\*ROMANIIx>=80,y<80=3\*ROMANIIIx<80,y>=80=4\*ROMANIVx<80,y<80=5\*ROMANVx>=90,y>=90,x+y>=140=6\*ROMANVIx>=90,y<90,x+y>=140=7\*ROMANVIIx<90,y>=90,x+y>=140=8\*ROMANVIIIx<90,y<90,x+y>=140=9\*ROMANIXx>=90,y>=90,x+y<140不存在=10\*ROMANXx>=90,y<90,x+y<140=11\*ROMANXIx<90,y>=90,x+y<140=12\*ROMANXIIx<90,y<90,x+y<140x=90,y=90x=90,y=70x=70,y=90x=70,y=70x=100,y=30x=30,y=100x=80,y=50路径覆盖:同语句覆盖50.请为下述语句按照各种覆盖方法设计测试用例。if(a>2&&b<3&&(c>4||d<5)){statement;}else{statement;}解:语句覆盖:a=3,b=2,c=5,d=5a=2,b=2,c=5,d=5判定覆盖:同上条件覆盖:a=3,b=2,c=5,d=5a=2,b=4,c=3,d=4判定/条件覆盖:同条件覆盖条件组合覆盖:=1\*ROMANIa>2,b<3,c>4,d<5=2\*ROMANIIa>2,b<3,c>4,d>=5=3\*ROMANIIIa>2,b<3,c<=4,d<5=4\*ROMANIVa>2,b<3,c<=4,d>=5=5\*ROMANVa>2,b>=3,c>4,d<5=6\*ROMANVIa>2,b>=3,c>4,d>=5=7\*ROMANVIIa>2,b>=3,c<=4,d<5=8\*ROMANVIIIa>2,b>=3,c<=4,d>=5=9\*ROMANIXa<=2,b<3,c>4,d<5 =10\*ROMANXa<=2,b<3,c>4,d>=5=11\*ROMANXIa<=2,b<3,c<=4,d<5=12\*ROMANXIIa<=2,b<3,c<=4,d>=5=13\*ROMANXIIIa<=2,b>=3,c>4,d<5=12\*ROMAN=14\*ROMANXIVa<=2,b>=3,c>4,d>=5=15\*ROMANXVa<=2,b>=3,c<=4,d<5=12\*ROMAN=16\*ROMANXVIa<=2,b>=3,c<=4,d>=5测试数据略51.针对test函数按照基本路径测试方法设计测试用例。

int

Test(int

i_count,

int

i_flag)

{

int

i_temp

=

0;

while

(i_count>0)

{

if

(0

==

i_flag)

{

i_temp

=

i_count

+

100;

break;

}

else

{

if

(1

==

i_flag)

{

i_temp

=

i_temp

+

10;

}

else

{

i_temp

=

i_temp

+

20;

}

}

i_count--;

}

return

i_temp;

}解:intTest(inti_count,inti_flag){1inti_temp=0;2while(i_count>0){3If(0==i_flag){4i_temp=i_count+100;5break;}6else{7If(1==i_flag){8i_temp=i_temp+10;}9else{10i_temp=i_temp+20;}}11i_count--;}12returni_temp;}程序控制流图:程序环路复杂度:CC=4基本路径集:path11-2-12Path21-2-12Path3Path40-11-2-12设计测试用例:用例IDi_counti_flag预期输出test11110test2020test320102test41320pgqpgqmnabchYNNNNYYYYNf图练习题6解:(2+2*2)*2=1253.简述软件测试自动化的意义。解:软件测试自动化的意义是:(1)提高测试效率;(2)降低对软件新版本进行回归测试的开销;(3)完成手工测试不能或难以完成的测试;(4)具有一致性和可重复性;(5)更好地利用资源;(6)降低风险,增加软件信任度。54.在运用软件自动化测试时,应注意哪些缺点和事项解:应注意:(1)软件自动化测试可能降低测试的效率;(2)测试首次运行时,可能发现大量错误,但当进行过多次测试后,发现错误的机率会相对较小,除非对软件进行了修改或在不同的环境下运行;(3)如果缺乏测试经验,测试的组织差、文档少或不一致,则自动化测试的效果比较差;(4)技术问题。作为第三方的技术产品,如果不具备解决问题的能力和技术支持或者产品适应环境变化的能力不强,将使得软件自动化工具的作用大大降低。55.软件测试工具主要分为哪个大类解:根据测试方法不同,分为白盒测试工具和黑盒测试工具。根据测试的对象和目的,分为单元测试工具、功能测试工具、负载测试工具、性能测试工具和测试管理工具等。56.简述软件测试管理过程。解:首先由一位对整个系统设计熟悉的设计人员编写测试大纲,明确测试的内容和测试通过的准则,设计完整合理的测试用例,以便系统实现后进行全面测试。然后在实现组将所开发的程序经验证后,提交测试组,由测试负责人组织测试,测试一般可按下列方式组织:(1)测试人员仔细阅读有关资料,包括规格说明、设计文档、使用说明书及在设计过程中形成的测试大纲、测试内容及测试的通过准则,全面熟悉系统,编写测试计划,设计测试用例,作好测试前的准备工作。(2)为了保证测试的质量,将测试过程分成几个阶段,即:代码审查、单元测试、集成测试、确认测试和系统测试。57.简述软件测试管理的主要功能。解:软件测试管理的主要功能是:测试控制对象的编辑和管理;测试流程控制和管理;统计分析和决策支持58.列举几种WR学习软件GUI的不同方式。解:(1)使用RapidTestScriptwizard学习软件每个窗体中所有GUI对象的属性。(2)通过录制脚本的方法学习被录制的那部分软件中所有的GUI对象的属性。(3)使用GUIMapEditor学习单个GUI对象、窗体或某个窗体中所有GUI对象的属性。59.分别简述WR中同步点和检查点的作用。解:当测试人员执行测试时,所测试的应用程序每次操作的响应时间并不一定,有时快,有时慢,导致执行输入动作的时间也需要等待。在测试脚本中插入同步点,当WinRunner执行到同步点时,会暂停执行以等待应用程序某些状态的改变后,再继续执行,以避免应用程序响应的时间超过WinRunner等待的时间而导致测试执行失败。设定检查点可以检查所设定区域的显示是否和预期结果相符。通过检查点的设置以及对各点处输出信息的编程定义,可以在脚本运行结果单中查看各项测试内容是否都已通过。在功能测试中,检查点可以用在以下两个方面:检查应用程序经过修改后对象状态是否发生变化;检查对象数据是否和预期数据一致。60.比较WinRunner中GUIdeMapFileperTest和GlobalGUIMapFile两种模式的区别。解:两种模式GUIMapFileperTestGlobalGUIMapFile方法在测试的过程中将自动保GUI信息,打开测试时可以自动加载GUI文件在测试的过程中需要保存GUI,当应用程序改变时必须更新GUI文件优点1.每个测试都有自己的GUI文件2.不必保存或加载GUI3.维护和修改简单(重录一次即可)1.当对象或窗体的描述改变,只需把GUI文件里对应的属性作相应的修改2.容易维护和更新(无须重录)缺点只要应用程序的GUI改变,每个测试的GUI文件都要重录或修改当新建GUI或运行测试脚本时必须保存或装载GUI文件建议适用于初学者或被测软件的GUI不会产生变化适用于经验丰富的WinRunner使用者,或被测软件的GUI可能会经常产生变化61.简述利用WinRunner进行测试的过程可分为哪几个阶段,即操作步骤是什么解:WR的测试过程分为以下六个阶段:(1) 创建GUImap;(2)创建测试;(3)调试测试;(4)执行测试;(5)查看测试结果;(6)报告发现的错误。62.给出WinRunner中将测试脚本转换为数据驱动测试脚本的一种实现步骤。解:可以通过下列步骤将测试脚本转换成数据驱动测试脚本:(1)加上开启及关闭数据表的指令;(2)加上循环并读取数据表的每一笔数据;(3)将录制的固定值与检查点的值参数化为数据表的字段值。63.现有一个桌面软件的数据显示模块需要测试,请为其编写驱动程序。该显示模块的界面上有一个名为DataGridView1数据显示控件;数据来源是存放在本地磁盘D的Data文件夹下的名为的Access格式的数据库文件中的名为students的表;希望显示表中所有记录的ID,NAME,ADDRESS三个字段的内容。解:Usingprivatevoidbutton1_Click(objectsender,EventArgse){OleDbConnectionconn=newOleDbConnection("Provider=Source=d:\\Data\\");-(信息)安全性参考计算机系统安全性(computersystemsecurity)serviceabilitytesting--可服务性测试参考可维护性测试(maintainabilitytesting)simplesubpath--简单子路径控制流的一个子路径,其中没有不必要的部分被执行。simulation--模拟使用另一个系统来表示一个物理的或抽象的系统的选定行为特性。simulation--模拟使用一个可执行模型来表示一个对象的行为。simulator--模拟器软件验证期间的一个设备、软件程序、或系统,当它给定一个控制的输入时,表现的与一个给定的系统类似。SLA--服务级别协议(servicelevelagreement)服务提供商与客户之间的一个协议,用于规定服务提供商应当提供什么服务。SmokeTesting--冒烟测试对软件主要功能进行快餐式测试。最早来自于硬件测试实践,以确定新的硬件在第一次使用的时候不会着火。softwaredevelopmentprocess--软件开发过程一个把用户需求转换为软件产品的开发过程。softwarediversity--软件多样性一种软件开发技术,其中,由不同的程序员或开发组开发的相同规格的不同程序,目的是为了检测错误、增加可靠性softwareelement--软件元素软件开发或维护期间产生或获得的一个可交付的或过程内的文档。softwareengineering--软件工程一个应用于软件开发、操作和维护的系统性的、有纪律的、可量化的方法。softwareengineeringenvironment--软件工程环境执行一个软件工程工作的硬件、软件和固件。softwarelifecycle--软件生命周期开始于一个软件产品的构思,结束于该产品不再被使用的这段期间。SOP--标准操作过程(standardoperatingprocedures)书面的步骤,这对保证生产和处理的控制是必须的。sourcecode--源代码用一种适合于输入到汇编器、编译器或其它转换设备的计算机指令和数据定义。sourcestatement--源语句参考语句(statement)specification--规格组件功能的一个描述,格式是:对指定的输入在指定的条件下的输出。specifiedinput--指定的输入一个输入,根据规格能预知其输出。spiralmodel--螺旋模型软件开发过程的一个模型,其中的组成活动,典型的包括需求分析,概要设计,详细设计,编码,集成和测试等活动被迭代的执行直到软件被完成。SQL--结构化查询语句(structuredquerylanguage)在一个关系数据库中查询和处理数据的一种语言。state--状态一个系统、组件或模拟可能存在其中的一个条件或模式。statediagram--状态图一个图形,描绘一个系统或组件可能假设的状态,并且显示引起或导致一个状态切换到另一个状态的事件或环境。statetransition--状态转换一个系统或组件的两个允许状态之间的切换。statetransitiontesting--状态转换测试根据状态转换来设计测试用例的一种方法。statement--语句程序语言的一个实体,是典型的最小可执行单元。statementcoverage--语句覆盖在一个组件中,通过执行一定的测试用例所能达到的语句覆盖百分比。statementtesting--语句测试根据语句覆盖来设计测试用例的一种方法。StaticAnalysis--静态分析分析一个程序的执行,但是并不实际执行这个程序。StaticAnalyzer--静态分析器进行静态分析的工具。StaticTesting--静态测试不通过执行来测试一个系统。statisticaltesting--统计测试通过使用对输入统计分布进行分析来构造测试用例的一种测试设计方法。stepwiserefinement--逐步优化一个结构化软件设计技术,数据和处理步骤首先被广泛的定义,然后被逐步的进行了细化。storagetesting--存储测试验证系统是否满足指定存储目标的测试。StressTesting--压力测试在规定的规格条件或者超过规定的规格条件下,测试一个系统,以评价其行为。类似负载测试,通常是性能测试的一部分。structuralcoverage--结构化覆盖根据组件内部的结构度量覆盖率。structuraltestcasedesign--结构化测试用例设计根据组件内部结构的分析来设计测试用例的一种方法。structuraltesting--结构化测试参考结构化测试用例设计(structuraltestcasedesign)structuredbasistesting--结构化的基础测试根据代码逻辑设计测试用例来获得100%分支覆盖的一种测试用例设计技术。structureddesign--结构化设计软件设计的任何遵循一定纪律的方法,它按照特定的规则,例如:模块化,有顶向下设计,数据逐步优化,系统结构和处理步骤。struct

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论