测试报告
1.安装   安装成功  使用 配置文件加上这句就行  然后控制台输入pytest执行
2.控制用例执行顺序插件
unittest执行顺序是根据assicc码大小执行的,小的先执行 pytest是从上到下执行的 可以通过pytest-ordering控制执行顺序 安装: pip install pytest-ordering
@pytest.mark.run(order=x)
其中x:全是正数或者负数的时候,越小优先级越高
有正数和负数的时候,正数优先级高
写成pytest.mark.的时候是最后执行这个用例
import pytest
def add(x,y):
return x+y
class TestAdd:
@pytest.mark.run(order=6)
def test_01(self):
result = add(1, 8)
assert 9 == result
@pytest.mark.run(order=-2)
def test_02(self):
result = add(44, 8)
assert 9 == result
@pytest.mark.run(order=9)
def test_03(self):
result = add(4, 8)
assert 9 == result
3.失败重试
安装插件:pytest-rerunfailures 执行:第一次执行失败之后还会执行3次 
4.跳过执行
这两种方法放在类上或者方法上都可以执行
第一种
version = 21
@pytest.mark.skipif(condition= "version>20", reason="版本更新不执行")
第二种
@pytest.mark.skip(reason="不执行原因")
5.数据参数化
selenium得安装模块,pytest不用,自带的
参数个数和数据要相同,不一样就会报错
@pytest.mark.parametrize(argnames=,argvalues=)
@pytest.mark.parametrize("x,y,xcept", [(1,2,3),(2,2,4),(3,2,5)])
def test_02(self, x, y, xcept):
result = add(x, y)
assert xcept == result

|