Pytest简介及基础应用

一、Pytest简介及常用插件安装

Pytest是一个非常成熟的单元测试框架、灵活、简单。

可以结合selenium、requests、appium完成各种不同的自动化。

它还可以生成自定义allure报告以及与Jenkins持续集成

Pytest有很多强大的插件:

  1. Pytest-html 生成html报告的插件
  2. Pytest-xdist 多线程运行的插件
  3. Pytest-ordering 改变用例执行顺序的插件
  4. Pytest-reunfailres 失败用例重跑的插件
  5. Allure-pytest 生成美观自定义的allure报告

通过在项目的根目录下面,新建requirements.txt,里面添加需要安装的插件,然后在下方终端命令窗口,输入命令pip install -r requirements.txt进行安装,一定要在虚拟环境venv安装,方便后续测试项目移植。

二、 Pytest测试用例规则及基础应用

 2.1、Pytest测试用例规则:

  1. 模块名(py文件)必须test_开头或者_test结尾
  2. 测试类(class)必须以Test开头,并且不能带有init方法
  3. 测试用例(py文件中的def定义的函数)必须以test_开头

2.2、Pytest执行:

2.2.1 通过命令行方式执行

Pytest

执行参数:

1)-vs  (v输出详细信息,s输出调试信息)如:pytest -vs

2)-n  (多线程运行,插件pytest-xdist)如:pytest -vs -n=2

3)--reruns num (失败重跑,插件pytest-rerunfailres)如:

     pytest -vs –reruns=2 

    raise Exception() 抛出异常

    try except 解决异常

4)-x (出现一个用例失败则停止测试)如:pytest -vs -x

5)--maxfail (出现几个失败才终止测试)如:pytest -vs –maxfail=2

6)--html (生成html报告,插件pytest-html)如:pytest -vs --html ./reports/result.html

2.2.2 通过主函数main方式执行

一般会在项目的根目录下面建run.py文件写main函数

if __name__ == '__main__':
    pytest.main()

    pytest.main([“-vs”])   #添加参数

2.2.3 通过全局配置文件pytest.ini文件执行

注意:

一般放在项目的根目录下,名称必须是pytest.ini

编码格式为ANSI

Pytest.ini文件可以改变默认的测试用例规则

不管是命令运行也好还是主函数运行,都会加载这个配置文件

[pytest]

#参数
addopts = -vs
testpaths = ./testcases
python_files = test_*.py   #改变测试文件的命名规则

python_classes = Test* #改变测试类的命名规则

python_functions = test_* #改变测试用例中的方法命名规则

#测试用例分组执行
markers =
    smoke:冒烟用例
    product_manage:商品管理模块用例
    user_manage:用户管理模块

测试用例分组执行时需要:

在测试方法前加@pytest.mark.smoke

在pytest.ini文件修改参数addopts = -vs -m “smoke

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值