测试一个新功能时,最重要的一个步骤就是编写测试用例,测试用例写好了,那么后面的测试工作基本就非常顺利了,那么作为一个职场新人来说,怎样提高测试用例的质量呢?
?1、充分理解需求
作为一个新人来说,对所做项目并没有太深入的了解,那么拿到测试需求后,不应该拿到什么就是什么,需求上怎么写就怎么做,要有自己的见解。
举个例子来说,某个网站,年终大促,要搞个优惠活动,有两种优惠方式,第一种是店铺自己发的优惠,两件8折,3件7折;另一种是平台提供的优惠,满100-10,200-30;测试人员A拿到这个需求后,发现非常简单,迅速的就将测试用例编写完了,如下:
用例描述 | 前提条件 | 用例步骤 | 预期结果 | 两件商品打8折 | | 1、将两件商品加入购物车 2、在购物车选择这两个商品进行结算? | 1、两件商品都打8折 | 3件商品打7折 | | 1、将3件商品加入购物车 2、在购物车选择这3个商品进行结算 | 1、3件商品都打7折 | 3件以上打7折 | | 1、将4件商品加入购物车 2、在购物车选择这4个商品进行结算 | 1、4件商品都打7折 | 2件以下不打折 | | 1、将1件商品加入购物车 2、在购物车选择这1个商品进行结算 | 1、没有任何优惠 | 商品价格满100-10 | | 1、在购物车里勾选一件或者多件商品,价格满100 2、结算 | 1、结算价格 =实际价格-10 | 商品价格满200-30 | | 1、在购物车里勾选一件或者多件商品,价格满200 2、结算 | 1、结算价格 =实际价格-30 | 商品价格不满100无优惠 | | 1、在购物车里勾选一件或者多件商品,价格不满100 2、结算 | 1、没有任何优惠 |
乍一看是没有问题的,所有情况也都考虑到了,但是仔细研究的话会发现,其中漏掉了好多场景。测试人员B拿到这个需求后,发现有好多不明确的地方,比如说,两种优惠同事满足的时候,优先使用哪种优惠?优惠可不可以叠加使用?店铺发放的优惠只针对当前店铺吗?一个账号每种优惠是不是只能使用一次等等。带着这些问题,测试人员B就会与需求人员去沟通,等需求了解透彻之后,开始编写测试用例,对上面的补充用例如下:
用例描述 | 前提条件 | 用例步骤 | 预期结果 | 两种优惠形式同时满足的情况下,优先使用店铺优惠 | | 1、在购物车里选择多件商品,同时满足两种优惠形式 2、结算 | 1、先进行2件打8折或者3件打7折的活动 2、再进行满100-10,满200-30的活动 | 2件打8折、3件打7折的活动只针对当前店铺有效 | | 1、在购物车里勾选2件商品(属于不同店铺,价格总和大于100) 2、结算 | 1、满2件 8折活动 无法使用 2、100-10活动正常使用 | 优惠活动可多次使用 | 1、该用户已经参加过满减和打折的活动 | 1、在购物车里勾选多个商品,满足满100-10和2件8折的条件 2、结算 | 1、两种优惠可再次使用 |
所以说提高测试用例质量的一条重要途径就是挖掘潜在需求,只有将需求了解透彻之后,餐能提高测试用例的 覆盖率
2、参照其他同类型网站和功能
如果一个新功能,你之前没有接触和了解过,完全没有头绪的话,不妨借鉴一下同类型的网站上的类似需求,通过实践来帮助自己理解这个需求。
3、虚心求教
编写完测试用例后,让老员工来指导一下,是否有需要改进的地方,毕竟老员工的工作经验丰富,对容易出现bug的地方比较敏感,看有没有漏掉的地方。而且老员工一般对项目都已经非常熟悉了,通过跟他们沟通之后,可能自己也会发现一些不容易想到的点。
4、站在使用者角度看问题
功能的最终使用者是客户,我们要站在客户的角度来测试。比如说我们做了一个搜索产品的功能,作为测试人员我们会考虑:支持模糊搜索,可以搜索产品名、产品编码,可以按照产品颜色搜索等等。那么如果站在用户的角度,他们最关心的是什么呢?是搜索的速度,使用起来方便等等。所以站在客户的角度看问题能让我们收获更高的满意度。
5、测试用例步骤一定要清晰,让不懂测试的人看了也能执行
我们在写测试用例时,一定要将所有信息都描述清楚,比如说上面的最后一条用例,执行这条用例的条件是,该用户已经参与过优惠活动,这个一定要写清楚,不然容易造成测试用例错误的执行结果。再一个就是用例的执行步骤一定要写清楚,怎样进入的页面,怎样选择的商品都要一一描述清楚,让其他测试人员或者不懂测试的其他人看了,也能明白是什么意思。最后就是用例的预期结果,一定要将所有涉及到的结果都列出来,不然执行测试的时候容易将要验证的点漏掉。
说了这么多希望对大家能有所帮助。
|