1.类变量
Class test_01:
Get_token=””#类变量
Def getToken():
Res=Request.post(url,data)
test_01.Get_token=Res.json()[“token”]#获取的token自动传给类变量,以方便其他函数调用
2.request与Requests.request与session.reauest
第1层:request:get
Post
Put
Delect
第2层:Requests.request(‘get’,url,**kwargs):每个请求都是独立的
第3层:session.reauest(method,url,**kwargs):是最底层,这个不需要关联,自己session里自动关联
3.Pytest框架下配置文件pytest.ini
pytest.ini文件要放在项目的根目录下
内容如下:
[pytest]
#配置参数,打印信息更详细
Addopts = -vs
##Addopts = -vs -m “smoke” #只执行冒烟用例
##Addopts = -vs -m “smoke or user” #执行冒烟和用户管理用例
#改变用例查找规则
Testpaths = ./testcases #指定查找用例路径
#改变模块的查找规则(默认test_*.py)
python_files = aatest_*.py或者*_test.py
#改变类的查找规则
python_files = Test*
#改变函数的查找规则
python_function = test_*
#标记
Markers =
smoke:冒烟测试
user:用户管理
#具体应用如下,在函数上加上这个修饰器@pytest.mark.smoke
#@pytest.mark.smoke
#def test_get_token (self):#这个用例就被标记为冒烟用例了
# Print()
#@pytest.mark.user
#def test_user(self):#这个用例就被标记为冒烟用例了
# Print()
4.Pytest的前后置固件:fixture(比setup,teardown更灵活,更强大)
@pytest.fixture(scope=’作用域’,params=”参数化”,autouse=”自动执True行或手动false”,
Ids=”参数别名”,name=”别名”)
scope级别:function,class,module,session
5.多个第三方库,一起放在txt文件里,一条命令同时安装
requirements.txt
pytest
pytest-html 生成html报告(注意:写进txt文档里,中文注释要去掉)
pytest-xdist 多线程执行
pytest-ordering 控制用例的执行顺序
pytes-rerunfailures 失败用例重跑
pytest-base-url 基础路径
allure-Pytest 生成报告
自动探测,一起安装命令:
pip install -r requirements.txt
6.Pytest框架执行方式(3种)
1.命令行:pytest
2.主函数:pytest.main()
3.通过配置文件pytest.ini来改变以及执行用例
不管是命令行还是主函数,都会读取pytest.ini配置文件来 执行(优先级最高)
视频地址https://www.bilibili.com/video/BV1nV4y1K7Ty/?p=7&spm_id_from=pageDriver&vd_source=dd79a1deb8e70d82033174f57e6e28b3
pytest笔记
于 2023-04-09 22:35:48 首次发布