unittest接口自动化测试第四页


"""封装登录测试接口用例"""


import unittest
import json
import re,time
from PycharmProjects.untetest_interface.common.communal import Communal
from PycharmProjects.untetest_interface.common.readfile import Read_File
from PycharmProjects.untetest_interface.common.logs import log


class TestLogin(unittest.TestCase):

@classmethod
def setUp(self) -> None:
"""在执行以下类方法先执行这个方法一次"""
print("测试执行开始")

@classmethod
def tearDown(self) -> None:
"""在执行完以下类方法再执行这个方法一次"""
print("测试执行结束")

def test_login(self):
"""登录测试用例"""
"""实例化文件操作函数,请求函数"""
self.common = Communal()
self.read = Read_File()
"""读取excel文件,将数据处理"""
self.read.read_file_path(filename=r"D:\PyCharm\pycharm_pure\book\PycharmProjects\untetest_interface\data\int.xlsx",
sheet_name="Sheet1")
table = self.read.read_excel()
"""循环excel行数,用列表获取excel的值"""
for i in range(0, len(table)):#这里是看文件行数,随意变化
"""将读取文件的数据进行反序列化"""
data = json.loads(table[i]["data"])
"""对获得数据发送,post请求,获得响应文本存在变量中"""
response = self.common.post_method(url=table[i]["url"], data=data)
"""使用正则表达式,获取指定的响应做判断"""
msgs = re.findall('"message":"(.+?)"', response)[0]
msg = table[i]["msg"]
"""判断响应结果是否预期一致"""
method = self.common.judge_text(msg=msg, msgs=msgs)
try:
self.assertTrue(method)
except Exception:
"""写入日志,测试失败"""
time.sleep(1)
log.logsinfo("测试用例失败")
"""写入excel指定空格作为测试结果"""
self.read.excel_write(row=i + 2, column=4, data=msgs)
self.read.excel_save()
print("预期结果和响应结果不一致")
else:
"""写入日志,测试成功"""
log.logsinfo("测试用例成功")
"""写入excel指定空格作为测试结果"""
self.read.excel_write(row=i + 2, column=4, data=msgs)
self.read.excel_save()

相关