1.安装
安装成功
使用
配置文件加上这句就行
然后控制台输入pytest执行
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次
这两种方法放在类上或者方法上都可以执行
第一种
version = 21
#condition 跳过的条件 reason跳过的原因
@pytest.mark.skipif(condition= "version>20", reason="版本更新不执行")
第二种
@pytest.mark.skip(reason="不执行原因")
5.数据参数化
selenium得安装模块,pytest不用,自带的
#argnames表示参数名称,是一串字符,多个用逗号隔开 "uaername,password" argvalues表示的是参数化数据【("111","222"),("332","2332")】
参数个数和数据要相同,不一样就会报错
@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
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)