(二)测试用例的使用技巧
这里主要分享一下黑盒测试的测试用例设计技巧,首先我们通过一个小测验,让大家能够直观的了解测试用例的设计思路:
小测验:
该程序从一个输入对话框中读取三个整数值,这个三个整数值代表了三角形的三条边的长度。程序显示提示信息:指出该三角形是何种三角形:不规则三角形、等腰三角形还是等边三角形。
测试用例的组成部分:
" 模块名称*
" 功能描述*
" 用例编号
" 用例描述*
" 测试方法和步骤*
" 测试数据(正例&反例) *
" 预期结果*
" 实际结果*
" 测试结论*
" 测试人员*
" 测试问题(禅道) *
" 解决结果(禅道bug回归验证) *
测试用例设计:
黑盒测试的基本方法:
(1)等价类的划分
等价划分:确定等价类(有效等价类&无效等价类)
要求:
从所有可能的输入中找出某个小的子集,同时这个子集必须是正确的,并且是可能发现最多错误的子集
测试每个等价类的代表性数据等同于测试该类的其他任何数据(等价类交迭)
优点:节省测试时间
实例:
三角形程序的等价类例子:
集合"三个值都相等,都大于0的整型数据"(有效等价类)
如果输入条件规定了一个取值范围(数量是1~99)
1<数量<99(有效等价类)
数量<1(无效等价类)
数量>99(无效等价类)
数量=1 数量=99
(2)边界值分析
边界值分析法与等价类划分法的区别:
1.与从等价类中挑选出任意一个元素作为代表不同,边界值分析需要选择一个或多个元素,以便等价值的每个边界都经过一次测试
2.与仅仅关注输入条件不同,还需要考虑从输出等价类来设计测试用例
实例:(数量)
如果输入条件规定了一个取值范围(数量是1~99)
数量=1;数量=99;数量=0;数量=100(测试用例)
优点:具有更高的测试回报率
(3)因果图分析
边界值分析和等价分析的弱点:
未对输入条件的组合进行分析,未考虑输入条件之间的相互制约关系
(4)错误猜想
基本思想:列举出可能反的错误或错误易发情况的清单,然后依据清单来编写测试用例
实例:"0"、"负数"、"空白"
当然,为了提高测试用例的覆盖率,除了以上的方法,还需要测试策略进行补充:
1.如果如果需求说明中包含输入条件的组合情况,应首先使用因果分析方法
2.在任何条件下都应使用边界值分析法,进行补充测试
3.应为输入和输出确定有效和无效等价类,对上面已确认的用例进行补充
4.使用错误猜想集数增加更多的测试用例
5.针对上述测试用例集检查程序的逻辑结构(白盒测试)
【TW的使用感受以及意见】
(一)感受
对于测试新手来说,TW无疑是快速了解自动化测试,并能应用到实际项目中,既快捷又易用的新型自动化测试工具。
1、 环境配置的重要性
在整个安装过程中,环境配置,尤为重要,所以在安装完SDK、JDK之后都要通过cmd命令检查是否安装成功。
2、 操作简单,易用性高
对于新手而言,首次接触自动化测试工具后,发现TW的易用性很高。看完使用手册后,基本就可以实现简单的自动化测试。TW的业务模块划分清晰,操作步骤基本都是按照业务模块进行划分。除此之外,在测试环节中,较为重要的测试用例编写环节也有所体现:每一步的录制操作就是将测试用例的执行步骤进行细分,多个测试用例集合起来就组合成一个测试目录(也可以称为"测试场景"),后期进行用例管理、项目管理也很方便。
3、 有效解决测试资产分配问题
通过迭代计划、项目不断的累积,被测对象的功能会越来越复杂,业务场景也会更多。进行一次全面的覆盖测试会话很久时间,TW的使用可以有效解决测试资产分配问题。通过日常测试用例和测试步骤的管理,可以轻松实现项目自动定期回归,无需测试人员干预。测试人员可以有效分配时间,提高测试效率。所以,前期的每个测试计划都是在为日后集成测试做准备,不能忽视。
4、项目易管理
TW的业务模块划分清晰,操作步骤基本都是按照业务模块进行划分。除此之外,在测试环节中,较为重要的测试用例编写环节也有所体现:每一步的录制操作就是将测试用例的执行步骤进行细分,多个测试用例集合起来就组合成一个测试目录(也可以称为"测试场景"),后期进行用例管理、项目管理也很方便,也可以通过项目管理,授权项目访问权限。
(二)改善建议
1、 提高响应速度
在使用的过程中,响应速度稍慢,等待时间稍长。
2、 添加问题反馈途径(支持文字和图片)
建议增加使用问题反馈途径,这样通过大数据的收集,方便后期问题帮助的整理,对症下药,准确解决用户的问题,文字与图片也能让问题反馈一目了然。
3、 添加帮助的菜单(支持关键字模糊搜索)
任何软件在使用的过程中,问题是最常见的,建议将群组里面整理的问题解决对策,分类并整合到帮助菜单,这样便于用户在第一时间搜索问题解决的方案。
4、 增加IOS自动化测试步骤说明书
对于Web和Android的步骤都很详细,对于IOS的较少,51testing上的帖子也很少。但现在几乎都是在Web、Android和IOS三个平台同步测试,建议增加IOS自动化测试步骤说明书,让使用说明更加体系化、全面化。
5、 支持引擎及时升级
在使用的过程中发现,计划调度成功,但是执行的时候,本地的浏览器闪一下就没了,执行信息提示版本过高。建议做一个热修复,这样即使浏览器有了新版本,也不会影响用户的使用。
【横向对比其他工具】
本人目前只研究过LR、UFT(QTP)、Xtest(腾讯优测)
这里主要就对比一下UFT和TW
1.相同点
1.1 支持录制和回放的功能
1.2 录制的时候通过页面元素和对象进行捕捉
1.3 操作界面都很直观、简介
2. 不同点
2.1 QTP只能实现windows,TW可以跨Web、Android、iOS三大平台
2.2 QTP无法进行测试项目和人员的分配管理,TW项目管理划分清晰,易管理
2.3 QTP 执行失败结果不清晰,TW失败截图,易跟踪问题
2.4 QTP要创建增强脚本,TW可以实现0脚本
2.5 QTP维护起来花时间,TW可以节省时间
通过以上简单对比,个人觉得,没有自动化测试基础的菜鸟们,可以和我一样,先研究TW,这样可以快速入门,也可以树立自己的信心。在这之后,自己可以再研究像UFT(QTP)、LR这种需要脚本进行维护的自动化工具,循序渐进,也更便于自己能力的提高。
51Testing软件测试网原创出品,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明,否则将追究法律责任。