测试框架Pytest实战(一)

一、Pytest基本介绍

目前,项目上常用的测试框架,针对不同语言版本,有不同的框架封装,常用的有以下四种:

  • Python:unittest,pytest
  • Java: testng,junit

第三方框架Pytest,它在保留了UnitTest框架语法的基础上有着更多的优化处理,是自动化测试中最易入手,最易落地交付的框架。

二、框架的优势

  1. 基于python的单元测试框架,它可以和selenium,requests,appium结台实现目动化测试.
  2. 实现用例跳过skip和reruns失败用例重跑。
  3. 它可以结合allure-pytest插件生成allure报告.
  4. 很方便和jenkins实现特续集成.
  5. 强大的插件库:
    1. pytest-html :主要生成html测试报告
    2. pytest-xdist :用来多线程执行测试用例
    3. pytest-ordering :改变测试用例的执行顺序
    4. pytest-rerunfailures :失败用例重跑
    5. allure-pytest :生成allure报告
 插件的安装方式:

方法一(插件单独安装,用一个安装一个):

可以直接在终端命令窗口输入命令,如下:

pip install pytest

方法二(在已经确认项目所依赖的插件的情况下,批量安装):

1.新建txt文件,名字为 requirements.txt (注意名字拼写),文件内容如下:

2.将文件存放在项目根目录,如下图所示的位置:

3. 在终端命令窗口输入下面的命令,进行全部依赖插件的安装

pip install -r .\requirements.txt

 三、使用规则

1.模块名必须以test_开头或者_test结尾。
2.测试类必须以Test开头,并且不能带有init方法.
3.测试用例必须以test开头。
命名规范:
模块名:一股全小写:多个英文之问用_隔开
类名:类名一股是首字母大写
方法名:一股全小写:多个英文之间用_隔开。

四、运行方式

4.1.主函数方式

在根目录创建主函数文件,运行主函数后,testcases文件夹下的所有用例都会默认执行,参考如下:

main() 函数内经常使用的参数(注意参数格式为:字符串列表),主要有以下几种:
-v:输出更加详细的信息。比如文件和用例名等。
-s:输出调试信息,打印信息等,
可以合并成:-vs


--reruns数字:失败重跑
-x:出现1个失败就停止测试。
-maxfail=2出现N个失败就终止测试.
-html=reports/report.html生成html怕的测试报告
-n=3 多线程。


4.2 命令行方式

直接在终端窗口输入pytest


4.3 通过pytest.ini的配置文件运行

配置文件内还可以定义用例分组:

markers = 
    smoke : 冒烟用例
    caharge : 充电模块

根据定义的分组信息,在用例上使用@pytest.mark.smoke

 

执行冒烟用例时,直接在配置文件中添加以下参数

五 、Pytest测试用例执行顺序

1. 默认顺序为从上到下

2. 若想改变默认 用例的执行顺序,可以在用例上加标记:(有order装饰器的优先)

class TestAPI01:

    @pytest.mark.run(order = 1)
    @pytest.mark.smoke
    def test_api01(self):
        print('test_api01接口测试通过')
        raise Exception("系统执行出错")

六、Pytest测试用例跳过

1.无条件跳过

2.有条件跳过

 七、用例前后置

                 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值