详解Pytest测试用例运行模式

1、主函数模式

(1)运行所有:

  pytest.main()
(2)指定模块:

pytest.main(['-s','-v','testCase/test_03.py'])

(3)指定目录:

pytest.main(['-s','-v','testCase])

(4)通过nodeid指定用例运行:nodeid由模块名,分隔符,类名,方法名,函数名组成

pytest.main(['-s','-v','testCase/test_03.py::test01'])

pytest.main(['-s','-v','testCase/test_03.py::TestWord::test02'])

2、命令行模式

(1)运行所有:pytest
(2)指定模块 pytest -vs ./testcase/test_01.py
(3)指定目录 pytest -vs ./testcase
(4)通过nodeid指定用例运行:nodeid由模块名,分隔符,类名,方法名,函数名组成
pytest -vs ./interface_testcase/test_03.py::test01
pytest -vs ./interface_testcase/test_03.py::TestLogin::test02

参数详解:
-s:表示输出调试信息,包括print打印的信息
-v:显示更详细的信息
-vs:可以放在一起使用

3.通过读取pytest ini配置文件运行 (最主要运用的方式)

#pytest.ini是pytest单元测试框架中的核心配置文件
  (1)位置:一般是放在项目的根目录
  (2)编码:必须是ANSI,可以使用notepad++来修改编码格式
  (3)作用:改变pytest的默认行为

(4)运行的规则:不管是主函数的模式运行该,命令行模式,都会区读取这个配置文件,注意实际项目中不要添加注释

1

2

3

4

5

6

[pytest]

addopts=-vs    #命令行参数 用空格分离

testpaths=./testcase #测试用例的路径 ./testcase/test_day2.py #

python_files=test_*.py  #模块名的规则

python_classes=Test*    #类名的规则

python_functions=test   #方法名的规则

4.pytest  fixture

pytest支持xUnit格式型的测试模型(setup/teardown),四种级别

(1)模块级别:使用setup_module 和 teardown_module

(2)函数级别:使用setup_function 和  teardown_function

(3)类级别:使用setup_class 和  teardown_class

(4)方法级别:使用setup_method  teardown_method

5.fixture scope的范围参数

使用@pytest.fixture(scope='module')来定义框架,关于scope的参数有以下几种。

    function    每一个用例都执行
    class         每个类执行
    module     每个模块执行(函数形式的用例)
    session     每个session只运行一次,在自动化测试时,针对于登录步骤可以使用该session定义
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值