例如登录正反例,需要考虑账号不填,账号填错,密码不填,密码填错等等错误的提示
step 1:先在txt文件里写好测试用例和断言信息,然后直接修改后缀名为csv,将该文件放进项目里,例如file文件夹里
step 2: 在Utils工具类里添加读取csv文件的方法
@staticmethod
def read_csv(self, file_dir):
"""读取csv文件"""
item = []
with open(file_dir, 'r', encoding="utf-8") as files:
rFile = csv.reader(files)
for csv_i in rFile:
item.append(csv_i)
item = item[1:]
return item
step 3: 在登录接口引用该方法
import unittest
import requests
from loguru import logger
from tools.utils import Utils
class TestLogin(unittest.TestCase):
"""登录正反例"""
def test_login(self):
#引用上面的读取csv文件的方法,引用第一步建好的用例文件
lists = Utils.read_csv(self, file_dir="./file/login.csv")
for i in lists:
url = Utils.get_base_url() + "system/pc/api/sys/user/login"
# 登录入参的登录用户名是循环里的第一列,密码是第二列
request_params = {
"userName": i[0],
"password": i[1],
"ip": "127.0.0.0",
"loginName": i[0],
"loginPassword": i[1]
}
request_data = requests.post(url=url, json=request_params)
logger.info("登录接口入参:" + str(request_params))
response_data = request_data.json()
logger.info("登录接口出参:" + str(response_data))
# 断言时将用例文件里的第三列数据,与返回值的msg对比,如果包含在内,则测试通过
self.assertIn(i[2], response_data["msg"], "预期结果与实际结果一致")
step 4: 在runTest执行