post请求需要把data传参处理一下:json.dumps(data)
get请求传params就不需要转
import allure
import requests
import json
from comm import common
import pytest
import configparser
import pytest
import os
@allure.feature("登录")
@pytest.mark.run(order=1)
def test_login():
with allure.step("登录第一步"):
#登录
data= {"username":"123456","password":"1",}
headers = {"Content-Type": "application/json",}
url=common.host+'//login'
r = requests.post(url, data=json.dumps(data), headers=headers,allow_redirects=False )
print("登录第一步>>>>>>>>>",r.text)
# 提取accessToken
if(r.status_code==200):
accessToken=r.json()['data']['accessToken']
assert r.json()['code'] == 1000
else:
print("访问出错",r.status_code)
assert 0
# 提取token-data
common.user_token=r.json()['data']
print("========================",common.user_token)
# todo 写入配置文件
config = configparser.ConfigParser()
# 读取配置文件中目标环境的地址
config.read_file(open('../comm/conf.ini'))
config.set('config', 'v1', common.user_token)
config.write(open('../comm/conf.ini', 'r+'))
url = config.get('config', 'v1')
print("url>>>>>>>"+url)
assert r.json()['code'] == 1000
return r.json()['data']
if __name__ == '__main__':
pytest.main(['-s', '-q', '--alluredir', 'report'])
os.system("allure generate --clean report")