软件测试用例分析-习题完美整合版1
- 格式:doc
- 大小:2.44 MB
- 文档页数:22
场景分析法一、以答题业务为例:1.答对题目增加题目积分,积分达到设定值时奖励一个礼包;2.取题规则为随机不重复;3.答错题目后答新题.1.确定基本流与备选流基本流: 步骤1. 开始答题步骤2. 判断是否存在有效题目,存在有效题目,处理:提供题目及备选答案步骤3. 用户答题并答对题目,增加用户相应积分。
步骤4. 判断积分是否达到设定值,达到,获取一个礼包,流程结束。
备选流1: 不存在有效题目基本流步骤2时,题库不存在未答题目,处理:给予无有效题目提示,流程结束。
备选流2: 答错题目基本流步骤3时,答错题目,处理:提示用户答错题目,回到基本流步骤2备选流3:答题后积分达不到设定值基本流步骤4时,答对题后积分仍达不到设定值,处理:回到基本流步骤22.确定以下用例场景:3.通过从确定执行用例场景所需的数据元素入手构建矩阵4.设计数据,把数据填入上面的用例表中二、下图所示是ATM例子的流程示意图。
2.场景设计:下表所示是生成的场景。
3.用例设计4.测试用例表三、用户进入一个在线购物网站进行购物,选购物品后,进行在线购买,这时需要使用账号登录,登录成功后,进行付钱交易,交易成功后,生成订购单,完成整个购物过程。
第一步:确定基本流和备选流基本流:登录在线网站→选择物品→登录账号→付款→生成订单;备选流1:账户不存在;备选流2:账户密码错误;备选流3:用户账户余额不足;备选流4:用户账户没钱。
第二步:根据基本流和备选流确定场景场景1成功购物:备选流;场景2账号不存在:基本流,备选流1;场景3账号密码错误:基本流,备选流2;场景4账户余额不足:基本流,备选流3;场景5账户没钱:基本流,备选流4。
等价类划分法一、计算保费费率的程序(1)分析程序规格说明中给出和隐含的对输入条件的要求,列出等价类表(包括有效等价类和无效等价类)。
年龄:一位、两位或三位整数,值的有效范围为0~120性别:一位英文字符,只能取值‘M’或‘F’婚姻:字符,只能取值‘已婚’或‘未婚’抚养人数:空白或一位非零整数(1~9)(2)根据(1)中的等价类表,设计能覆盖所有等价类的测试用例。
软件测试课堂测验第一次测验:Consider an application App that takes two inputs name and age, where name is a nonempty string containing at most 20 alphabetic characters and age is an integer that must satisfy the constraint 0≤age≤120. The App is required to display an error message if the input value provided for age is out of range. The application truncates any name that is more than 20-character in length and generates an error message if an empty string is supplied for name.(1)Please find out the equivalence classes(等价类). (30分)(2)Construct test cases using the equivalence classes derived in(1)(20分)答案:Consider a method fp, brief for findPrice, that takes two inputs code and qty. The item code is represented by the integer code and the quantity purchased by another integer variable qty. fp accesses a database to find and display the unit price, the description, and the total price of the item corresponding to code. fp is required to display an error message, and return, if either of the two inputs is incorrect. Assuming that an item code must be in the range 99…999 and quantity in the range 1…100.Please give your test cases using boundary-value analysis.(50分)答案:第二次:1.Develop a decision table for the descriptions belowNo charges are reimbursed(报销)to the patient until the deductible(扣除)has been met. After the deductible has been met, the amount to be reimbursed depends on whether or not the doctor or hospital is a "Preferred Provider." For preferred providersDoctor's office visits are reimbursed at 65% and Hospital visits are reimbursed at 95%. For other providers reimburse 50% for Doctor's Office visits or 80% for Hospital visits.答案:2.Develop a decision table for the YesterDate function.答案:第三次:Cause-Effect Testing:In a given network, the sendfile command is used to send a file to a user on a different file server. The sendfile command takes three arguments: the first argument should be an existing file in the sender’s home directory, the second argument should be the name of the receiver’s file server, and the third argument should be the receiver’s userid. If all the arguments are correct, then the file is successfully sent; otherwise the sender obtains an error message.答案:中国象棋走马下法:1. 如果落点在棋盘外,则不移动棋子;2. 如果落点与起点不构成日字形,则不移动棋子;3. 如果落点处有自己放棋子,则不移动棋子;4. 如果在落点方向的邻近交叉点有棋子(绊马腿),则不移动棋子;5. 如果不属于1-4,且落点处无棋子,则移动棋子;6.如果不属于1-4,且落点处为对方棋子(非老将),则移动棋子并除去对方棋子。
软件测试用例模板一详细用例经典1.用例名称:用户登录用例描述:测试用户登录功能是否正常。
先决条件:用户已注册并拥有登录账号及密码。
步骤:1.打开应用程序。
2.点击“登录”按钮。
3.输入正确的用户名和密码。
4.点击“登录”按钮。
期望结果:1.应用程序成功打开。
2.能够正确跳转到登录页面。
3.用户名和密码能够成功输入。
4.可以成功登录到用户账号。
2.用例名称:用户注册用例描述:测试用户注册功能是否正常。
先决条件:用户未注册过账号。
步骤:1.打开应用程序。
2.点击“注册”按钮。
3.输入需要注册的用户名和密码。
4.点击“注册”按钮。
期望结果:1.应用程序成功打开。
2.能够正确跳转到注册页面。
3.用户名和密码能够成功输入。
4.注册后能够成功登录到用户账号。
3.用例名称:发送邮件用例描述:测试发送邮件功能是否正常。
先决条件:用户已登录。
步骤:1.打开邮件功能页面。
2.点击“新建邮件”按钮。
3.输入邮件主题、收件人和内容。
4.点击“发送”按钮。
期望结果:1.邮件页面正常打开。
2.能够成功打开新建邮件页面。
3.邮件主题、收件人和内容能够成功输入。
4.邮件发送成功并能够成功保存到发件箱。
4.用例名称:接收邮件用例描述:测试接收邮件功能是否正常。
先决条件:用户已登录,并有发送给用户的邮件。
步骤:1.打开邮件功能页面。
2.点击“收件箱”按钮。
3.选择并打开一封邮件。
4.阅读邮件内容。
期望结果:1.邮件页面正常打开。
2.能够成功进入收件箱。
3.能够成功选择并打开邮件。
4.邮件内容能够正常显示,并且可以正常阅读。
5.用例名称:退出登录用例描述:测试退出登录功能是否正常。
先决条件:用户已登录。
步骤:1.打开应用程序。
2.点击“退出登录”按钮。
期望结果:1.应用程序成功打开。
2.能够正常退出登录,并返回到登录页面。
以上是对于软件测试用例模板一的一个示例,用例名称根据实际情况进行命名,用例描述详细描述了用例的功能和先决条件,步骤中列出了实现该功能的具体步骤,期望结果描述了每个步骤的预期结果。
一、判断分析题1.软件测试的目的是尽可能多的找出软件的缺陷.Y2.软件测试的目的是证明软件没有错误.N3.测试组负责软件质量.N4.程序的效率与程序的复杂性相关.N5.软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性. Y6.测试程序仅仅按预期方式运行就行了.N7.好的测试员不懈追求完美. Y8.不存在质量很高但可靠性很差的产品.N9.测试是为了验证该软件已正确地实现了用户的要求. N10.发现错误多的程序模块,残留在模块中的错误也多.Y11.程序效率的提高主要应通过选择高效的算法来实现. Y12.测试人员要坚持原则,缺陷未修复完坚决不予通过.N13.项目立项前测试人员不需要提交任何工件.Y14.缺陷跟踪系统只针对对测试人员来使用.N15.从用户软件开发者的角度出发,普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否可接受该产品. N16.软件项目在进入需求分析阶段,测试人员应该开始介入其中. Y17.测试是提高产品质量根本手段.18.代码评审员一般由测试员担任.N19.代码评审是检查源代码是否达到模块设计的要求.N20.软件测试员可以对产品说明书进行白盒测试.N21.静态白盒测试可以找出遗漏之处的问题.Y22.总是首先设计白盒测试用例.N23.用黑盒法测试时,测试用例是根据程序内部逻辑设计的.N24.黑盒测试方法中最有效的是因果图法.Y25.软件测试按照测试过程分类为黑盒、白盒测试.N26.白盒测试又称结构测试、逻辑驱动测试或基于程序的测试.Y27.白盒测试时一般由开发人员兼任测试人员的角色.Y28.黑盒测试是从用户观点出发的测试.Y29.白盒测试是从用户观点出发的测试.N30.白盒测试根据程序外部特征进行测试,黑盒测试根据程序内部逻辑结构进行测试.N31.程序通过了全面的白盒测试,就不需要再进行黑盒测试了.N32.对于同一个测试对象,等价类的测试用例数多于边界值的测试用例数.33.如果输入条件规定了取值范围,则可定义一个有效等价类和两个无效等价类.Y34.不能对输出值域进行健壮性测试.35.有n个变量的函数的健壮最坏情况测试用例的个数为:5的n次方.Y36.有n个变量的函数的健壮最坏情况测试用例的个数为:7的n次方.N37.有n个变量的函数的健壮性测试用例的个数为:5n+1.N38.有n个变量的函数的最坏情况测试会产生5的n次方个测试用例.Y39.有n个变量的函数的边界值分析会产生4n+1个测试用例Y40.边界值分析的假设是“多缺陷”假设 .N41.健壮性测试的主要价值是观察例外情况的处理.Y42.在设计测试用例时,应包括合理的输入条件和不合理的输入条件.Y43.弱健壮等价类测试基于多缺陷假设.N44.强健壮等价类测试是基于多缺陷假设,并考虑了无效值.Y45.强一般等价类测试考虑了无效值.Y46.弱一般等价类是基于单缺陷假设.Y47.弱健壮等价类测试基于单缺陷假设并考虑了无效值.Y48.等价类测试的弱形式不如对应的强形式的测试全面Y49.语句覆盖是最弱的逻辑覆盖.Y50.语句覆盖是最强的逻辑覆盖.N51.判定覆盖不一定包含条件覆盖.Y52.条件覆盖不一定包含判定覆盖.Y53.判定/条件覆盖能同时满足判定、条件两种覆盖标准.Y54.判定/条件覆盖指满足判定覆盖标准或条件覆盖标准.N55.DD-路径图是一种压缩图.Y56.详细设计的目的是为软件结构图中的每一个模块确定使用的算法和块内数据结构,并用某种选定的表达工具给出清晰的描述. Y57.尽量用公共过程或子程序去代替重复的代码段.N58.对于连锁型分支结构,若有n个判定语句,则有2n条路径.Y59.尽量采用复合的条件测试,以避免嵌套的分支结构.Y60.GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁.Y61.单元测试能发现约80%的软件缺陷.Y62.单元测试属于动态测试. N63.单元测试多采用白盒测试结构性测试技术.Y64.单元测试需要从程序的内部结构出发设计测试用例.Y65.单元测试需要为每个基本单元开发驱动模块或桩模块.Y66.在面向对象语言语言中,单元测试是函数或子过程.67.单元测试又称为模块测试,是针对软件测试的最小单位-程序模块进行正确性检验的测试工作.Y68.集成测试计划在需求分析阶段末提交.N69.自底向上集成需要测试员编写驱动程序.Y70.进行自底向上集成测试,需要为所测模块或子系统编制相应的驱动模块.Y71.进行自底向上集成测试,需要为所测模块或子系统编制相应的桩模块.N72.进行自顶向下集成测试,需要为所测模块或子系统编制相应的驱动模块.N73.进行自顶向下集成测试,需要为所测模块或子系统编制相应的桩模块.Y74.MM-路径是可执行路径.Y75.非渐增式集成方式,发现错误难以诊断定位.Y76.集成测试是检验程序单元或部件的接口关系,逐步集成为符合概要设计要求的程序部件或整个系统.Y77.系统测试多采用白盒测试结构性测试技术.N黑盒测试78.验收测试是由最终用户来实施的.N79.负载测试是验证要检验的系统的能力最高能达到什么程度.N80.我们可以人为的使得软件不存在配置问题.N81.可以发布具有配置缺陷的软件产品.Y82.所有软件必须进行某种程度的兼容性测试. Y83.所有软件都有一个用户界面,因此必须测试易用性. N84.β测试是由软件的多个用户在实际使用环境下进行的测试.Y85.系统测试是在真实或模拟系统运行环境下,检查完整的程序系统能否和相关硬件、外设、网络、系统软件和支持平台等正确配置与连接,并满足用户需求.Y86.Beta 测试是验收测试的一种.Y二、简答题1.什么是软件测试软件测试的目的和作用是什么答:利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估.软件测试是在受控制的条件下对系统或应用程序进行操作并评价操作的结果.软件测试的目的是以最少的时间和人力,系统地找出软件中潜在的各种错误和缺陷.测试是为了证明程序有错,而不是证明程序无错.一个成功的测试是发现了至今未发现的错误的测试.软件测试的原则包括:所有的测试都应追溯到用户的需求;尽早地和不断地进行软件测试;不可能完全的测试,因为输入量太大,执行路径太多;注意测试中的群集现象;避免测试自己的程序;设计周密的测试用例.2.简述软件测试的目的和原则.答:软件测试的目的是以最少的时间和人力,系统地找出软件中潜在的各种错误和缺陷.测试是为了证明程序有错,而不是证明程序无错.一个成功的测试是发现了至今未发现的错误的测试.软件测试的原则包括:所有的测试都应追溯到用户的需求;尽早地和不断地进行软件测试;不可能完全的测试,因为输入量太大,执行路径太多;注意测试中的群集现象;避免测试自己的程序;设计周密的测试用例.3.软件缺陷产生的原因答:A.软件需求说明书编写的不全面,不完整,不准确,而且经常更改B.软件设计说明书C.软件操作人员的水平D.开发人员不能很好的理解需求明书和沟通不足4.什么是软件测试,以及软件测试的意义答:软件测试是为了发现错误而执行程序的过程.软件测试是根据软件开发阶段的规格说明和程序的内部结构而精心设计的一批测试用例即输入数据及预期的输出结果,并利用这些测试用例去运行程序,以发现错误的过程.意义:1.对产品质量完成全面的评估,为软件产品发布如验收测试、软件系统部署如性能规划测试、软件产品鉴定第三方独立测试委托方和被委托方纠纷仲裁第三方独立测试和其它决策提供信息;2.通过持续的测试包括需求评审、设计评审、代码评审等可以对产品质量提供持续的、快速的反馈,从而在整个开发过程中不断地、及时地改进产品的质量,并减少各种返工,降低软件开发的成本;3.通过测试发现所要交付产品的缺陷,特别是尽可能地发现各种严重的缺陷,降低或消除产品质量风险,提高客户的满意度,扩大市场份额,提高客户的忠诚度.4.通过对缺陷进行分析,找出缺陷发生的根本原因软件过程中的问题,包括错误的行为方式或总结出软件产品的缺陷模式,避免将来犯同样的错误或产生类似的产品问题,达到缺陷预防的目的5.什么是软件测试什么是测试用例,测试用例必须包括那几部分答:狭义的讲,一个测试用例就是测试人员用以测试被测软件的某个特性或特性组合的一组数据.这组数据可能是从用户处得来的实际的一组数据,也可能是测试人员专门设计出来的测试软件某些功能的一组数据.6.简述你对测试工作的认识过程、在以后的工作的一些建议.7.请辨析软件的质量是“设计出来的”还是“测试出来的”观点.8.软件测试与软件开发的关系答:软件开发是一个系统的工程.包括需求分析,设计,编码,测试,维护等等几个环节.测试是整个软件开发流程中的一个环节.9.在测试生命周期中,测试过程分为几个阶段各个阶段的含义以及各阶段的测试依据是什么答:软件测试是一个规则的过程,包括测试设计、测试执行以及测试结果比较等.①测试设计:根据软件开发各阶段的文档资料和程序的内部结构,利用各种设计测试用例技术精心设计测试用例.②测试执行:利用这些测试用例执行程序,得到测试结果.③测试结果比较:将预期的结果与实际测试结果进行比较,如果二者不符合,对于出现的错误进行纠错,并修改相应文档.修改后的程序还要进行再次测试,直到满意为止.如果测试发现不了错误,可能由于测试配置考虑不周到,应考虑重新制定测试方案,设计测试用例.按照开发阶段划分,软件测试可分为单元测试、集成测试,系统测试和验收测试.单元测试:针对每个单元的测试,以确保每个模块能正常工作为目标.集成测试:对已测试过的模块进行组装,进行集成测试.系统测试:检验软件产品能否与系统的其他部分协调工作.验收测试:检验软件产品质量的最后一道工序.10.一名优秀的软件测试工程师应具备哪些素质答:一个优秀的测试工程师应该具备的基本素质有:责任心、沟通能力、团队精神、自信心、耐心、怀疑精神、洞察力、幽默感等.应具备的专业素质有:有竞争力的测试人员要具有三方面的技能:计算机专业技能、测试专业技能、软件编程技能.11.如何做一名合格的测试人员测试人员应具备素质如下:(1)沟通能力.(2)移情能力.(3)技术能力.(4)自信心.(5)外交能力.(6)幽默感.(7)很强的记忆力.(8)耐心.(9)怀疑精神.(10)自我督促.(11)洞察力.12.测试计划的目的是什么答:软件测试计划是指导测试过程的纲领性文件,包含了产品概述、测试策略、测试方法、测试区域、测试配置、测试周期、测试资源、测试交流、风险分析等内容.借助软件测试计划,参与测试的项目成员,尤其是测试管理人员,可以明确测试任务和测试方法,保持测试实施过程的顺畅沟通,跟踪和控制测试进度,应对测试过程中的各种变更.13.什么是黑盒测试黑盒测试主要采用的技术有哪些答:黑盒测试又称为功能测试、数据驱动测试和基于规格说明的测试.它从用户观点出发的测试.用这种方法进行测试时,把被测试程序当作一个黑盒,在不考虑程序内部结构的内部特性、测试者只知道该程序输入和输出之间的关系或程序功能的情况下,依靠能够反映这一关系和程序功能需求规格的说明书,来确定测试用例和推断测试结果的正确性.黑盒测试的方法包括:边界值分析、等价类测试、基于决策表的测试和因果图等.14.简单描述黑盒测试各种方法的特点.答:黑盒测试的方法主要有边界值分析法、等价类划分法、因果图法、决策表测试法等.边界值分析利用输入变量的最小值、略大于最小值、输入值域内的任意值、略小于最大值和最大值来设计测试用例.等价类划分法是把程序的输入域划分为若干部分,然后从每个部分中选取少数代表性数据当作测试用例.经过类别的划分后,每一类的代表性数据在测试中的作用都等价于这一类中的其他值.因果图方法就是从程序规格说明书的描述中找出因输入条件和果输出结果,将因果图转换为决策表,最后为决策表中的每一列设计一个测试用例.这种方法考虑到了输入情况各种组合以及各个输入情况之间的相互制约关系.在所有的黑盒测试方法中,基于决策表的测试是最为严格、最具有逻辑性的.在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即:针对不同逻辑条件的组合值,分别执行不同的操作.决策表法很适合测试这类问题.15.如果能够执行完美的黑盒测试,还需要进行白盒测试吗为什么答:需要,黑盒测试可根据程序规格检验程序是否完成规定功能,但无法发现程序内部的编码和逻辑错误,白盒测试与之相反互补.16.边界值测试有几种方法答:边界值分析和健壮性测试17.等价分类法的测试技术采用的一般方法举例说明答:(1)为每个等价类编号;(2)设计一个新的测试方案,以尽可能多的覆盖尚未被覆盖的有效等价类,重复这一步骤,直到所有有效等价类被覆盖为止.(3)设计一个新的测试方案,使它覆盖一个尚未被覆盖的无效等价类,重复这一步骤,直到所有无效等价类被覆盖为止.18.什么是等价类如何划分等价类等价类测试中有哪些方法答:把单元的输入域化分为几种数据类,每种用来发现一类的错误,每类只用提供一个或几个用例数据.目的是减少用例数量.19.请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系.答:黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求.白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查.软件的黑盒测试意味着测试要在软件的接口处进行.这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明.因此黑盒测试又叫功能测试或数据驱动测试.黑盒测试主要是为了发现以下几类错误:1、是否有不正确或遗漏的功能2、在接口上,输入是否能正确的接受能否输出正确的结果3、是否有数据结构错误或外部信息例如数据文件访问错误4、性能上是否能够满足要求5、是否有初始化或终止性错误软件的白盒测试是对软件的过程性细节做细致的检查.这种方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试.通过在不同点检查程序状态,确定实际状态是否与预期的状态一致.因此白盒测试又称为结构测试或逻辑驱动测试.白盒测试主要是想对程序模块进行如下检查:1、对程序模块的所有独立的执行路径至少测试一遍.2、对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍.3、在循环的边界和运行的界限内执行循环体.4、测试内部数据结构的有效性,等等.单元测试模块测试是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确.通常而言,一个单元测试是用于判断某个特定条件或者场景下某个特定函数的行为.单元测试是由程序员自己来完成,最终受益的也是程序员自己.可以这么说,程序员有责任编写功能代码,同时也就有责任为自己的代码编写单元测试.执行单元测试,就是为了证明这段代码的行为和我们期望的一致.集成测试也叫组装测试,联合测试是单元测试的逻辑扩展.它的最简单的形式是:两个已经测试过的单元组合成一个组件,并且测试它们之间的接口.从这一层意义上讲,组件是指多个单元的集成聚合.在现实方案中,许多单元组合成组件,而这些组件又聚合成程序的更大部分.方法是测试片段的组合,并最终扩展进程,将您的模块与其他组的模块一起测试.最后,将构成进程的所有模块一起测试.系统测试是将经过测试的子系统装配成一个完整系统来测试.它是检验系统是否确实能提供系统方案说明书中指定功能的有效方法.常见的联调测试系统测试的目的是对最终软件系统进行全面的测试,确保最终软件系统满足产品需求并且遵循系统设计.验收测试是部署软件之前的最后一个测试操作.验收测试的目的是确保软件准备就绪,并且可以让最终用户将其用于执行软件的既定功能和任务.验收测试是向未来的用户表明系统能够像预定要求那样工作.经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是验收测试的任务,即软件的功能和性能如同用户所合理期待的那样.20.什么是白盒测试白盒测试主要采用的技术有哪些白盒测试有那几种方法并简单描述各种方法的特点.答:白盒测试又称为结构测试、逻辑驱动测试或基于程序的测试.它依赖于对程序细节的严密的检验.针对特定条件和循环集设计测试用例,对软件的逻辑路径进行测试.在程序的不同点检验程序的状态,来进行判定其实际情况是否和预期的状态相一致.白盒测试包括:逻辑覆盖、基路径测试、数据流测试、程序插装等.总体上分为静态方法和动态方法两大类静态:关键功能是检查软件的表示和描述是否一致,没有冲突或者没有歧义动态:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖.21.常用的逻辑覆盖测试方法有哪几种并简单描述各种方法的目的.答:逻辑覆盖可分为:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖及路径覆盖.语句覆盖:要求设计若干个测试用例,运行被测程序,使程序中的每个可执行语句至少被执行一次.判定覆盖:要求设计若干测试用例,运行被测程序,使得程序中每个判断的取真分支和取假分支至少执行一次,即判断的真假值均要被检测.判定覆盖又称为分支覆盖.条件覆盖:要求设计若干测试用例,执行被测程序,使得程序中每个判断的每个条件的可能取值至少被执行一次.判定/条件覆盖:要求设计足够的测试用例,执行被测程序,使得判断中每个条件的所有可能取值至少被执行一次,同时每个判断的所有可能判断结果也至少被执行一次.路径覆盖:要求设计足够多测试用例,覆盖程序中所有可能的路径.22.逻辑覆盖中几种主要覆盖的含义举例说明答:逻辑覆盖是一种使用最广泛的结构测试方法.逻辑覆盖以程序内部的逻辑结构为基础设计测试用例,要求对被测程序的逻辑结构有清楚的了解,甚至要能掌握源程序的所有细节.由于覆盖测试的目标不同,逻辑覆盖可分为:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖及路径覆盖.23.单元测试有那些步骤,各个步骤有那些实施内容.答:1.静态检查:用工具Logiscope或者人工检查单2.动态检查:用工具PurifyPlus或者人工调试3.测试用例执行工具或人工设计测试用例及数据;提前编写测试用例代码、脚本、驱动模块和桩模块;提前运行测试用例,记录结果.在步骤1,2之后进行24.非增量式测试与增量式测试答:非增量式测试的方法是先分散测试,然后集中起来再一次完成集成测试.假如在模块的接口处存在错误,只会在最后的集成测试时一下子暴露出来.增量式测试是逐步集成和逐步测试的方法,把可能出现的差错分散暴露出来,便于找出问题和修改.而且一些模块在逐步集成的测试中,得到了较多次的考验,因此,可能会取得较好的测试效果.结论:增量式测试要比非增量式测试具有一定的优越性.25.简述自顶向下增量式测试和自底向上增量式测试两种集成测试方法,并比较两者的优点和缺点.答:自顶向下增量式测试:主要优点在于它可以自然的做到逐步求精,一开始就能让测试者看到系统的框架.主要缺点是需要提供桩模块,并且在输入/输出模块接入系统以前,在桩模块中表示测试数据有一定困难.自底向上增量式测试:优点在于,由于驱动模块模拟了所有调用参数,即使数据流并未构成有向的非环状图,生成测试数据也无困难.主要缺点在于,直到最后一个模块被加进去之后才能看到整个程序系统的框架.26.简述集成测试的过程.集成测试的方法有那些答:系统集成测试主要包括以下过程:1. 构建的确认过程.2. 补丁的确认过程.3. 系统集成测试测试组提交过程.4. 测试用例设计过程.5. 测试代码编写过程.6. Bug的报告过程.7. 每周/每两周的构建过程.8. 点对点的测试过程.9. 组内培训过程.27.比较自顶向下集成测试和自底向上集成测试的优劣答:自顶向下集成测试表示逐步集成和逐步测试是按照结构图自上而下进行的,即模块集成的顺序是首先集成主控模块主程序,然后依照控制层次结构向下进行集成.自底向上集成测试表示逐步集成和逐步测试的工作是按结构图自下而上进行的,由于是从最底层开始集成,所以也就不再需要使用桩模块进行辅助测试.自顶向下测试的主要优点在于它可以自然的做到逐步求精,一开始就能让测试者看到系统的框架.它的主要缺点是需要提供桩模块.自底向上的优点在于不需要桩模块,需用的驱动模块比较少.它的主要缺点在于,直到最后一个模块被加进去之后才能看到整个程序系统的框架.。
1单选在黑盒测试方法中,设计测试用例的主要根据是()3单选凭经验或直觉推测可能的错误,列出程序中可能有的错误和容易发生错误的特殊情况,选择测试用例的测试方法叫()4单选2元地铁票售票软件:投币2元时,按下“2元”按钮,弹出相应地铁票;投币5元,则弹出地铁票同时退还3元,若对该功能进行测试用例设计最宜选择哪种方法5单选黑盒测试技术,使用最广的用例设计技术是等值分析测试边界值分析测试错误推测法逻辑覆盖测试6单选既可以用于黑盒测试,也可以用于白盒测试的方法的是逻辑覆盖法边界值法基本路径法正交试验设计法7单选某购物中心电梯限坐15人。
在电梯中安装计数器来统计乘客数量。
如出现超出规定人数以外的任何情况,会有不同的警示音。
软件编写后进行边界值测试,应选取的边界值是:()1,15,16.1 1510,1515,208单选关于等价类划分法,下面说法不正确的是(9单选某系统对每个员工一年的出勤天数进行核算和存储(按每月22个工作日计算),使用文本框的模式进行填写,在此文本框的测试用例编写中使用了等价类。
下列关于等价类划分法,划分错误的是()无效等价类,出勤日>264无效等价类,出勤日<0有效等价类,0< =出勤日< =264有效等价类,0<出勤日<26410单选若一个通讯录最多可以输入100条记录,则下列哪组测试用例最优?分别输入1、50、100条记录分别输入0、1、50、99、100条记录分别输入0、1、99、100、101条记录分别输入0、1、50、99、100、101条记录11单诜对于功率大于50马力的机器、维修记录不全或已运行10年以上的机器,应优先维修单选处理。
根据这段话,使用判定表法设计测试用例,以下说法不正确的是()12单选以下不属于因果图约束中的输入约束的是()要求强制13单选因果图中,关系符号“V”代表的是(恒等14单选现有一个处理单价为1元的盒装饮料的自动售货机软件,若投入1元币,按下“可乐”、“雪碧”或“红茶”按钮,相应的饮料就送出来,若投入的是2元币,在送出饮料的同时还退还1元币。
第一章什么就是软件测试?软件测试得目得与作用就是什么?答:软件测试就是在受控制得条件下对系统或应用程序进行操作并评价操作得结果。
软件测试得目得就是以最少得时间与人力,系统地找出软件中潜在得各种错误与缺陷。
测试就是为了证明程序有错,而不就是证明程序无错。
一个成功得测试就是发现了至今未发现得错误得测试。
软件测试得原则包括:所有得测试都应追溯到用户得需求;尽早地与不断地进行软件测试;不可能完全得测试,因为输入量太大,执行路径太多;注意测试中得群集现象;避免测试自己得程序;设计周密得测试用例。
软件缺陷产生得原因?答: A.软件需求说明书编写得不全面,不完整,不准确,而且经常更改 B.软件设计说明书 C.软件操作人员得水平 D.开发人员不能很好得理解需求明书与沟通不足软件测试得意义?意义:对产品质量完成全面得评估,为软件产品发布(如验收测试)、软件系统部署(如性能规划测试)、软件产品鉴定(第三方独立测试)委托方与被委托方纠纷仲裁(第三方独立测试)与其它决策提供信息;通过持续得测试(包括需求评审、设计评审、代码评审等)可以对产品质量提供持续得、快速得反馈,从而在整个开发过程中不断地、及时地改进产品得质量,并减少各种返工,降低软件开发得成本;通过测试发现所要交付产品得缺陷,特别就是尽可能地发现各种严重得缺陷,降低或消除产品质量风险,提高客户得满意度,扩大市场份额,提高客户得忠诚度。
通过对缺陷进行分析,找出缺陷发生得根本原因(软件过程中得问题,包括错误得行为方式)或总结出软件产品得缺陷模式,避免将来犯同样得错误或产生类似得产品问题,达到缺陷预防得目得软件测试与软件开发得关系?答:软件开发就是一个系统得工程。
包括需求分析,设计,编码,测试,维护等等几个环节。
测试就是整个软件开发流程中得一个环节。
简述软件测试过程v模型与w模型得主要区别:V模型就是软件开发完了之后才开始测试活动。
而W模型则就是软件测试活动伴随着软件开发活动。
一.断定剖析题1.软件测试的目标是尽可能多的找出软件的缺点.(Y)2.软件测试的目标是证实软件没有错误.(N)3.测试组负责软件质量.(N )4.程序的效力与程序的庞杂性相干.(N )5.软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性. (Y )6.测试程序仅仅按预期方法运行就行了.(N )7.好的测试员不懈寻求完善.( Y)8.不消失质量很高但靠得住性很差的产品.(N )9.测试是为了验证该软件已准确地实现了用户的请求.( N)10.发明错误多的程序模块,残留在模块中的错误也多.(Y )11.程序效力的进步重要应经由过程选择高效的算法来实现.( Y)12.测试人员要保持原则,缺点未修复完果断不予经由过程.(N)13.项目立项前测试人员不须要提交任何工件.(Y)14.缺点跟踪体系只针对对测试人员来运用.(N )15.从用户软件开辟者的角度动身,广泛愿望经由过程软件测试吐露软件中隐蔽的错误和缺点,以斟酌是否可接收该产品. (N ) 16.软件项目在进入需求剖析阶段,测试人员应当开端介入个中.( Y)17.测试是进步产品德量根本手腕.()18.代码评审员一般由测试员担任.(N)19.代码评审是检讨源代码是否达到模块设计的请求.(N)20.软件测试员可以对产品解释书进行白盒测试.(N )21.静态白盒测试可以找出漏掉之处的问题.(Y )22.老是起首设计白盒测试用例.(N)23.用黑盒法测试时,测试用例是根据程序内部逻辑设计的.(N)24.黑盒测试办法中最有用的是因果图法.(Y )25.软件测试按照测试过程分类为黑盒.白盒测试.(N)26.白盒测试又称构造测试.逻辑驱动测试或基于程序的测试.(Y)27.白盒测试时一般由开辟人员兼任测试人员的脚色.(Y)28.黑盒测试是从用户不雅点动身的测试.(Y)29.白盒测试是从用户不雅点动身的测试.(N)30.白盒测试根据程序外部特点进行测试,黑盒测试根据程序内部逻辑构造进行测试.(N)31.程序经由过程了周全的白盒测试,就不须要再进行黑盒测试了.(N)32.对于统一个测试对象,等价类的测试用例数多于鸿沟值的测试用例数.()33.假如输入前提划定了取值范围,则可界说一个有用等价类和两个无效等价类.(Y)34.不克不及对输出值域进行硬朗性测试.()35.有n个变量的函数的硬朗最坏情形测试用例的个数为:5的n 次方.(Y)36.有n个变量的函数的硬朗最坏情形测试用例的个数为:7的n 次方.(N)37.有n个变量的函数的硬朗性测试用例的个数为:5n+1.(N)38.有n个变量的函数的最坏情形测试会产生5的n次方个测试用例.(Y)39.有n个变量的函数的鸿沟值剖析会产生4n+1个测试用例(Y)40.鸿沟值剖析的假设是“多缺点”假设.(N)41.硬朗性测试的重要价值是不雅察破例情形的处理.(Y)42.在设计测试用例时,应包含合理的输入前提和不合理的输入前提.(Y )43.弱硬朗等价类测试基于多缺点假设.(N)44.强硬朗等价类测试是基于多缺点假设,并斟酌了无效值.(Y)45.强一般等价类测试斟酌了无效值.(Y)46.弱一般等价类是基于单缺点假设.(Y)47.弱硬朗等价类测试基于单缺点假设并斟酌了无效值.(Y)48.等价类测试的弱情势不如对应的强情势的测试周全(Y)49.语句笼罩是最弱的逻辑笼罩.(Y)50.语句笼罩是最强的逻辑笼罩.(N)51.剖断笼罩不必定包含前提笼罩.(Y)52.前提笼罩不必定包含剖断笼罩.(Y)53.剖断/前提笼罩能同时知足剖断.前提两种笼罩尺度.(Y)54.剖断/前提笼罩指知足剖断笼罩尺度或前提笼罩尺度.(N)55.DD-路径图是一种紧缩图.(Y)56.具体设计的目标是为软件构造图中的每一个模块肯定运用的算法和块内数据构造,并用某种选定的表达对象给出清楚的描写.( Y)57.尽量用公共过程或子程序去代替反复的代码段.(N)58.对于连锁型分支构造,如有n个剖断语句,则有2n条路径.(Y)59.尽量采取复合的前提测试,以防止嵌套的分支构造.(Y)60.GOTO语句概念简略,运用便利,在某些情形下,保存GOTO语句反能使写出的程序加倍简练.(Y)61.单元测试能发明约80%的软件缺点.(Y)62.单元测试属于动态测试. ( N)63.单元测试多采取白盒测试(构造性测试)技巧.(Y)64.单元测试须要从程序的内部构造动身设计测试用例.(Y)65.单元测试须要为每个根本单元开辟驱动模块或桩模块.(Y)66.在面向对象说话说话中,单元测试是函数或子过程.()67.单元测试又称为模块测试,是针对软件测试的最小单位-程序模块进行准确性磨练的测试工作.(Y)68.集成测试筹划在需求剖析阶段末提交.(N)69.自底向上集成须要测试员编写驱动程序.(Y)70.进行自底向上集成测试,须要为所测模块或子体系编制响应的驱动模块.(Y)71.进行自底向上集成测试,须要为所测模块或子体系编制响应的桩模块.(N)72.进行自顶向下集成测试,须要为所测模块或子体系编制响应的驱动模块.(N)73.进行自顶向下集成测试,须要为所测模块或子体系编制响应的桩模块.(Y)74.MM-路径是可履行路径.(Y)75.非渐增式集成方法,发明错误难以诊断定位.(Y)76.集成测试是磨练程序单元或部件的接口关系,慢慢集成为相符概要设计请求的程序部件或全部体系.(Y)77.体系测试多采取白盒测试(构造性测试)技巧.(N)(黑盒测试)78.验收测试是由最终用户来实行的.(N)79.负载测试是验证要磨练的体系的才能最高能达到什么程度.(N)80.我们可以工资的使得软件不消失设置装备摆设问题.(N)81.可以宣布具有设置装备摆设缺点的软件产品.(Y )82.所有软件必须进行某种程度的兼容性测试.( Y)83.所有软件都有一个用户界面,是以必须测试易用性.( N)84.β测试是由软件的多个用户在实际运用情形下进行的测试.(Y)85.体系测试是在真实或模仿体系运行情形下,检讨完全的程序体系可否和相干硬件.外设.收集.体系软件和支撑平台等准确设置装备摆设与衔接,并知足用户需求.(Y)86.Beta 测试是验收测试的一种.(Y)二.简答题1.什么是软件测试?软件测试的目标和感化是什么?答:运用测试对象按照测试筹划和流程对产品进行功效和机能测试,甚至根据须要编写不合的测试对象,设计和保护测试体系,对测试筹划可能消失的问题进行剖析和评估.软件测试是在受控制的前提下对体系或运用程序进行操纵并评价操纵的成果.软件测试的目标是以起码的时光和人力,体系地找出软件中潜在的各类错误和缺点.测试是为了证实程序有错,而不是证实程序无错.一个成功的测试是发明了至今未发明的错误的测试.软件测试的原则包含:所有的测试都应追溯到用户的需求;尽早地和不竭地进行软件测试;不成能完全的测试,因为输入量太大,履行路径太多;留意测试中的群集现象;防止测试本身的程序;设计严密的测试用例.2.简述软件测试的目标和原则.答:软件测试的目标是以起码的时光和人力,体系地找出软件中潜在的各类错误和缺点.测试是为了证实程序有错,而不是证实程序无错.一个成功的测试是发明了至今未发明的错误的测试.软件测试的原则包含:所有的测试都应追溯到用户的需求;尽早地和不竭地进行软件测试;不成能完全的测试,因为输入量太大,履行路径太多;留意测试中的群集现象;防止测试本身的程序;设计严密的测试用例.3.软件缺点产生的原因?答:A.软件需求解释书编写的不周全,不完全,不准确,并且经常更改B.软件设计解释书C.软件操纵人员的程度D.开辟人员不克不及很好的懂得需求明书和沟通缺少4.什么是软件测试,以及软件测试的意义?答:软件测试是为了发明错误而履行程序的过程.软件测试是根据软件开辟阶段的规格解释和程序的内部构造而精心设计的一批测试用例(即输入数据及预期的输出成果),并运用这些测试用例去运行程序,以发明错误的过程.意义:1.对产品德量完成周全的评估,为软件产品宣布(如验收测试).软件体系安排(如机能筹划测试).软件产品剖断(第三方自力测试)委托方和被委托方胶葛仲裁(第三方自力测试)和其它决议计划供给信息;2.经由过程中断的测试(包含需求评审.设计评审.代码评审等)可以对产品德量供给中断的.快速的反馈,从而在全部开辟过程中不竭地.实时地改良产品的质量,并削减各类返工,下降软件开辟的成本;3.经由过程测试发明所要交付产品的缺点,特殊是尽可能地发明各类轻微的缺点,下降或清除产品德量风险,进步客户的知足度,扩大市场份额,进步客户的忠实度.4.经由过程对缺点进行剖析,找出缺点产生的根起源基本因(软件过程中的问题,包含错误的行动方法)或总结出软件产品的缺点模式,防止将来犯同样的错误或产生相似的产品问题,达到缺点预防的目标5.什么是软件测试?什么是测试用例,测试用例必须包含那几部分?答:狭义的讲, 一个测试用例就是测试人员用以测试被测软件的某个特点或特点组合的一组数据. 这组数据可能是从用户处得来的实际的一组数据, 也可能是测试人员专门设计出来的测试软件某些功效的一组数据.6.简述你对测试工作的熟悉过程.在今后的工作的一些建议.7.请辨析软件的质量是“设计出来的”照样“测试出来的”不雅点.8.软件测试与软件开辟的关系?答:软件开辟是一个体系的工程.包含需求剖析,设计,编码,测试,保护等等几个环节.测试是全部软件开辟流程中的一个环节.9.在测试性命周期中,测试过程分为几个阶段?各个阶段的寄义?以及各阶段的测试根据是什么?答:软件测试是一个规矩的过程,包含测试设计.测试履行以及测试成果比较等.①测试设计:根据软件开辟各阶段的文档材料和程序的内部构造,运用各类设计测试用例技巧精心设计测试用例.②测试履行:运用这些测试用例履行程序,得到测试成果.③测试成果比较:将预期的成果与实际测试成果进行比较,假如二者不相符,对于消失的错误进行纠错,并修正响应文档.修正后的程序还要进行再次测试,直到知足为止.假如测试发明不了错误,可能因为测试设置装备摆设斟酌不严密,应斟酌从新制订测试筹划,设计测试用例.按照开辟阶段划分,软件测试可分为单元测试.集成测试,体系测试和验收测试.单元测试:针对每个单元的测试, 以确保每个模块能正常工作为目标.集成测试:对已测试过的模块进行组装,进行集成测试.体系测试:磨练软件产品可否与体系的其他部分调和工作.验收测试:磨练软件产品德量的最后一道工序.10.一名优良的软件测试工程师应具备哪些本质?答:一个优良的测试工程师应当具备的根本本质有:义务心.沟通才能.团队精力.自负念.耐烦.疑惑精力.洞察力.滑稽感等.应具备的专业本质有:有竞争力的测试人员要具有三方面的技巧:盘算机专业技巧.测试专业技巧.软件编程技巧.11.若何做一名及格的测试人员?测试人员应具备本质如下:(1)沟通才能.(2)移情才能.(3)技巧才能.(4)自负念.(5)交际才能.(6)滑稽感.(7)很强的记忆力.(8)耐烦.(9)疑惑精力.(10)自我督促.(11)洞察力.12.测试筹划的目标是什么?答:软件测试筹划是指点测试过程的纲要性文件,包含了产品概述.测试计谋.测试办法.测试区域.测试设置装备摆设.测试周期.测试资本.测试交换.风险剖析等内容.借助软件测试筹划,介入测试的项目成员,尤其是测试治理人员,可以明白测试义务和测试办法,保持测试实行过程的顺畅沟通,跟踪和控制测试进度,应对测试过程中的各类变动.13.什么是黑盒测试?黑盒测试重要采取的技巧有哪些?答:黑盒测试又称为功效测试.数据驱动测试和基于规格解释的测试.它从用户不雅点动身的测试.用这种办法进行测试时,把被测试程序当作一个黑盒,在不斟酌程序内部构造的内部特点.测试者只知道该程序输入和输出之间的关系或程序功效的情形下,依附可以或许反应这一关系和程序功效需求规格的解释书,来肯定测试用例和揣摸测试成果的准确性.黑盒测试的办法包含:鸿沟值剖析.等价类测试.基于决议计划表的测试和因果图等.14.简略描写黑盒测试各类办法的特色.答:黑盒测试的办法重要有鸿沟值剖析法.等价类划分法.因果图法.决议计划表测试法等.鸿沟值剖析运用输入变量的最小值.略大于最小值.输入值域内的随意率性值.略小于最大值和最大值来设计测试用例.等价类划分法是把程序的输入域划分为若干部分,然后从每个部分中拔取少数代表性数据当作测试用例.经由类此外划分后,每一类的代表性数据在测试中的感化都等价于这一类中的其他值.因果图办法就是从程序规格解释书的描写中找出因(输入前提)和果(输出成果),将因果图转换为决议计划表,最后为决议计划表中的每一列设计一个测试用例.这种办法斟酌到了输入情形各类组合以及各个输入情形之间的互相制约关系.在所有的黑盒测试办法中,基于决议计划表的测试是最为严厉.最具有逻辑性的.在一些数据处理问题当中,某些操纵的实行依附于多个逻辑前提的组合,即:针对不合逻辑前提的组合值,分离履行不合的操纵.决议计划表法很合适测试这类问题.15.假如可以或许履行完善的黑盒测试,还须要进行白盒测试吗?为什么?答:须要,黑盒测试可根据程序规格磨练程序是否完成划定功效,但无法发明程序内部的编码和逻辑错误,白盒测试与之相反互补.16.鸿沟值测试有几种办法?答:鸿沟值剖析和硬朗性测试17.等价分类法的测试技巧采取的一般办法?举例解释?答:(1)为每个等价类编号;(2)设计一个新的测试筹划,以尽可能多的笼罩尚未被笼罩的有用等价类,反复这一步调,直到所有有用等价类被笼罩为止.(3)设计一个新的测试筹划,使它笼罩一个尚未被笼罩的无效等价类, 反复这一步调,直到所有无效等价类被笼罩为止.18.什么是等价类?若何划分等价类?等价类测试中有哪些办法?答:把单元的输入域化分为几种数据类,每种用来发明一类的错误,每类只用供给一个或几个用例数据.目标是削减用例数目.19.请试着比较一下黑盒测试.白盒测试.单元测试.集成测试.体系测试.验收测试的差别与接洽.答:黑盒测试:已知产品的功效设计规格,可以进行测试证实每个实现了的功效是否相符请求.白盒测试:已知产品的内部工作过程,可以经由过程测试证实每种内部操纵是否相符设计规格请求,所有内部成分是否以经由检讨.软件的黑盒测试意味着测试要在软件的接口处进行.这种办法是把测试对象看做一个黑盒子,测试人员完全不斟酌程序内部的逻辑构造和内部特点,只根据程序的需求规格解释书,检讨程序的功效是否相符它的功效解释.是以黑盒测试又叫功效测试或数据驱动测试.黑盒测试主如果为了发明以下几类错误:1.是否有不准确或漏掉的功效?2.在接口上,输入是否能准确的接收?可否输出准确的成果?3.是否稀有据构造错误或外部信息(例如数据文件)拜访错误?4.机能上是否可以或许知足请求?5.是否有初始化或终止性错误?软件的白盒测试是对软件的过程性细节做过细的检讨.这种办法是把测试对象看做一个打开的盒子,它许可测试人员运用程序内部的逻辑构造及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试.经由过程在不合点检讨程序状况,肯定实际状况是否与预期的状况一致.是以白盒测试又称为构造测试或逻辑驱动测试.白盒测试主如果想对程序模块进行如下检讨:1.对程序模块的所有自力的履行路径至少测试一遍.2.对所有的逻辑剖断,取“真”与取“假”的两种情形都能至少测一遍.3.在轮回的鸿沟和运行的界线内履行轮回体.4.测试内部数据构造的有用性,等等.单元测试(模块测试)是开辟者编写的一小段代码,用于磨练被测代码的一个很小的.很明白的功效是否准确.平日而言,一个单元测试是用于断定某个特定前提(或者场景)下某个特定函数的行动.单元测试是由程序员本身来完成,最终受益的也是程序员本身.可以这么说,程序员有义务编写功效代码,同时也就有义务为本身的代码编写单元测试.履行单元测试,就是为了证实这段代码的行动和我们期望的一致.集成测试(也叫组装测试,结合测试)是单元测试的逻辑扩大.它的最简略的情势是:两个已经测试过的单元组合成一个组件,并且测试它们之间的接口.从这一层意义上讲,组件是指多个单元的集成聚合.在实际筹划中,很多单元组合成组件,而这些组件又聚合成程序的更大部分.办法是测试片断的组合,并最终扩大过程,将您的模块与其他组的模块一路测试.最后,将组成过程的所有模块一路测试.体系测试是将经由测试的子体系装配成一个完全体系来测试.它是磨练体系是否确切能供给体系筹划解释书中指定功效的有用办法.(罕有的联调测试)体系测试的目标是对最终软件体系进行周全的测试,确保最终软件体系知足产品需求并且遵守体系设计.验收测试是安排软件之前的最后一个测试操纵.验收测试的目标是确保软件预备停当,并且可以让最终用户将其用于履行软件的既定功效和义务.验收测试是向将来的用户标明体系可以或许像预定请求那样工作.经集成测试后,已经按照设计把所有的模块组装成一个完全的软件体系,接口错误也已经根本清除了,接着就应当进一步验证软件的有用性,这就是验收测试的义务,即软件的功效和机能如同用户所合理等待的那样.20.什么是白盒测试?白盒测试重要采取的技巧有哪些? 白盒测试有那几种办法?并简略描写各类办法的特色.答:白盒测试又称为构造测试.逻辑驱动测试或基于程序的测试.它依附于对程序细节的严密的磨练.针对特定前提和轮回集设计测试用例,对软件的逻辑路径进行测试.在程序的不合点磨练程序的状况,来进行剖断其实际情形是否和预期的状况相一致.白盒测试包含:逻辑笼罩.基路径测试.数据流测试.程序插装等.总体上分为静态办法和动态办法两大类静态:症结功效是检讨软件的暗示和描写是否一致,没有冲突或者没有歧义动态:语句笼罩.剖断笼罩.前提笼罩.剖断前提笼罩.前提组合笼罩.路径笼罩.21.经常运用的逻辑笼罩测试办法有哪几种?并简略描写各类办法的目标.答:逻辑笼罩可分为:语句笼罩.剖断笼罩.前提笼罩.剖断/前提笼罩及路径笼罩.语句笼罩:请求设计若干个测试用例,运行被测程序,使程序中的每个可履行语句至少被履行一次.剖断笼罩:请求设计若干测试用例,运行被测程序,使得程序中每个断定的取真分支和取假分支至少履行一次,即断定的真假值均要被检测.剖断笼罩又称为分支笼罩.前提笼罩:请求设计若干测试用例,履行被测程序,使得程序中每个断定的每个前提的可能取值至少被履行一次.剖断/前提笼罩:请求设计足够的测试用例,履行被测程序,使得断定中每个前提的所有可能取值至少被履行一次,同时每个断定的所有可能断定成果也至少被履行一次.路径笼罩:请求设计足够多测试用例,笼罩程序中所有可能的路径.22.逻辑笼罩中几种重要笼罩的寄义?举例解释?答:逻辑笼罩是一种运用最广泛的构造测试办法.逻辑笼罩以程序内部的逻辑构造为基本设计测试用例,请求对被测程序的逻辑构造有清楚的懂得,甚至要能控制源程序的所有细节.因为笼罩测试的目标不合,逻辑笼罩可分为:语句笼罩.剖断笼罩.前提笼罩.剖断/前提笼罩及路径笼罩.23.单元测试有那些步调,各个步调有那些实行内容.答:1.静态检讨:用对象Logiscope或者人工检讨单2.动态检讨:用对象PurifyPlus或者人工调试3.测试用例履行(对象某人工)设计测试用例及数据;(提前)编写测试用例代码.剧本.驱动模块和桩模块;(提前)运行测试用例,记载成果.(在步调1,2之落后行)24.非增量式测试与增量式测试答:非增量式测试的办法是先疏散测试,然后分散起来再一次完成集成测试.假如在模块的接口处消失错误,只会在最后的集成测试时一会儿吐露出来.增量式测试是慢慢集成和慢慢测试的办法,把可能消失的错误疏散吐露出来,便于找出问题和修正.并且一些模块在慢慢集成的测试中,得到了较多次的考验,是以,可能会取得较好的测试后果.结论:增量式测试要比非增量式测试具有必定的优胜性. 25.简述自顶向下增量式测试和自底向上增量式测试两种集成测试办法,并比较两者的长处和缺点.答:自顶向下增量式测试:重要长处在于它可以天然的做到慢慢求精,一开端就能让测试者看到体系的框架.重要缺点是须要供给桩模块,并且在输入/输出模块接入体系以前,在桩模块中暗示测试数据有必定艰苦.自底向上增量式测试:长处在于,因为驱动模块模仿了所有挪用参数,即使数据流并未组成有向的非环状图,生成测试数据也无艰苦.重要缺点在于,直到最后一个模块被加进去之后才干看到全部程序(体系)的框架.26.简述集成测试的过程.集成测试的办法有那些?答:体系集成测试重要包含以下过程:1. 构建的确认过程.2. 补丁的确认过程.3. 体系集成测试测试组提交过程.4. 测试用例设计过程.5. 测试代码编写过程.6. Bug的陈述过程.7. 每周/每两周的构建过程.8. 点对点的测试过程.9. 组内培训过程.27.比较自顶向下集成测试和自底向上集成测试的好坏?答:自顶向下集成测试暗示慢慢集成和慢慢测试是按照构造图自上而下进行的,即模块集成的次序是起首集成主控模块(主程序),然后按照控制层次构造向下进行集成.自底向上集成测试暗示慢慢集成和慢慢测试的工作是按构造图自下而长进行的,因为是从最底层开端集成,所以也就不再须要运用桩模块进行帮助测试.自顶向下测试的重要长处在于它可以天然的做到慢慢求精,一开端就能让测试者看到体系的框架.它的重要缺点是须要供给桩模块.自底向上的长处在于不须要桩模块,需用的驱动模块比较少.它的重要缺点在于,直到最后一个模块被加进去之后才干看到全部程序(体系)的框架.。
1、兼容性测试在大多数生产环境中,客户机工作站、网络连接和数据库服务器的具体硬件规格会有所不同。
客户机工作站可能会安装不同的软件例如,应用程序、驱动程序等而且在任何时候,都可能运行许多不同的软件组合,从而占用不同的资源。
测试目的配置说明操作系统系统软件外设应用软件结果服务器Window2000(S)WindowXpWindow2000(P)Window2003用例编号TestCase_LinkWorks_WorkEvaluate项目名称LinkWorks模块名称WorkEvaluate模块项目承担部门研发中心-质量管理部用例作者完成日期2005-5-27本文档使用部门质量管理部评审负责人审核日期批准日期注:本文档由测试组提交,审核由测试组负责人签字,由项目负责人批准。
历史版本:版本/状态作者参与者起止日期备注V1.11.1. 疲劳强度测试用例强度测试也是性能测试是的一种,实施和执行此类测试的目的是找出因资源不足或资源争用而导致的错误。
如果内存或磁盘空间不足,测试对象就可能会表现出一些在正常条件下并不明显的缺陷。
而其他缺陷则可能由于争用共享资源(如数据库锁或网络带宽)而造成的。
强度测试还可用于确定测试对象能够处理的最大工作量。
测试目的测试说明功能1 2小时4小时6小时8小时功能1 2小时4小时6小时8小时一、功能测试用例此功能测试用例对测试对象的功能测试应侧重于所有可直接追踪到用例或业务功能和业务规则的测试需求。
这种测试的目标是核实数据的接受、处理和检索是否正确,以及业务规则的实施是否恰当。
主要测试技术方法为用户通过GUI(图形用户界面)与应用程序交互,对交互的输出或接受进行分析,以此来核实需求功能与实现功能是否一致。
二、性能测试性能测试是一种对响应时间、事务处理速率和其他与时间相关的需求进行测试和评估。
性能测试的目标是核实性能需求是否都已满足。
可以分为以下几种进方式来组织进行测试。
1.2. 预期性能测试用例通常系统在设计前会提出一些性能指标,这些指标是性能测试要完成的首要工作,针对每个指标都要统写多个测试用例来验证是否达到要求,根据测试结果来改进系统的性能。
1.2.3.4.5.6.7.8.9.10.11.12.13.14.15. 一、判断分析题软件测试的目的是尽可能多的找出软件的缺陷。
软件测试的目的是证明软件没有错误。
( N)测试组负责软件质量。
(N )程序的效率与程序的复杂性相关。
(N )Y)软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。
测试程序仅仅按预期方式运行就行了。
(N )好的测试员不懈追求完美。
( Y)不存在质量很高但可靠性很差的产品。
(N )测试是为了验证该软件已正确地实现了用户的要求。
发现错误多的程序模块,残留在模块中的错误也多。
程序效率的提高主要应通过选择高效的算法来实现。
测试人员要坚持原则,缺陷未修复完坚决不予通过。
项目立项前测试人员不需要提交任何工件。
缺陷跟踪系统只针对对测试人员来使用。
从用户软件开发者的角度出发,以考虑是否可接受该产品。
(N )16. 软件项目在进入需求分析阶段,17. 测试是提高产品质量根本手段。
18.代码评审员一般由测试员担任。
19.20.21.22.23.24.25.26.27.28.29.30.31.Y)(N )( N)(Y)( Y)N)(Y )普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,测试人员应该开始介入其中。
( Y)N)代码评审是检查源代码是否达到模块设计的要求。
软件测试员可以对产品说明书进行白盒测试。
静态白盒测试可以找出遗漏之处的问题。
总是首先设计白盒测试用例。
(N)N)(N ) (Y )用黑盒法测试时,测试用例是根据程序内部逻辑设计的。
黑盒测试方法中最有效的是因果图法。
(Y )软件测试按照测试过程分类为黑盒、白盒测试。
(N) 白盒测试又称结构测试、逻辑驱动测试或基于程序的测试。
白盒测试时一般由开发人员兼任测试人员的角色。
黑盒测试是从用户观点出发的测试。
( Y)白盒测试是从用户观点出发的测试。
( N) (N)Y)白盒测试根据程序外部特征进行测试,黑盒测试根据程序内部逻辑结构进行测试。
1.什么是软件测试?软件测试的目的和作用是什么?答:软件测试是在受控制的条件下对系统或应用程序进行操作并评价操作的结果。
软件测试的目的是以最少的时间和人力,系统地找出软件中潜在的各种错误和缺陷。
测试是为了证明程序有错,而不是证明程序无错。
一个成功的测试是发现了至今未发现的错误的测试。
软件测试的原则包括:所有的测试都应追溯到用户的需求;尽早地和不断地进行软件测试;不可能完全的测试,因为输入量太大,执行路径太多;注意测试中的群集现象;避免测试自己的程序;设计周密的测试用例。
2.软件缺陷产生的原因?答: A.软件需求说明书编写的不全面,不完整,不准确,而且经常更改 B.软件设计说明书 C.软件操作人员的水平 D.开发人员不能很好的理解需求明书和沟通不足3.软件测试的意义?意义:1.对产品质量完成全面的评估,为软件产品发布(如验收测试)、软件系统部署(如性能规划测试)、软件产品鉴定(第三方独立测试)委托方和被委托方纠纷仲裁(第三方独立测试)和其它决策提供信息;2.通过持续的测试(包括需求评审、设计评审、代码评审等)可以对产品质量提供持续的、快速的反馈,从而在整个开发过程中不断地、及时地改进产品的质量,并减少各种返工,降低软件开发的成本;3.通过测试发现所要交付产品的缺陷,特别是尽可能地发现各种严重的缺陷,降低或消除产品质量风险,提高客户的满意度,扩大市场份额,提高客户的忠诚度。
4.通过对缺陷进行分析,找出缺陷发生的根本原因(软件过程中的问题,包括错误的行为方式)或总结出软件产品的缺陷模式,避免将来犯同样的错误或产生类似的产品问题,达到缺陷预防的目的4.软件测试与软件开发的关系?答:软件开发是一个系统的工程。
包括需求分析,设计,编码,测试,维护等等几个环节。
测试是整个软件开发流程中的一个环节。
5.简述软件测试过程v模型和w模型的主要区别:V模型是软件开发完了之后才开始测试活动。
而W模型则是软件测试活动伴随着软件开发活动。
场景分析法一、以答题业务为例:1.答对题目增加题目积分,积分达到设定值时奖励一个礼包;2.取题规则为随机不重复;3.答错题目后答新题.开始答题是否存在有效题目提供题目及备选答案答案是否正确增加题目积分积分大于或等于设定值?给予无有效题目提示结束奖励一个礼包1.确定基本流与备选流基本流: 步骤1. 开始答题步骤2. 判断是否存在有效题目,存在有效题目,处理:提供题目及备选答案步骤3. 用户答题并答对题目,增加用户相应积分。
步骤4. 判断积分是否达到设定值,达到,获取一个礼包,流程结束。
备选流1: 不存在有效题目基本流步骤2时,题库不存在未答题目,处理:给予无有效题目提示,流程结束。
备选流2: 答错题目基本流步骤3时,答错题目,处理:提示用户答错题目,回到基本流步骤2备选流3:答题后积分达不到设定值基本流步骤4时,答对题后积分仍达不到设定值,处理:回到基本流步骤22.确定以下用例场景:3.通过从确定执行用例场景所需的数据元素入手构建矩阵4.设计数据,把数据填入上面的用例表中二、下图所示是ATM例子的流程示意图。
2.场景设计:下表所示是生成的场景。
3.用例设计4.测试用例表三、用户进入一个在线购物网站进行购物,选购物品后,进行在线购买,这时需要使用账号登录,登录成功后,进行付钱交易,交易成功后,生成订购单,完成整个购物过程。
第一步:确定基本流和备选流基本流:登录在线网站→选择物品→登录账号→付款→生成订单;备选流1:账户不存在;备选流2:账户密码错误;备选流3:用户账户余额不足;备选流4:用户账户没钱。
第二步:根据基本流和备选流确定场景场景1成功购物:备选流;场景2账号不存在:基本流,备选流1;场景3账号密码错误:基本流,备选流2;场景4账户余额不足:基本流,备选流3;场景5账户没钱:基本流,备选流4。
第三步:对每一个场景生成相应的测试用例测试用例ID 场景/条件账号密码用户账号余额预期结果1 场景1:成功购物V V V 成功购物2 场景2:账号不存在 1 n/a n/a 提示账号不存在3 场景3:账号密码错误(账号正确,密码错误)V 1 n/a 提示账号密码错误,返回基本流步骤34 场景4:用户账号余额不足V V 1 提示用户账号余额不足,请充值5 场景5:用户账号没钱V V 1 提示用户账号没有钱,请充值第四步:设计测试数据测试用例ID 场景/条件账号密码用户账号余额预期结果1 场景1:成功购物Test 123456 800 成功购物,账号余额减少100元2 场景2:账号不存在aa n/a n/a 提示账号不存在3 场景3:账号密码错误(账号正确,密码错误)Test 111111 n/a 提示账号密码错误,返回基本流步骤34 场景4:用户账号余额不足Test 123456 50 提示用户账号余额不足,请充值5 场景5:用户账号没钱Test 123456 0 提示用户账号没有钱,请充值等价类划分法一、计算保费费率的程序(1)分析程序规格说明中给出和隐含的对输入条件的要求,列出等价类表(包括有效等价类和无效等价类)。
年龄:一位、两位或三位整数,值的有效范围为0~120性别:一位英文字符,只能取值‘M’或‘F’婚姻:字符,只能取值‘已婚’或‘未婚’抚养人数:空白或一位非零整数(1~9)(2)根据(1)中的等价类表,设计能覆盖所有等价类的测试用例。
二、某城市电话号码由三部分组成,分别是:地区码——空白或三位数字;前缀——非‘0’或‘1’开头的三位数字;后缀——4位数字。
假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。
请使用等价类划分法设计测试用例,给出等价类列表,设计测试用例。
三、根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。
一个程序读入3个整数,把这三个数值看作一个三角形的3条边的长度值。
这个程序要打印出信息,说明这个三角形是不等边的、是等腰的、还是等边的。
四、设有一个档案管理系统,要求用户输入以年月表示的日期。
假设日期限定在1990年1月~2049年12月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。
现用等价类划分法设计测试用例,来测试程序的"日期检查功能"。
1)划分等价类并编号,下表等价类划分的结果输入等价类有效等价类无效等价类日期的类型及长度①6位数字字符②有非数字字符③少于6位数字字符④多于6位数字字符年份范围⑤在1990~2049之间⑥小于1990⑦大于2049月份范围⑧在01~12之间⑨等于00⑩大于122)设计测试用例,以便覆盖所有的有效等价类在表中列出了3个有效等价类,编号分别为①、⑤、⑧,设计的测试用例如下:测试数据期望结果覆盖的有效等价类200211 输入有效①、⑤、⑧3)为每一个无效等价类设计一个测试用例,设计结果如下:测试数据期望结果覆盖的无效等价类95June 无效输入②20036 无效输入③2001006 无效输入④198912 无效输入⑥200401 无效输入⑦200100 无效输入⑨200113 无效输入⑩五、NextDate 函数包含三个变量:month 、day 和year ,函数的输出为输入日期后一天的日期。
例如,输入为2006年3月7日,则函数的输出为2006年3月8日。
要求输入变量month 、day 和year 均为整数值,并且满足下列条件:①1≤month≤12②1≤day≤31③1920≤year≤20501)有效等价类为:M1={月份:1≤月份≤12}D1={日期:1≤日期≤31}Y1={年:1812≤年≤2012}2)若条件①~ ③中任何一个条件失效,则NextDate 函数都会产生一个输出,指明相应的变量超出取值范围,比如"month 的值不在1-12 范围当中" 。
显然还存在着大量的year 、month 、day 的无效组合,NextDate 函数将这些组合作统一的输出:" 无效输入日期" 。
其无效等价类为:M2={月份:月份<1}M3={月份:月份>12}D2={日期:日期<1}D3={日期:日期>31}Y2={年:年<1812}Y3={年:年>2012}边界值分析法一、根据下面给出的规格说明,利用边界值分析的方法,给出足够的测试用例。
“一个程序读入3个整数,把这三个数值看作一个三角形的3条边的长度值。
这个程序要打印出信息,说明这个三角形是不等边的、是等腰的、还是等边的。
”在三角形问题描述中,除了要求边长是整数外,没有给出其它的限制条件。
在此,我们将三角形每边边长的取范围值设值为[1, 100]我们可以设三角形的3条边分别为A,B,C。
如果它们能够构成三角形的3条边,必须满足:A>0,B>0,C>0,且A+B>C,B+C>A,A+C>B。
如果是等腰的,还要判断A=B,或B=C,或A=C。
如果是等边的,则需判断是否A=B,且B=C,且A=C。
二、现有一个学生标准化考试批阅试卷,产生成绩报告的程序。
其规格说明如下:程序的输入文件由一些有80个字符的记录组成,如下图所示,所有记录分为3组:三、找零钱最佳组合假设商店货品价格(R) 皆不大于100 元(且为整数),若顾客付款在100 元内(P) ,求找给顾客之最少货币个(张)数?(货币面值50 元(N50) ,10 元(N10) , 5 元(N5) , 1 元(N1) 四种)1、分析输入的情形:R > 100 0 < R < = 100 R <= 0 P > 100 R<= P <= 100 P < R2、分析输出情形:N50 = 1 4 >= N10 >= 1 N5 = 1 4 >=N1 >= 13.分析每种情况,以RR1,RR2, RR3 ,RR4表示计算要找50, 10, 5 ,1元货币数时之剩余金额。
R > 100 R <= 0 P > 100 P <= RRR1 >= 50RR2 >= 10RR3 >= 5RR4 >= 14.由上述之输入/输出条件组合出可能的情形。
R > 100R <= 00 < R <= 100, P > 1000 < R <= 100, P < R0 < R <= 100, R <= P <= 100, RR = 500 < R <= 100, R <= P <= 100, RR = 490 < R <= 100, R <= P <= 100, RR = 100 < R <= 100, R <= P <= 100, RR = 90 < R <= 100, R <= P <= 100, RR = 50 < R <= 100, R <= P <= 100, RR = 40 < R <= 100, R <= P <= 100, RR = 10 < R <= 100, R <= P <= 100, RR = 05.为满足以上之各种情形,测试用例设计如下:1. 货品价格= 1012. 货品价格= 03.货品价格= -14. 货品价格= 100, 付款金额= 1015. 货品价格= 100, 付款金额= 996. 货品价格= 50, 付款金额= 1007. 货品价格= 51, 付款金额= 1008. 货品价格= 90, 付款金额= 1009. 货品价格= 91, 付款金额= 10010. 货品价格= 95, 付款金额= 10011. 货品价格= 96, 付款金额= 10012. 货品价格= 99, 付款金额= 10013. 货品价格= 100, 付款金额= 100四、NextDate函数的边界值分析测试用例在NextDate函数中,隐含规定了变量mouth和变量day的取值范围为1≤mouth≤12和1≤day≤31,并设定变量year的取值范围为1912≤year≤2050 。
判定表法一、判定表法是一种分析多种输入条件的组合情况的方法,多种输入条件可以通过判定表来完整地进行排列组合,从而不出现遗漏。
比如以下一个判断表达式:If ( (a>0) || (b>0) || (c>0&&c<100 ) ){…}这段程序中的判定条件可以用判定表如何表示?表中的c<=0?0<c<100?c>=100?是3个排他性条件,即其中同时只有一个条件会满足,也就是在同一列中只能有一个为Y,其他两个均为N。