您现在的位置是:首页 >其他 >关于测试用例网站首页其他

关于测试用例

海棠玛卡 2025-03-27 00:01:02
简介关于测试用例

一、概念

什么是测试用例?

测试用例是为了实施测试而向被测试的系统提出的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果等要素。

设计测试用例原则一:测试用例中一个必需部分是对预期输出或结果进行定义

举个例子:当我们买回来了一个新的电视机,我们需要对新的电视机进行测试,根据我们的个人经验,需要进行 开机测试、切换频道、调分辨率、测试网络电视、蓝牙功能等等,这些一条条的测试就是测试用例,这些测试内容不会写在纸上,但是软件中涉及到的特性太多了,仅仅通过头脑风暴是无法完成一次完整的测试的,因此需要编写测试用例,通过编写测试用例可以想到要测试哪些内容,通过一次次的更新修改将测试用例逐步完善,提高功能覆盖率。从前多用Excel来编写和管理测试用例,而现在多用脑图/思维导图来进行编写和管理。在笔试时要按照Excel表格的方式来编写测试用例(会涉及到测试用例的要素),而面试时回答测试用例题只要按照思维导图的方式一一道来即可(不会涉及到测试用例的要素)

案例:现有一款产品,要求对“门锁”设计测试用例,于是我们画出如下思维导图

以上这些测试用例还不够多不够具体,较为笼统,无法作为测试工作的参考依据。

二、如何设计测试用例

1、万能公式

设计测试用例的原则二:1)测试用例的编写不仅应当根据有效和预料到的输入情况,而且也应该根据无效和未预料到的输入情况;2)检查程序是否“未做其应该做的”仅是成功的一半,测试的另一半是检查程序是否“做了其不应该做的”(是上一条原则的必然结果)

如果设计测试用例是想一条说一条,没有正确的引导,那么说出来的测试用例是有限的且数量不容乐观的。因此我们需要使用万能公式,就是起一个引导作用,帮助我们按照分类来设计测试用例。

设计测试用例的万能公式:功能测试+界面测试+性能测试+兼容性测试+易用性测试+安全测试

功能测试:从产品功能角度出发,验证功能是否是正确的

界面测试:肉眼可以看到的部分都称为界面,界面所有的元素(大小、颜色、形状、材质)都需要测试

性能测试:通常为一些极端的情况

兼容性测试:不同版本(软件、系统)浏览器的兼容性不同的浏览器

易用性测试:具备简单易上手的属性(引导教程)

安全测试:是否具备危险材质、气味;接口响应数据也要考虑到用户数据的安全性、登录场景也需要将密码进行加密展示、数据存储用户隐私数据是否加密

按照万能公式尽可能多的设计测试用例:

2、弱网测试

除了上述万能公式外,还有一些特殊的测试场景。弱网测试的目的就是覆盖更多的网络场景,尽可能保证用户体验,关注的关键点包括:

1)页面响应时间是否可以接受,关注包括热启动、冷启动时间、页面切换、前后台切换、首字时间,首屏时间等。2)页面呈现是否完成一致。3)超时文案是否符合定义,异常信息是否显示正常。4)是否有超时重连。5)安全角度:是否会发生dns劫持、登录IP更换频繁、单点登录异常等。6)大流量事件风险:是否会在弱网下进行更新apk包、下载文件等大流量动作。

如何进行弱网测试?

借助工具来模拟实现弱网测试:抓包工具   fiddler   Charles

3、安装卸载测试

针对需要进行部署的软件,除了软件功能外,我们还需要关注软件的能够成功安装和卸载

安装:安装包是否可以安装、卸载之后是否可以继续安装、重复安装、软件更新后安装是否成功...

卸载:安装完成后卸载、安装一般后卸载、卸载一次后继续安装继续卸载、卸载一般停止后是否还可以继续卸载...

4、基于需求的设计方法

测试和开发工作开展的依据:软件需求

测试人员接到需求之后,要对需求进行分析和验证,从合理的需求中进一步分析细化需求,从细化的需求中找出测试点,根据这些测试点再去设计测试用例。但部分用例还需要细化,就需要借助具体的设计方法。

