在我们测试工作中,测试用例的编写至关重要,编写好的测试用例可以覆盖整个项目的测试,能够更好的找到缺陷,下面浅谈下我对功能测试用例编写的思路
在面试中,我们常常会被问到:给你一个纸杯,你要怎么测试?
不巧的是,我们大多数人都会说纸杯的功能,比如它能装多少水,装开水能不能烫手,纸杯的美观程度等等,当然,不是说这样想是不对的,而是没有考虑周全
我们要测试一个产品,要从多个维度来考虑:
《1》 安全性
纸杯在装满热水时,我们能不能够拿住它,他的耐热怎么样?纸杯装满水会不会漏水?
《2》 功能
纸杯可以装水吗?纸杯能够装满水吗?
《3》兼容性
纸杯能否装不同的液体:饮料、凉白开、热水、酒类
《4》产品设计
纸杯的外表是不是看起来很好看,样子设计是不是很精美
《5》用户体验
我在拿起装满水的纸杯去喝水,会不会溢出?
《6》性能
纸杯可不可反复使用,当喝完这杯水后,再去接水,纸杯会不会变软?先接热水喝完后,再接凉水,纸杯是不是会变化?
《7》压力
当我拿一根针,不断地施压,看多久纸杯会被穿透
《8》疲劳
在纸杯中装好水,观察24小时,看纸杯的状态是否有泄露?
接下来编写功能测试用例
功能测试用例的要素:
用例编号、模块、用例标题、前置条件、操作步骤、测试数据、预期结果、优先级、实际结果、通过否、编写人、编写时间、执行人、执行时间、参考文档、备注
从各个要素开始分析:
用例编号: 一般为产品的名称+case+编号,为了方便以后的查看用例,且编号不可重复,根据你要写的条数,比如我要写10条,那么就是这样:taobao_case_01,如果是百条: taobao_case_001…依次类推
模块: 如果说你要编写的模块,分为很多子集,比如在我的下有登录、注册,那就应该划分为一级模块、二级模块…依次类推,比如我要编写的是我的模块下的登录功能: 一级模块:我的,二级模块:登录
用例标题: 标题一定要直奔主题,你这个用例是拿来干什么的,简单、明了,标题也是不可重复,尽量不要把预期结果也写在标题中
前置条件: 你要执行这条用例前所要准备的东西,比如我要测试一个纸杯,那我先要有纸杯,而且根据每条用例的实际情况,来考虑
操作步骤: 将你测试的每一个步骤详细的说出,并分好1、2、3、4步骤等等
测试数据: 你在操作步骤中,需要输入的内容,没有可以不写,比如我测试纸杯,不需要什么测试数据,但是做登录的话,就需要输入账号和密码
预期结果:我们理想的预期结果,要与标题有关联,尽量考虑的周全一点,
优先级:一般分为高、中、低。像是有关功能的方面,为高,但是一些轻微的功能方面问题,可以考虑为中,ui为低
实际结果: 以执行后的结果为准写入
通过否: 预期结果与实际结果一致为通过,否则为不通过,当然,预期结果是我们测试人员在编写的时候预估的,那么大概相同也算通过
编写人、编写时间、执行人、执行时间,这些就不详细说了
参考文档:一般都是根据需求文档来编写测试用例,有些公司可能要先写测试点,根据测试点再去转化测试用例,当然,这只是一小部分,很多都是直接写测试用例的
备注: 我在执行这条用例的时候发现的问题,可能偶尔会出现,需要标记下或是其他超出与本条用例不合理的地方,方便我们测试人员回看
下面写几个例子:
另外,写用例时也要考虑到等价类、边界值、场景法、错误推测法、正交试验、因果图、判定表等
作者:曼 曼
原文链接:https://blog.csdn.net/weixin_46457203/article/details/106064158