python之UnitTest框架

最近在学习python性能测试,稍微了解了一下python自带的unittest框架,该框架主要在单元测试过程中,对测试用例进行管理和执行,在unittest模块中,提供了许多类和方法,通过调用这些类和方法,对测试用例进行高效管理和封装。

下面主要介绍一下unittest模块中的几个小模块:

首先是测试用例。测试用例可以说在测试过程中最基本、最原始的数据。测试用例可以是一个测试点不同的测试输出,比如登陆功能有正常的测试输出,有异常的测试输出;测试用例也可以是不同的测试点不同的测试输出。也可以通过在一个类中编写多个测试点,进行组合测试。测试用例是原始数据,可以灵活使用。以下是登陆功能点的部分测试用例:

第二是测试固件。所谓的测试固件,顾名思义,就是将固定的测试代码封装在一个方法中,然后在接口参数值中进行调用。例如登陆功能中编写多条用例,每条用例中都会有一个url,那么可以将url地址放置在测试固件中,然后每条用例url通过self.url进行调用。测试固件的好处在于当测试用例数量比较多时,可以将相同部分放置在测试固件中进行初始化,如果这部分的数据发生变化时,可以方便修改,不容易出错,同时可以大大缩短代码行数,缩短工作量。

以下是在步骤一中结合测试固件进行优化的脚本。使用setup()将url进行初始化,然后提供给测试用例调用:

第三是测试套件。测试套件是将多个测试用例集合在一起。测试套件也可以有多个,比如在一个方法中将同一个类型或者同一个功能点的测试用例放置在同一个测试套件中。

以下是结合了测试套件的详细信息,使用makesuite()函数将login中的login开头的用例加入测试套件中:

也可以添加多个套件,如图所示:

第四是测试运行。python中unittest框架通过run()函数,进行运行测试用例。但是运行的测试用例,没有报告输出,在这里需要下载导入一个扩展模块HTMLTestRunner,通过调用该模块中的方法,构建一个运行器对象,并将结果输出。由于HTMLTestRunner不能通过pip进行下载,所以需要到官网下载py文件,下载完成后,将文件放置在python安装lib目录下即可。

以下是测试运行的相关脚本:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值