用脑袋做测试
作者:网络转载 发布时间:[ 2011/10/13 13:11:10 ] 推荐标签:
引用下不知道是哪位老大说的话,我们是测试员,不是测试机器,我们和测试机器的区别,在于人是活的,机器是死的。
很多刚从事测试的朋友在设计测试用例时不知道如何下手,甚至不知道怎么去测试,感觉自己找不到BUG,有一种挫折感。实际上在一些中小型公司,测试未成为体系的公司,我们测试员常常一个人负责了一个项目,包括需求,测试,缺陷报告等等全是我们一手操作。
仅以黑盒测试为案例
一、了解业务
如果你手上的项目没有需求,没有文档直接让你测,你是很难找到BUG的,要知道开发人员在开发的时候是会自测的,也是在功能上很难直接找到BUG,这时,你要多去问,多去了解业务,了解业务是设计测试用例的前提, 试问一个连业务都不了解的测试员如何去设计测试用例,如何保证测试用例的覆盖面积呢。
二、设计测试用例
对于一个项目只有一个测试员来说,设计测试用例的方法实际上没有那么多讲究了,关于测试用例设计方法网上有很多诸如因果图,等价类甚至路径测试等我不一一述说了,这里主要介绍一种适合新人的设计方法,这种方法理解起来简单,做起来也容易,关键的是这种设计方法是测试的一个项目整体,也是说在大的面积里能达到一个很客观的覆盖面积,非常适合新手,方法名为----场景分析法
场景分析法以一条基本流为主,发散出多条备选流以达到覆盖效果,设计出来的测试用例不是一个单纯的数据,而是一个完整的业务操作过程,这个地方需要前面说过的了解业务,只有充分了解业务,在设计基本流的时候才不会有过多的遗漏,同时发散出来的备选流也能达到更多的覆盖效果。下面以添加--修改--审核--发布---删除审核---彻底删除为基本流(假设了解业务时,已经明确业务要求添加的数据可以修改,修改后要通过审核才能发布,彻底删除前页需要进行删除审核)
这里的基本流是添加--修改--审核--发布---删除审核---彻底删除,这个基本流是一个完整的业务流程了
那么发散出来的备选流,可以有
1、添加--删除
2、添加--发布
3、添加--发布--删除
4、添加--修改--删除
......等等,单只是这一条基本流能发散出很多备选流,这里的覆盖面积单独针对这条基本流已经很好了,如果添加的数据对于其他的功能模块有关联,也可以将此功能模块加入到基本流里,比如添加的是图书信息,与他管理的还有库存管理信息,这个时候我们可以在基本流里么加入一个库存管理信息的查看功能,根据对业务的了解,设计多条基本流,要覆盖所有的功能模块,这样能覆盖所有的功能模块不至于遗漏。
三、功能测试使用工具,开始简单的自动化测试
我们测试时,常常需要用到很多数据,单独的点击是行不通的,很多功能需要我们填写数据,比如添加,修改等。这时我们的工作量很重并且很无聊,很烦闷,这时我们可以开始接触自动化了,不用把自动化想的太难,实际上初我们只是使用一些皮毛,用自动化的工具录制脚本并回放脚本,再加入参数化设置,这样做至少会为我们节省百分之70的工作量,甚至更多,这里介绍下功能测试的工具QTP重点是QTP的参数化测试。
在第二步操作时,我们已经设置好了基本流和备选流,这时我们需要去下载一个QTP(其他工具也行,初学者建议使用QTP当然也要你的项目支持QTP才行)至于QTP的破解安装录制回放我不说了,网上有很多资料,并且也确实很简单,参数化其实也很简单。
在keyword view视图下 对应Value列 点击希望参数化的数据,数据后面会显示一个#号按钮,点击它弹出一个框,选择Paramter,这个属性后面跟着一个下拉框,下拉框里分别是Data Table,Environment,Random Number 分别代表了数据表格,环境变量,随机数。
对于新人,使用Data Table,Random Number 足够了,以Data Table为案例,选择Data Table后,下方会有Name,和Location in Data Table可以设置,name可以是中文,对应的是你所设参数的列名,比如“姓名”“账号”等。Location in Data Table,推荐使用第二个选项Current action sheet(local) 当然这里你也可以不管, 这里的设置主要是针对可能需要用到得部分循环,要做部分循环的话需要了解一下QTP的Action 这里不多说了
设置好参数后再QTP下方会有一个数据表格,我们只需要在录制好脚本后,把需要输入数据的地方设置上参数化,再将下方的参数化的数据表格填上数据,可以实现自动化了,这里有一点要注意了录制脚本时好做到一个完整的循环,假设 我们要新增数据,预想中的自动化:
点击新增---录入数据---点击确定(这里一定要确定页面返回到了点击新增前的页面,这样才能达到循环的效果)
这时QTP会根据我们的设置自动完成循环,假设你设置了参数化,并且设置了10组数据,那么QTP会循环执行10次代码 ,这时你可以泡杯咖啡 小小休息下了。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11