import pytest
import requests
# def test_001():#函数 ----------------方法
# #断言
# print('test_001开始')#要想输出信息,加一个-s
# assert 1+2 == 3
# print('test_001结束')
#
# #封装测试类
# class Test_login:#---------------------类
# def test_003(self):
# assert 1+2==4
#--------自带的装饰器--mark
# @pytest.mark.parametrize('inData',[10,20])#---------参数化-----inData是参数化的文件,[10,20]是参数化的数据,把要参数化的函数写进去,如下
# def test_001(inData):-----------------一个参数inData
# assert inData==3
# @pytest.mark.parametrize('inData,outData',[(10,20),(30,40)])#-------------两个参数这样定义
# def test_001(inData,outData):
# assert inData+outData==3
#--------接口实战
def test_get_token():
token_url='http://www.xxx'#url
header_token={'Cotent-Type':'application/jason'}#请求头
payload={'userName':'12336728126','password':'8888863'}#请求体
#--------发送请求
reps=requests.post(token_url,jason=payload)
# return reps.json()['token']#----------返回字典格式
#----------------断言
assert reps.json()['msg']=='成功'
#---------------参数化
token_data=[{'userName':'12336728126','password':'8888863'},{'userName':'1233','password':'56373'}]#-----假设第一组是正确的,第二组是错的
#-----实际工作中的数据是读取excel
@pytest.mark.parametrize('inData')
def test_get_token(inData):
token_url='http://www.xxx'#url
header_token={'Cotent-Type':'application/jason'}#请求头
payload=inData#请求体
#--------发送请求
reps=requests.post(token_url,jason=payload)
#----------------断言
assert reps.json()['msg']=='成功'
#-----生成报告,在下面加一个'--html=../test_report/xt.html'
if __name__ == '__main__':
pytest.main(['test_func.py','-s','--html=../test_report/ceshi.html'])#在这里加-s
pytest接口自动化测试
最新推荐文章于 2024-05-24 15:43:41 发布