ImageVerifierCode 换一换
格式:DOCX , 页数:38 ,大小:1.54MB ,
资源ID:11036793      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11036793.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(软件测试学习第一部分软件测试理论基础.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

软件测试学习第一部分软件测试理论基础.docx

1、软件测试学习第一部分软件测试理论基础第一部分:手工测试软件测试基础理论第三讲(缺陷报告)一、测试人员的主要工作职责(1)编写测试计划(2)编写测试用例(3)执行测试,发现缺陷提交缺陷报告(4)验证所有缺陷是不是得到修复(5)编写测试总结报告二、缺陷报告的组成1、缺陷编号(Defect ID)提交bug的顺序说明:(1) 全项目组统一编号(2) 如果使用管理工具,缺陷编号会自动生成2、缺陷标题(summary)简明扼要的描述一下该bug3、缺陷的发现者(Detected By)一般为自己4、发现缺陷的日期(Detected on date)一般就是发现缺陷的当前5、缺陷所属的模块(subject

2、)在测试程序的那个功能模块或菜单时发现的bug开发经理会根据bug所在的模块,找到bug的负责人6、发现缺陷版本(Detected in release)在测试程序的哪个版本时发现的bug27、指派给谁处理(Assigned to)测试人员把缺陷报告指派给开发经理,开发经理会根据缺陷所在的模块,需要再次指派给具体的开发人员8、缺陷的状态(status)(重要)表明缺陷所处的情况或处理结果。(1) 测试人员发现bug提交缺陷报告给开发经理,把bug的状态写成:new(新提交)(2) 开发经理验证提交的bug,如果是Bug,把bug的状态改为:open(打开的bug、开发组承认的Bug);如果不是

3、bug,把缺陷的状态改为:rejected(被拒绝的缺陷),是缺陷需要把缺陷指派给bug的负责人。(3) 开发人员,看到指派给自己的bug ,进行Bug的修复,修改完后,把bug的状态改为:fixed(已经修复的bug)(4) 测试人员对修复的bug进行返测,如果反测成功,把bug的状态给为:closed(关闭bug、反测成功的bug),如果返测失败把bug的状态改为:reopen(重新打开的bug、返测失败的bug)以上的过程成为“缺陷(报告)的处理流程,也称之为“缺陷的跟踪过程”,或称作“缺陷的生命周期”New-open-Fixed-closed9、缺陷的严重程度(Severity)(重点

4、)表明bug 多糟糕,或对软件造成多大影响Urgent:造成死机、崩溃等致命问题Veryhigh:非常严重的bug。Hight:比较严重的、大的bugMedium:中等程度的bugLow:小的bug以后再提交缺陷时会有一个专门的文档来说明什么样的错误时什么等级Bug Level Definition 缺陷等级定义说明:每个单词在不同项目中代表的含义是不尽相同,我们应该在专门的文档中给出比较详细的评判标准,这样才会减少争议。Performance :性能Function:功能10、缺陷的优先级(priority)(重点)希望缺陷在什么时间内或者在程序的哪个版本中解决Urgent:立刻修改,否则会

5、影响开发或测试的进度Veryhigh:本版本修改(本周期修改)Hight:下一个版本修改(下一周期修改)Medium:发布之前修改(下一版本修改)Low:允许在发布中存在(发布之前修改)优先级需要考虑的因素:(1) 严重程度:一般越严重,优先级越高(2) 影响的范围:印象的范围越大,优先级越高(3) 开发组的进度压力:压力越小,优先级越高(4) 解决bug的成本问题:成本越低,优先级越高11、缺陷描述(description)(重点)把发现缺陷的步骤、使用的数据记录下来,让程序员通过描述能够再现bug三、常见问题1、严重程度和优先级不是严格成正比的例如:界面问题的严重程度一般比较低,但优先级可

6、能最高-立即修复。 错误提示中的错别字严重程度低,因为其好修改,优先级可能最高-立即修复 一些严重的错误,它不影响其他功能,但是难解决其严重程度高,但优先级可以低些2、严重程度确定好后,一般不做修改;优先级可能会根据实际情况,适当修改3、在产品发布之前有些缺陷可能解决不了,但一定要做好风险分析 例如:一些用户不常用的功能,或发现错误时不会造成很大的损失的四、缺陷报告用途(1)记录bug(2)对bug进行分类(发现者、日期、版本、模块、严重程度、状态。)(3)跟踪bug(new-closed)(4)对bug总结、分析统计五、如何识别bug(1)参考测试用例的预期结果,实际结果与预期结果不一致,就

7、是bug(2)参考需求文档,与需求不一致就是bug(3)讨论(4)参考第一讲中缺陷的5点定义六、写缺陷报告时注意的问题说明:有些bug是不可重新的。可以称为随机bug,也要提交,要注明一下七、缺陷报告的处理流程参考缺陷状态(status )笔记 作业:至少提交三个缺陷报告第四讲(测试用例)一、 测试用例基本概念测试用例是在测试执行之前由测试人员编写的指导测试过程的重要文档,主要包括:用力编号、测试目的、用例描述、预期结果二、测试思想:“穷举测试”是最全面的测试,但是时间成本太高,在实际中不能采用。编写用例的方法,是在保证测试质量的前提下,使用最少的数据、最少的成本达到最优的测试效果。不做穷举测

8、试,是存在风险的,所以如果有时间可以再适当的补充三、编写测试用例的方法(1) 等价类划分(2) 边界值法(3) 因果图法(4) 判断表法(5) 正交排列法(6) 场景法(7) 测试大纲法四、 写测试用例的参考(1) 文档,尤其是需求文档(2) 参考已经开发出来的程序(3) 讨论五、 测试用例的用途1、 防止遗漏 使软件测试的实施重点突出、目的明确、确保需求功能不能被遗漏2、 版本重复测试 快速正确的进行版本重复测试3、 监督过程可以准确有效的评估工作量4、 评价结果对产品进行评估,对测试完成情况进行评价5、 提高效率避免盲目测试6、 缩短周期版本升级或修改时只需要修正少部分测试用例,资源复用六

9、、 写用例时注意的点1、在写测试用例之前,还要明确项目对用例的具体要求测试用例编号如何命名测试用例应该提交到什么地方测试用例用到的附件命名规则、存放位置2、测试用例是需要跟新和维护的,是一个不断修改和完善的过程3、测试用例需要正式的评审4、测试用例覆盖系统的程度,决定测试的覆盖程度七、 对测试人员的要求1、基本要求在编写一条测试用例时,要求步骤清楚准确易读,预期结果明确如有特殊的设置,预期条件等要明确写出如果有输入数据一般要给出输入数据取值如果有附件,要给出附件存放位置名称检验标准写完用例后让别人照着自己的用例去执行测试可以很顺畅的执行下来2.高标准要求测试用例写的有条理逻辑性强,可以按照功能

10、点分类操作顺序等逻辑编写,而不要一会测试这,一会测试那功能覆盖全面深入,能够发现软件中的更多缺陷检验标准能把软件中的缺陷尽可能多的找出来,按照你的测试用例测试完软件、遗漏的缺陷最少要求测试人员最终达到的目的,是一个需要长期积累学习的过程第四讲(等价类划分、边界值法)1、 等价类划分法(1) 应用场合只要有数据输入的地方就可以使用。把可以输入的无穷多的数据进行分类,从中挑选一些代表进行测试即可(2) 核心概念 有效等价类对程序的规格说明有意义、合理的输入数据集合,程序接受到有效数据,应该正确计算,执行 无效等价类 对程序的规格说明无意义,不合理的输入数据集合,程序接受到无效数据应给出错误提示,或

11、者根本无法输入有效等价类主要验证程序的正常业务功能实现,无效等价类验证程序的异常处理能力(健壮性)(3) 使用等价类划分分析程序案例:需求:如图:功能展示:如图首先,明确测试对象“第一个数”文本框说明:在测试“第一个数”文本框时。“第二个数”文本框要填写正确1、 分析需求,划分等价类(有效等价类、无效等价类) 有效等价类-9999的整数 无效等价类99的整数为空非整数2、 细化等价类依据的一般是隐式需求,比如,数据再内存中存储的形式,数据在数据库、程序中的类型 整数在计算机中是按照“补码存储”整数和负数的补码计算方式不同,有必要单独测把有效等价类-9999细化为:-99-1的整数099的整数

12、非整数可以细化为: 小数 字符 汉字 符号3、 建立等价类表(熟练以后直接做该步)有效等价类序号数据范围1-99-1的整数2099的整数无效等价类序号数据范围199的整数3为空4小数5字母6汉字7符号4、 根据等价类表,编写用例从每个等价类中至少挑选出一个数据编写用例在分析“第二个数”文本框跟分析第一个是一样的说明:保证“第一个数”文本框填写正确2、 边界值法 案例: 跟等价类划分采用同一个(也两个文本框分开分析) 对上边等价类划分进行补充(1)应用场合有数据输入的地方,一般就可以使用。边界值法往往和等价类划分一起使用,共同形成一套较为完善的测试方案(2)如何使用找到有效数据和无效数据的分界点

13、(-99、99)(最小值和最大值), 及其(分界值)两边的点(次边界点、次分界点(-98、-100、98、100),对这些点单独进行测试 如图:(3)说明边界值数据,本质上就是属于等价类划分的范畴,但是应该单独测试,这种测试实际上是一种冗余,但在工程中是必须的3、 有效数据的优化1、 问题提出 一条用例只测试一个控件的有效等价类或有效边界值,比较简单的,适合初学者,但是会产生大量冗余,影响了测试效率2、 如何优化在一条用例中可以尽可能多的测试不同的控件的一个有效等价类或有效边界值(即在一个用例中把所有的有效等价值全都测了,从每一个控件有效等价类(有效等价类没有用有效边界值)各挑选一个)-不同控

14、件的有效数据可以组合在一起测试-减少用例数量3、 说明:由于没个控件的有效数据(有效等价类+有效边界值)的数量一般不会完全相等,所以我们在测试某个控件的有效数据时,其他控件的有效数据已经全部测完,这时需要从这些已经测完的数据中重复选择有效数据,这种冗余是不可避免的。在测试目的中,冗余的部分就不要在写了(即已将测过的有效数据,已经在目的中写过的就不要在另一个用例的目的中再写了)4、 无效等价类的强化在开始的时候,一条用例只测试一个控件的一个无效等价类或一个无效边界值-无效等价类在开始时不能组合-避免屏蔽现象发生(前面的错误提示出现了,后面的错误提示就不出现了)最后,再根据时间情况适当考虑不同控件

15、无效等价类(或无效边界值)的组合,或者同一个控件不同无效等价类(或无效边界值)的组合、5、 无效等价类考虑的因素有效等价类的数量。一般较少,无效等价类的数量一般较多(是有效等价类的2-5倍)有效等价类可以从需求中直接找到答案无效等价类可以从以下因素考虑:(1) 要求:不能为空,无效等价类为空(2) 要求:不能重复,无效等价类重复(3) 数据有大小范围无效 无效数据超出范围 事例: 年龄:18-60 无效:60(4) 字符有个数要求无效:字符个数超出范围例如:3-20个字符无效:20个字符(5) 数据有格式、样式、类型要求 无效:格式、样式、类型、非法 示例:要求:整数”无效:非整数(小数、字母

16、、汉字、符号)要求:“小数”无效:非小数(字母、汉字、符号)(6)小数点最多保留位数要求 无效:小数点位数超长6、 有效等价类划分的一些技巧1、如果数据要求里没有说什么不可以包含,默认就是允许的2、310个英文字符(或5个汉字)例如有样的要求的有效等价类只要写出:3-10个字符 就可以了(因为字符包括英文字符和汉字字符,一个汉字字符等于两个英文字符)但是写测试用例的时候,尽量要多组合来测例如:字母数字,字母符号、数字符号。的组合3、数据要求范围小的,无效等价类 有效等价类,边界值 重复了的数据(因为数据范围小,这中重复时不可避免的)那么写测试用例写数据的时候尽量不要重复4.一些要求是小数的例如

17、工资,如果没有明确说不能是整数的话,(1)则可以是整数,要写在有效等价类里边(2)无效等价类,边界值,只要写出一套小数的就可以了(3)边界值里也要写出小数点位数 的边界值:例如:小数点后最多保留两位,边界值就要写出:小数点后2为,小数点后1位,小数点后3为(4)如果要求为小数有位数的,边界值只要找到要求的最少位数,的精度,最大值,最小值加减就可以了例如:1.0030000.00之间的小数 最多保留2为小数 则其最小精度为0.01 那么其边界值为:1.0 0.99 1.01 30000.00 29999.99 30000.015、整数在计算机中是按照“补码存储”整数和负数的补码计算方式不同,有必

18、要单独测把有效等价类-9999细化为:-99-1的整数099的整数 说明:(1) 如果需求要求为“字符”,意味这可以输入:字母、汉字、符号、0-9的数字(2) 在标准的编码中(ASCII、gb2312)中,一个英文字符占一个字节(8位二进制),一个汉字字符占两个字节(16位二进制)(3) 如果需求要求是小数,如果没有特别声明,“不允许整数”意味这可以包含“整数”需要单独测试(4) 如果允许为空我们需要测试把“为空”当做有效等价类7、 无效等价类常见处理方式(1) 允许无效数据输入,最后给出错误提示-重点检查提示信息正确性、点击完“确定”后程序是否继续运行、光标定位准不准确(2) 允许无效数据输

19、入,程序会自动把无效数据纠正成有效数据(3) 无效数据无法输入第五讲(因果图法)一、基本概念在一个窗口中,有多个操作,操作和操作之间存在组合关系和限制关系,不同的操作组合会产生不同的输出结果的组合,为了弄清什么样的操作(输入)组合,会产生什么样的输出组合,使用因果图法二、因果图法核心概念1、因输入条件、用户所做的操作、原因2、果输出结果、用户做完操作的结果、结果使用画图的方式,表达因(输入条件)和果(输出结果)的关系三、图形符号1、基本图形符号表达的是因(输入)和果(输出)的关系恒等与()非或(v)2、约束限制符号约束的是同一类的要不然同时约束的是输入,要不然同时约束的是输出互斥(E)(重点)

20、最多只有一个1(即最多只有一个可能成立)实例:(一开始没有选中的项)唯一(O)only(重点)有且仅有一个1实例:(一开始有一个选中的值)说明:互斥,和唯一在程序中主要区别就是有无默认值,互斥没有设置默认值,唯一 是设置了默认值要求(R)required(重点)箭头指向谁要求谁如果A要求BA=1,B必须为1实例:(自动登录如果勾选了,记住密码必须勾选)屏蔽(M)masked箭头指向谁屏蔽谁如果A屏蔽BA=1,B必须为0实例:(第一个错误提示出现了,就会屏蔽掉第二个错误提示)包含(I)include至少包含一个1实例:四、用因果图法分析程序需求:开发的程序样式1、找出所有的“因”(输入条件),将

21、其编号(1)投币50元(2)投币100元(3)充值50元(4)充值100元2、找出所有的“果”(输出结果),将其编号 (只要把动作找完就可以,细化的可以不用写)A、充值成功并退卡B、提示充值成功C、找零D、错误提示并退卡步骤1、2是初步分析需求的过程画出输入和输出的图形3、在步骤1基础上,找到输入的限制关系和组合关系(1)组合关系(决定了测试用例的数量)输入(1)(3)组合输入(1)(4)组合输入(2)(3)组合输入(2)(4)组合输入(1)单独输入(2)单独输入(3)单独输入(4)单独(2)限制关系(为了给画因果图做基础,即互斥例的情况不能同时出现,互斥的情况不会增加测试用例的数量,但是最好

22、把互斥的情况在预期结果中写出例如:下边的(1)(2)互斥则测试用例中:操作:点击请投币50元按钮,预期结果:请投币两个按钮置灰(即投币50元跟投币100元互斥不能同时存在)条件(1)(2)不能组合(互斥)条件(3)(4)不能组合(互斥)4、在步骤2的基础上,找到输出的限制关系和组合关系(熟练以后此步可以省略)(1)组合关系结果(输出)AB是必须组合(要求R)结果(输出)ABC组合结果(输出)CD组合结果(输出)D单独存在(2)限制条件结果(输出)A D不能组合结果(输出)BD不能组合步骤3和4是深入分析需求的过程画出输入和输出的限制关系5、根据步骤3(1)和步骤4(1),找到输入组合和输出组合

23、的对应关系(什么样的输入组合产生怎么样的输出组合),写出判定表判定表只能表现出组合之间的关系,不能表达出限制的关系情况1:输入(1)(3)组合会产生:输出A和B组合 情况2:输入(1)(4)组合会产生结果(输出)CD组合情况3:输入(2)(3)组合会产生结果(输出)ABC组合情况4:输入(2)(4)组合会产生:结果(输出)AB是必须组合(要求R)情况5:输入(1)单独会产生输出CD组合情况6:输入(2)单独会产生:输出CD组合情况7:输入(3)单独会产生:输出D组合情况8:输入(4)单独会产生输出D组合6、根据判定表编写用例把判定表的1列转换成1条用例,测试1种组合关系第六讲(判定表法)一、基

24、本概念1、判定表法就是因果图法的简化,省略画图过程(即直接分析写出判定表就可以了)2、任何编写用例的方法,可能只试用与窗口中的某几个控件,为了测试整个窗口往往需要综合应用多种测试用例的方法二、如何综合应用各个写测试用例方法例子:需求:数数数程序:(1)根据控件的特点,选择正确的方法A、工资薪制和错误程度需要考虑组合判定表(因果图)B、基本信息部分为填写项等价类、边界值(2)根据选择的方法,对控件分别进行分析说明:分析的时候,是对每个控件“单独”分析,(3)根据前面的分析,“综合”编写用例例子:在文档的:E:测试用例结构图法、判定表法工资发放判定表等价类划分注意:如果下边的控件用到上边控件的数值

25、的话,尽量两个控件多组合测试如:本例中的工资为空的情况三、总结1、判定表法(因果图法)主要考虑控件组合2、但是每个控件的条件不宜太多,最好为2-3个,如:按钮按下/不按下,单选按钮(复选框):选择还是不选择,只有2-3个取值的下拉列表3、“因”(输入条件)称为“条件桩”(输出结果)称为“动作桩”4、判定表的特点:(1)输入条件的排列顺序无所谓(2)输出结果的排列顺序无所谓(3)判定表的列的顺序可以调整(先测试那种组合都可以),每种组合是相对独立的第七讲(正交排列法)一、应用场合一个界面上有很多的控件,1、每个控件下有很多的取值,测试时,需要测试每个控件所有取值组合的情况,2、并且组合数量较大,

26、(组合20中、几十种、几百种、几千种),3、从代码的角度考虑,不同的组合基本测试的是同一段代码,考虑使用正交排列法判定表法和正交排列法的区别:都适用于测试控件组合情况。但是判定表法适合测试组合数量较少(20种),并且从代码角度考虑,不同组合测试的是相同的代码;二、正交表是由研究数学的人研究出来解决数学问题,一共九种,测试人员只要会应用,或做一些修改后会应用即可公式:Ln(mK)解释:L:Line(行)n:正交表的行数,测试组合的数量说明:选择正交表时不用考虑n,只考虑m,k,因为n是固定的 K:代表正交表的列数,选择的正交表适用于有K个控件的情况 M:代表正交表中允许出现的最大值(最小值都是从

27、1开始),选择的正交表适用于每个控件有m个取值的情况例如:代表:三、正交表的使用步骤1、分析需求:列出所有的控件和每个控件的取值2、根据分析后的需求,选择合适的正交表(也就是选择低M、和次幂K)(1)根据控件的个数,选择次幂K(正交表的列数) 次幂K=控件的个数=正交表的列数 例子:设置字体 4个控件=k=4(2)根据每个控件的取值个数选择低m (正交表中允许出现的最大值)低m=控件的取值个数例子:设置字体每个控件的取值为3=m=3(3)n的值不用选取,代表需要测试的组合数量 所以最终的正交排列公式为:343、将正交表中的列名(ABCD.)和取值(1234.)列名使用控件名称替换,取值使用控件

28、的真实取值替换(即把相应的正交表复制过来,将其值修改为控件名称即可) (1)列名=控件名称 (2)取值=控件的真实取值4、编写测试用例,每一行对应的是一种组合情况(一行为一条用例) 说明: 判定表:是一列测试一种组合情况(一列对应一条用例) 正交排列法:每一行对应的是一种组合情况(一行对应一条测试用例)5、经过正交表得来的用例条数,是最少的最优的组合情况,但是只要有遗漏,就有发生缺陷的风险,所以时间允许的情况下应该尽量在补充其他的组合情况四、正交表的局限性1、目前可用的正交表数量较少(9种)2、当前9种可用的正交表基本要求每个控件的取值数量要相等,在实际测试工作中很难遇到五、正交表的设计思想1、尽量使每个控件的所有取值参与组合的次数相等公平原则2、在所有的组合中挑选测试组合时,要均匀、零星的选取均匀、零星原则六、如果没有合适的正交表怎么办?1、分析需求:列出每个控件以及每个控件的取值2、根据需求选择合适的正交表(确定低m次幂k 即可)(1)根据控件的个数确定次幂k(如果没有合适的次幂k,选择大一点即可)案例:powerPoint数据分析-中的数据分析A 4个控件-k=4(2)根据每个控件的取值个数确定低m(如果没有合适的底m?)A、少数服从多数原则:先看那些控件取值个数相等,取相等数最多 的控件取值个数为底m案例:powerPoint数据分析-中

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1