python接口测试读取excel数据乱序

问题:

正确顺序

 

 读取顺序

 

 testcase代码

import unittest
import ddt
import os
from common.excel_handler import ExcelHandler
from config import config
from common import requests_handler

#获取Excel
excel_file = os.path.join(config.DATA_PATH,"cases.xlsx")
xls = ExcelHandler(excel_file)
test_data = xls.read_data("create_v0")



@ddt.ddt()
class TestUserCreate(unittest.TestCase):
@ddt.data(*test_data)
def test_usercreate(self,test_info):
#访问接口
resp = requests_handler.visit(
url = test_info["url"],
method=test_info["method"],
json=eval(test_info["data"]),
headers=eval(test_info["headers"])
)
#断言
# self.assertEqual(eval(test_info["expected"])["msg"],
print(resp["msg"])
#
# )
request代码import requests
def visit(
url,
params=None,
data=None,
json=None,
method='get',
**kwargs
):
"""访问接口,返回字典"""
res = requests.request(
method,
url,
params=params,
data=data,
json=json,
**kwargs
)
try:
return res.json()
except Exception as e:
return None

if __name__ == '__main__':
pass

返回的为字典形式,即为无序的


2023.03.21更新,使用postman尝试几次后发现均为乱码,检查发现接口请求类型为application/x-www-form-urlencoded,此类型只能传键值对,后端无法判断,只能以每次未收到对应参数随机返回缺少参数msg
更新header以后仍无法获得正常返回值,查找python使用application/x-www-form-urlencoded请求传值的正确方式
发现需先使用
urlencode转码
原博客:https://www.cnblogs.com/MTXue/p/13927351.html
执行成功

 

 

 
posted @ 2023-03-07 11:44  邓布利颖  阅读(116)  评论(0)    收藏  举报