5、具体的设计方法

(1)等价类

依据需求将输入(特殊情况下会考虑输出)划分为若干个等价类,从等价类中选出一个测试用例,如果这个测试用例测试通过,则认为所代表的等价类测试通过,这样就可以用较少的测试用例达到尽量多的功能覆盖,解决了不能穷举测试的问题。

等价类分类:

有效等价类:对于程序的规格说明书是合理的、有意义的输入数据构成的集合,利用有效等价类验证程序是否实现了规格说明中所规定的功能和性能

无效等价类:根据需求说明书,不满足需求的集合

根据等价类设计测试用例的方式:1)确定有效等价类和无效等价类;2)编写测试用例,设计具体测试数据

(2)边界值

边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试的方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。

边界值包含:边界值+次边界值

边界值即给定返回的左数据和右数据,选择次边界值的时候需要根据边界值的有效无效情况来定:1)若边界值为有效等价类中的数据,则次边界值为无效等价类中的边界;2)若边界值为无效等价类中的数据,则次边界值为有效等价类中的边界

若有效范围是[6,15],则边界值为6  15,次边界值为5 16

若有效范围是(6,15),则边界值为6  15,次边界值为7  14 

(3)场景法

每个需求都存在一个基本的流程(主流程),在主流程里每个阶段都可能会发生一些其他的情况,导致流程出现异常(备选流)。根据事件确定基本流和备用流,编写测试用例

例如逛街买衣服

基本流:逛街进入喜欢的服装店,挑选喜欢的衣服,试过衣服后觉得合适交钱买下

备用流:出现了特殊情况导致不逛街了,重新规划逛街时间再去逛街,进入喜欢的服装店,挑选喜欢的衣服,试过衣服后觉得合适交钱买下

备用流:逛街进入喜欢的服装店,挑选后没有合适的衣服,继续寻找满意的衣服并进行试穿,找到合适的衣服后交钱买下

......

(4)正交表法

正交表的目的是为了减少用例数目。用尽量少的用例覆盖输入的两两组合

正交表的性质:1)每一列中,不同的数字出现的次数相等(一列中每个数字出现的次数是相同的);2)任意两列中数字的排列方式齐全而且均衡(每一列每个数字出现的次数是相同的)

例如:在注册邮箱时需要填写姓名、电子邮箱、密码、确认密码、验证码,每一项都有填写和不填写两种情况,如果采用穷举法则会有很多种情况,如果进行一一测试则会耗时耗力,因此借助工具(allpairs)来实现正交表来尽可能少的设计测试用例

设计正交表的步骤:

1.根据需求找出因素和水平

2.将因素和水平写入到Excel表格中(表格不需要保存),建议使用微软自带的Excel软件,不建议使用WPS等其他工具

3.在allparis.exe同级文件夹下创建一个txt文件,将Excel表格中的内容复制到txt文件中,不要有其他的操作直接保存文件

4.使用allparis.exe工具对txt文件生成正交表文件,没有任何的提示表示生成成功

这就是使用allpairs工具生成的正交表,allpairs工具生成的正交表和实际的正交表会有一定的出入,但是不影响整体的情况,~:表示可以是任意的选项:填写/不填写

5.根据生成好的正交表来编写测试用例,继续将重要的用例补全

若不使用Excel,而是直接手动在txt文件中编写因素和水平,使用命令生成正交表会存在格式校验错误的情况,allpairs工具对格式的要求非常严格

(5)错误猜测法

错误猜测法是对被测试软件设计的理解,过往经验以及个人直觉,推测出软件可能存在的缺陷,从而针对性地设计测试用例的方法。这个方法强调的是对被测试软件的需求理解以及设计实现的细节把握,还有个人的经验和直觉。错误推测法和目前流行的“探索式测试方法”的基本思想一致,这类方法在敏捷开发模式下的投入产出比很高,被广泛应用于测试。

例如:对于密码:是否加密,是否具备安全性;对于获取用户输入:是否存在SQL注入的情况;对于软件存在多版本:多个版本都要测试;对于活动每个月都存在但是每个月的奖励不一样:兼容前面月份的活动......

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。