1、测试经验分享什么是软件测试什么是软件测试101 黑盒测试黑盒测试技术技术介绍介绍1102BUG描述介绍描述介绍2703一、什么是软件测试1、测试的英文单词叫TEST,测试包括硬件测试和软件测试,目前我们所做的工作,主要是软件测试,即 Software Testing。2、定义:使用人工或自动手段,来运行或测试某个系统的过程。其目的在于检验它是否满足规定的需求或弄清预期结果之间的差别。一、什么是软件测试3、测试环境:我们测试1个软件系统的第1件事情,通常就是搭建用来运行软件的测试环境,简单地说,软件测试环境就是软件运行的平台,即硬件、软件和网络的集合;硬件:主要包括PC机(包括品牌机和兼容机)、
2、笔 记本、服务器、各种PDA终端;软件:主要指的是软件运行的操作系统;网络:主要针对C/S结构和B/S结构的软件,在不同 的网络环境下,如,局域网还是互联网。一、什么是软件测试4、软件测试分类:黑盒测试和白盒测试是软件测试领域中的最基础的两个概念;黑盒测试(Black-Box Testing),指的是把被测得软件看做一个黑盒子,我们不关心盒子里面的结构是什么样子的,只关心软件的输入数据和输出结果,黑盒测试也称为功能测试,它包括功能测试和性能测试。一、什么是软件测试白盒测试(White-Box Testing),指的是把盒子盖代开,去研究里面的源代码和程序结构。黑盒黑盒X=2Y=4?X=2白盒白
3、盒Y=4Y=2x一、什么是软件测试5、按照测试阶段划分,可以将软件测试分为:单元测试、集成测试、系统测试、验收测试;单元测试:是指对软件中的最小可测试单元进行检查和验证;例如:在C语言中,单元一般只1个函数;在Java里,单元一般指1个类;在图形化的软件中,单元也可以指1个窗口、1个菜单等。总结起来,单元就是人为规定的最小的被测功能模块。一、什么是软件测试集成测试:是单元测试的下一个阶段,是指通过测试的单元模块组成系统和子系统。系统测试,指的是将整个软件系统看做1个整体进行测试,包括功能、性能以及软件所运行的硬件、软件。验收测试,指系统测试的后期,已用户测试为主或有测试人员等质量保障人员功能参
4、与测试。一、什么是软件测试6、软件测试应该追溯需求,这条原则贯穿整个软件生命周期,强调需求阶段对软件测试的重要性原始要求需求分析正确的规格说明错误的规格说明设计正确的设计正确编码正确功能编码测试错误设计对错误说明的设计错误编码对错误设计的编码对错误说明的编码可改正的错误不可改正的错误潜伏的错误不完善的软件产品一、什么是软件测试7、缺陷的二八定理:一般情况下,软件80%的缺陷集中在20%的模块中,我们测试的时候要抓主要矛盾,如果发现某一程序模块比其他模块有更多的缺陷,就要投入主要的人力和精力重点测试这20%的模块,以提高我们的测试效率;8、一般情况下,每次修复3-4个缺陷,就会产生一个新的缺陷,
5、所以要充分注意修改错误所产生的影响及波及效果。二、黑盒测试技术1、等价类划分法,它不考虑程序的内部结构,只是根据软件的需求说明来对输入的范围进行细分,然后再从分出的每一个区域内选取一个代表性的测试数据,如果等价类分得好,这个代表性的测试数据的作用就等于其区域内的其他取值;它的定义是指某个输入域的子集合。等价类又可分为“有效等价类”和“无效等价类”二、黑盒测试技术(1)等价类划分法举例 需求定义PC的供电电压在9V至16V之间,低于9V,PC某些模块不能正常工作,所以低于9V,PC不能开机。高于16V,PC电压过高会有烧坏元器件的隐患,所以,高于16VPC会自动关机进行保护。二、黑盒测试技术(1
6、)等价类划分法举例 划分输入数据电压电压输入范围输入范围9-16V取值范围16V二、黑盒测试技术(1)等价类划分法举例 设计输入数据有效等价类有效等价类无效等价类无效等价类电电压压9-16V16V二、黑盒测试技术(1)等价类划分法举例 设计测试用例编号编号电压电压输出输出116V无法开机二、黑盒测试技术2、边界值法也是黑盒测试技术的一种,是等价类划分法的一种补充,由长期的测试时间经验表明,边界值是最容易出现问题的地方,也是我们测试的重点;二、黑盒测试技术(2)边界值法举例 需求定义 筋斗云充值返点的规则测试,客户一次性充 值1000元至2000元之间,返点10元;超过 2000元,返点20元;
7、充值金额范围(元)充值金额范围(元)返点(元)返点(元)1000-20001000-20001010200020002020二、黑盒测试技术 设计输入数据 取值方法充值金额10009991000100010001001200019992000200020002001二、黑盒测试技术 设计测试用例按照不同的充值金额进行充值,会获得到不同的返点金额;取值方法取值方法测试充测试充值金额值金额返点金额返点金额100010009999990 0100010001000100010101000100010011001101020002000199919991010200020002000200010102
8、0002000200120012020二、黑盒测试技术3、因果图法:前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系,相互组合等.考虑输入条件之间的相互组合,可能会产生一些新的情况.但要检查输入条件的组合不是一件容易的事情,即使把所有输入条件划分成等价类,他们之间的组合情况也相当多.因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例.二、黑盒测试技术3、因果图法:因果图方法最终生成的就是判定表.它适合于检查程序输入条件的各种组合情况.二、黑盒测试技术3、因果图法:分析软件规格说明描述中,哪些是原因(即输入条件或输
9、入条件的等价类),哪些是结果(即输出条件),并给每个原因和结果赋予一个标识符.分析软件规格说明描述中的语义.找出原因与结果之间,原因与原因之间对应的关系.根据这些关系,画出因果图.由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不不可能出现.为表明这些特殊情况,在因果图上用一些记号表明约束或限制条件二、黑盒测试技术分析输出结果:项目项目输出结果输出结果开机开机正常开机无法开机自动关机二、黑盒测试技术从输出结果推出原因:输出结果输出结果原因原因正常开机电压在9-16V无法开机电压低于9V或高于16V自动关机电压由9-16V之间变为低于9V或高于16V二、黑盒测试技术4、流程图法:
10、黑盒测试的流程图是针对整个系统的业务功能流程的,流程图法的步骤为:a、详细了解需求;b、根据需求说明或界面原型,找出业务流程的各个页面几页面之间的流转关系;c、画出业务流程图(路径图);d、编辑测试用例,覆盖所有的路径分支;二、黑盒测试技术4、流程图法:登入身份验证查询商品选择商品网上付款出货退出NGOK页面跳转条件判断三、三、BUGBUG描述介绍描述介绍1、BUG的分类:a、按照严重程度划分:是指BUG对软件质量的破坏程度,即次BUG的存在对软件的功能和性能产生怎样的影响,按照严重程度由高到低的顺序可以分成5个等级:系统崩溃、严重、一般、次要、建议;b、按照优先级划分:表示处理和修正软件缺陷
11、的先后顺序的指标,即哪些缺陷需要优先修正,哪些可以稍后修正,按照优先级由高到低可以分成3个等级:高(High)、中(Mid-dle)、低(Low);三、三、BUGBUG描述介绍描述介绍1、BUG的分类:c、按照测试种类划分:可以将BUG分为逻辑功能类、性能类、界面类、易用性类、兼容性类;d、按功能模块划分:一般的软件产品都是分为若干个功能模块的,比如筋斗云里面的订单、项目、工单等功能模块;二八定理告诉我们,80%的缺陷大部分集中在20%的模块里面,测试的时候我们可以统计一下BUG主要集中在哪些模块里面,以便我们投入重点精力去测试;三、BUG描述介绍3、BUG的处理流程:实际上,不同公司的Bug处理流程一般是不同的,同一公司不同项目的Bug处理流程也不尽相同;通常情况下,一般都是遵循以下流程三、BUG描述介绍3、BUG的处理流程:4、常用的缺陷管理工具:TD(TestDirector)禅道BugfreeBugzilla提交缺陷报告分配缺陷报告处理缺陷报告关闭缺陷报告返测报告测试未通过