Commit 396a2719 by demo1

atuo test v1.0

parent 9eb159df
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: __init__.py
# Author: xxxxx
# Datetime: 2024/12/26 16:40
# Description:
#
# ---------------------------------------------------------------------------
import functools
import logging
import os
import time
log_path = os.path.join(os.path.join(os.path.join(os.path.dirname(__file__), "report"), "log"), time.strftime("%Y_%m_%d_%H_%M_%S", time.localtime())+".log")
def project_log(log_file):
logger = logging.getLogger()
logger.setLevel("INFO")
handler = logging.FileHandler(log_file, mode='a', encoding="utf-8")
formatter = logging.Formatter("%(asctime)s - %(levelname)s: %(message)s")
handler.setFormatter(formatter)
logger.addHandler(handler)
return logger
project_log = project_log(log_path)
def log_decorator(func_name):
@functools.wraps(func_name)
def inner(*args, **kwargs):
try:
project_log.info(f"执行的功能为:{func_name.__name__}, 功能的描述为:{func_name.__doc__}, 所在的文件路径为:{func_name.__code__.co_filename}, 所做的行为:{func_name.__code__.co_firstlineno}")
res = func_name(*args, **kwargs)
except Exception as e:
project_log.error(f"执行的功能为:{func_name.__name__}, 功能的描述为:{func_name.__doc__}, 所在的文件路径为:{func_name.__code__.co_filename}, 所做的行为:{func_name.__code__.co_firstlineno}, 产生错误,错误的类型为:{type(e)}, 错误的描述为:{e}")
raise e
else:
return res
return inner
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: __init__.py
# Author: xxxxx
# Datetime: 2024/12/26 16:40
# Description:
#
# ---------------------------------------------------------------------------
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: db.py
# Author: xxxxx
# Datetime: 2024/12/26 16:59
# Description:
#
# ---------------------------------------------------------------------------
import pymysql
from APIAutoTest_3 import log_decorator
from APIAutoTest_v3.common.read_basic_ini import ReadBasicIni
class DB:
@log_decorator
def __init__(self):
ini = ReadBasicIni()
self.conn = pymysql.connect(
host=ini.get_database_conn_msg("host"),
port=int(ini.get_database_conn_msg("port")),
user=ini.get_database_conn_msg("user"),
password=ini.get_database_conn_msg("pwd"),
database=ini.get_database_conn_msg("database"),
charset="utf8"
)
self.cursor = self.conn.cursor()
@log_decorator
def close(self):
self.cursor.close()
self.conn.close()
@log_decorator
def delete(self, sql):
self.cursor.execute(sql)
self.conn.commit()
@log_decorator
def select(self, sql):
self.cursor.execute(sql)
select_result = self.cursor.fetchall()
if select_result is not None:
return select_result[0][0]
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: read_basic_ini.py
# Author: xxxxx
# Datetime: 2024/12/26 17:02
# Description:
#
# ---------------------------------------------------------------------------
import os.path
from configparser import ConfigParser
from APIAutoTest_3 import log_decorator
class ReadBasicIni:
@log_decorator
def __init__(self):
self.data_config_path =os.path.join(os.path.dirname(os.path.dirname(__file__)),"data_config")
ini_path = os.path.join(self.data_config_path, "config.ini")
self.conf = ConfigParser()
self.conf.read(ini_path, encoding="utf-8")
@log_decorator
def get_host(self, key):
return self.conf.get("host", key)
@log_decorator
def get_sql_connect(self, key):#sql节点下的请求头
return self.conf.get("sql", key)
@log_decorator
def get_user_dir_name(self, key):#user节点下的请求头
user_path = self.conf.get("user", key)
user_dir_name = os.path.join(self.data_config_path, user_path)
return user_dir_name
if __name__ == '__main__':
read_basic_ini = ReadBasicIni()
print(read_basic_ini.get_host("bpm"))
print(read_basic_ini.get_sql_connect("host"))
print(read_basic_ini.get_user_dir_name("farke"))
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: read_excel.py
# Author: xxxxx
# Datetime: 2024/12/26 18:55
# Description:
#
# ---------------------------------------------------------------------------
import openpyxl
from APIAutoTest_3 import log_decorator
from APIAutoTest_3.common.read_basic_ini import ReadBasicIni
from APIAutoTest_3.common.read_json import read_json
from APIAutoTest_3.common.read_user_ini import ReadUserIni
class ReadExcel:
@log_decorator
def __init__(self,username):
self.basic_ini = ReadBasicIni()
self.ini = ReadUserIni(username)
case_data_path = self.ini.get_file_path("case")
expect_data_path = self.ini.get_file_path("expect")
sql_data_path = self.ini.get_file_path("sql")
excel_path = self.ini.get_file_path("excel")
table_name = self.ini.get_table_name("name")
wb = openpyxl.load_workbook(excel_path)
self.ws = wb[table_name]
self.case_data_dict = read_json(case_data_path)
self.expect_data_dict = read_json(expect_data_path)
self.sql_data_dict = read_json(sql_data_path)
@log_decorator
def __get_cell_value(self, column, row):#获取单元格的值
value = self.ws[column+str(row)].value
if isinstance(value, str) and value.strip() is not None:
return value.strip()
@log_decorator
def module_name(self, row):#模块名称
return self.__get_cell_value("b", row)
@log_decorator
def api_name(self, row):#接口名称
return self.__get_cell_value("c", row)
@log_decorator
def case_title(self, row):
"""根据行,获取用例的标题"""
return self.__get_cell_value("d", row)
@log_decorator
def case_level(self, row):
"""根据行,获取用例的等级"""
return self.__get_cell_value("e", row)
@log_decorator
def case_url(self, row):#请求路径
path = self.__get_cell_value("f", row)
if path is not None:
return self.basic_ini.get_host("bpm") + path
@log_decorator
def case_mime(self, row):#根据行,获取用例的媒体类型并转小写
mime = self.__get_cell_value("g", row)
if mime is not None:
return mime.lower()
@log_decorator
def case_req(self, row):#根据行,获取用例的请求方法
return self.__get_cell_value("h", row)
@log_decorator
def case_data(self, row):#根据行,获取用例数据
case_data_key = self.__get_cell_value("i", row)
if case_data_key is not None:
module_name = self.module_name(row)
api_name = self.api_name(row)
return self.case_data_dict[module_name][api_name][case_data_key]
@log_decorator
def expect_data(self, row):#根据行,获取期望数据
expect_data_key = self.__get_cell_value("j", row)
if expect_data_key is not None:
module_name = self.module_name(row)
api_name = self.api_name(row)
return self.expect_data_dict[module_name][api_name][expect_data_key]
@log_decorator
def sql_data(self, row):#获取sql数据
sql_data_key = self.__get_cell_value("l", row)
if sql_data_key is not None:
module_name = self.module_name(row)
api_name = self.api_name(row)
return self.sql_data_dict[module_name][api_name][sql_data_key]
@log_decorator
def sql_type(self, row):#获取sql语句的类型
sql_statement = self.__get_cell_value("k", row)
if sql_statement is not None:
return sql_statement.lower()
@log_decorator
def update_key(self, row):#获取更新的key
return self.__get_cell_value("m", row)
@log_decorator
def get_data(self):
"""获取所有的测试数据,存放在二维列表中"""
list_data = []
for row in range(2, self.ws.max_row+1):
url = self.case_url(row)
mime = self.case_mime(row)
req = self.case_req(row)
case = self.case_data(row)
expect = self.expect_data(row)
sql_type = self.sql_type(row)
sql = self.sql_data(row)
update = self.update_key(row)
title = self.case_title(row)
level = self.case_level(row)
module = self.module_name(row)
api = self.api_name(row)
if url is not None and req is not None and expect is not None:
list_data.append([module,api,title,level,url, mime, req, case, expect, sql_type, sql, update])
else:
return list_data
if __name__ == '__main__':
excel = ReadExcel("jack")
print(excel.get_data())
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: read_json.py
# Author: xxxxx
# Datetime: 2024/12/26 18:32
# Description:
#
# ---------------------------------------------------------------------------
import json
from APIAutoTest_3 import log_decorator
@log_decorator
def read_json(filepath):
with open(filepath, mode="r", encoding="utf-8") as f:
return json.load(f)
if __name__ == '__main__':
res = read_json(r"C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\data_config\shy_data\case_data.json")
print(res)
\ No newline at end of file
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: read_user_ini.py
# Author: xxxxx
# Datetime: 2024/12/26 17:18
# Description:
#
# ---------------------------------------------------------------------------
import configparser
import os
from APIAutoTest_3 import log_decorator
from APIAutoTest_3.common.read_basic_ini import ReadBasicIni
class ReadUserIni:
@log_decorator
def __init__(self, username):
self.user_path = ReadBasicIni().get_user_dir_name(username)
ini_path = os.path.join(self.user_path, 'config.ini')
self.conf = configparser.ConfigParser()
self.conf.read(ini_path, encoding='utf-8')
@log_decorator
def get_file_path(self, key):
file_path = os.path.join(self.user_path, self.conf.get('file', key))
return file_path
@log_decorator
def get_table_name(self, key):
table_name = self.conf.get('table', key)
return table_name
if __name__ == '__main__':
print(ReadUserIni("farke").get_table_name('name'))
print(ReadUserIni("shy").get_file_path('excel'))
\ No newline at end of file
[host]
# 配置项目的域名
bpm= http://36.139.193.99:8088
[sql]
# 数据库的连接信息
host=36.139.193.99
port=3306
user=root
pwd=Rhrc@2024
database=eip8
[user]
# 随着用户的增加而增加选项,配置的是数据的目录名称
jack=jack_data
shy=shy_data
farke=farke_data
\ No newline at end of file
{
"认证接口": {
"登录系统": {
"LoginSuccess": {
"username": "admin",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorUsernameIsNone": {
"username": "",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorUsernameIsShort": {
"username": "a",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorUsernameIsLong": {
"username": "adminadminadminadminadminadminadmin",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorUsernameIsSpecial": {
"username": "▣▤▥▦▩◘◙",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorUsernameIsError": {
"username": "Admin123",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorPwdIsNone": {
"username": "admin",
"password": ""
},
"LoginErrorPwdIsShort": {
"username": "admin",
"password": "1"
},
"LoginErrorPwdIsSpecial": {
"username": "admin",
"password": "▣▤▥▦▩◘◙"
},
"LoginErrorPwdIsLong": {
"username": "admin",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I=WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
}
}
},
"维度管理": {
"添加维度": {
"AddDemSuccess": {
"code": "test_dem",
"description": "测试添加的维度",
"isDefault": 1,
"name": "测试维度"
}
},
"根据维度编码删除维度": {
"DeleteDemSuccess": {
"ids": "需要更新"
}
},
"更新维度": {
"PutDemSuccess": {
"code": "test_dem",
"description": "测试添加的维度",
"isDefault": 1,
"name": "测试维度-更新"
}
}
},
"组织管理": {
"添加组织": {
"AddOrgSuccess": {
"code": "test_org_code",
"demId": "需要更新",
"exceedLimitNum": 0,
"grade": "",
"limitNum": 0,
"name": "测试组织",
"nowNum": 0,
"orderNo": 0,
"parentId": "0"
}
},
"组织加入用户": {
"UserJoinOrgSuccess": {"orgCode": "test_org_code", "accounts": "admin"}
},
"保存组织参数": {
"SaveOrgParamSuccess": {
"query": {"orgCode": "test_org_code"},
"json": [{"alias":"sz","value":100000}]
}
},
"删除组织": {
"DeleteOrgSuccess": "test_org_code"
}
}
}
[file]
# 配置数据配置层中文件的名称
excel=apiAutoTest.xlsx
case=case_data.json
expect=expect_data.json
sql=sql_data.json
[table]
# excel工作表名称
name=BPM
{
"认证接口": {
"登录系统": {
"LoginSuccess": {"username": "超级管理员",
"account": "admin",
"userId": "1",
"expiration": 86400},
"LoginErrorUsernameIsNone": {"message": "账户错误或该租户未启用"},
"LoginErrorUsernameIsShort": {"message": "账户错误或该租户未启用"},
"LoginErrorUsernameIsLong": {"message": "账户错误或该租户未启用"},
"LoginErrorUsernameIsSpecial": {"message": "账户错误或该租户未启用"},
"LoginErrorUsernameIsError": {"message": "账户错误或该租户未启用"},
"LoginErrorPwdIsNone": {"message": "账号或密码错误"},
"LoginErrorPwdIsShort": {"message": "账号或密码错误"},
"LoginErrorPwdIsSpecial":{"message": "账号或密码错误"},
"LoginErrorPwdIsLong":{"message": "账号或密码错误"}
},
"刷新token": {
"RefreshSuccess": {
"message": "刷新成功"
}
}
},
"维度管理": {
"添加维度": {
"AddDemSuccess": {
"message": "添加维度成功!"
}
},
"根据维度编码删除维度": {
"DeleteDemSuccess": {
"message": "删除维度成功!"
}
},
"更新维度": {
"PutDemSuccess": {
"message": "更新维度成功!"
}
}
},
"组织管理": {
"添加组织": {
"AddOrgSuccess": {
"message": "添加组织成功"
}
},
"组织加入用户": {
"UserJoinOrgSuccess": {"message":"加入成功"}
},
"保存组织参数": {
"SaveOrgParamSuccess": {"message":"保存组织参数成功!"}
},
"删除组织": {
"DeleteOrgSuccess": {"message":"删除组织成功!"}
}
}
}
{
"维度管理": {
"添加维度": {
"AddDemSuccess": "delete from uc_demension where CODE_=\"test_dem\";"
},
"根据维度编码删除维度": {
"DeleteDemSuccess": "select ID_ from uc_demension where CODE_=\"test_dem\";"
}
},
"组织管理": {
"添加组织": {
"AddOrgSuccess": {
"select": "select ID_ from uc_demension where CODE_=\"test_dem\";",
"delete": "delete from uc_org where CODE_=\"test_org_code\";"
}
}
}
}
[file]
# 配置数据配置层中文件的名称
excel=接口测试.xlsx
case=用例.json
expect=期望.json
sql=sql语句.json
[table]
# excel工作表名称
name=认证接口
\ No newline at end of file
{
{
"维度管理": {
"添加维度": {
"AddDemSuccess": "delete from uc_demension where CODE_=\"test_dem\";"
},
"根据维度编码删除维度": {
"DeleteDemSuccess": "select ID_ from uc_demension where CODE_=\"test_dem\";"
}
},
"组织管理": {
"添加组织": {
"AddOrgSuccess": {
"select": "select ID_ from uc_demension where CODE_=\"test_dem\";",
"delete": "delete from uc_org where CODE_=\"test_org_code\";"
}
}
}
}
{
{
"认证接口": {
"登录系统": {
"LoginSuccess": {"username": "超级管理员", "account": "admin", "userId": "1", "expiration": 86400}, "LoginErrorUsernameIsNone": {"message": "账户错误或该租户未启用"},
"LoginErrorUsernameIsShort": {"message": "账户错误或该租户未启用"},
"LoginErrorUsernameIsLong": {"message": "账户错误或该租户未启用"},
"LoginErrorUsernameIsSpecial": {"message": "账户错误或该租户未启用"},
"LoginErrorUsernameIsError": {"message": "账户错误或该租户未启用"},
"LoginErrorPwdIsNone": {"message": "账号密码错误"},
"LoginErrorPwdIsShort": {"message": "账号或密码错误"},
"LoginErrorPwdIsSpecial":{"message": "账号或密码错误"},
"LoginErrorPwdIsLong":{"message": null}
},
"刷新token": {
"RefreshSuccess": {
"message": null
}
}
},
"维度管理": {
"添加维度": {
"AddDemSuccess": {
"message": "添加维度成功!"
}
},
"根据维度编码删除维度": {
"DeleteDemSuccess": {
"message": "删除维度成功!"
}
},
"更新维度": {
"PutDemSuccess": {
"message": "更新维度成功!"
}
}
},
"组织管理": {
"添加组织": {
"AddOrgSuccess": {
"message": "添加组织成功"
}
},
"组织加入用户": {
"UserJoinOrgSuccess": {"message":"加入成功"}
},
"保存组织参数": {
"SaveOrgParamSuccess": {"message":"保存组织参数成功!"}
},
"删除组织": {
"DeleteOrgSuccess": {"message":"删除组织成功!"}
}
}
}
{
{
"认证接口": {
"登录系统": {
"LoginSuccess": {
"username": "admin",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorUsernameIsNone": {
"username": "",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorUsernameIsShort": {
"username": "a",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorUsernameIsLong": {
"username": "adminadminadminadminadminadminadmin",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorUsernameIsSpecial": {
"username": "▣▤▥▦▩◘◙",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorUsernameIsError": {
"username": "Admin123",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorPwdIsNone": {
"username": "admin",
"password": ""
},
"LoginErrorPwdIsShort": {
"username": "admin",
"password": "1"
},
"LoginErrorPwdIsSpecial": {
"username": "admin",
"password": "▣▤▥▦▩◘◙"
},
"LoginErrorPwdIsLong": {
"username": "admin",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I=WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
}
}
},
"维度管理": {
"添加维度": {
"AddDemSuccess": {
"code": "test_dem",
"description": "测试添加的维度",
"isDefault": 1,
"name": "测试维度"
}
},
"根据维度编码删除维度": {
"DeleteDemSuccess": {
"ids": "需要更新"
}
},
"更新维度": {
"PutDemSuccess": {
"code": "test_dem",
"description": "测试添加的维度",
"isDefault": 1,
"name": "测试维度-更新"
}
}
},
"组织管理": {
"添加组织": {
"AddOrgSuccess": {
"code": "test_org_code",
"demId": "需要更新",
"exceedLimitNum": 0,
"grade": "",
"limitNum": 0,
"name": "测试组织",
"nowNum": 0,
"orderNo": 0,
"parentId": "0"
}
},
"组织加入用户": {
"UserJoinOrgSuccess": {"orgCode": "test_org_code", "accounts": "admin"}
},
"保存组织参数": {
"SaveOrgParamSuccess": {
"query": {"orgCode": "test_org_code"},
"json": [{"alias":"sz","value":100000}]
}
},
"删除组织": {
"DeleteOrgSuccess": "test_org_code"
}
}
}
{
"认证接口": {
"登录系统": {
"LoginSuccess": {
"username": "admin",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorUsernameIsNone": {
"username": "",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorUsernameIsShort": {
"username": "a",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorUsernameIsLong": {
"username": "adminadminadminadminadminadminadmin",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorUsernameIsSpecial": {
"username": "▣▤▥▦▩◘◙",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorUsernameIsError": {
"username": "Admin123",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
},
"LoginErrorPwdIsNone": {
"username": "admin",
"password": ""
},
"LoginErrorPwdIsShort": {
"username": "admin",
"password": "1"
},
"LoginErrorPwdIsSpecial": {
"username": "admin",
"password": "▣▤▥▦▩◘◙"
},
"LoginErrorPwdIsLong": {
"username": "admin",
"password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I=WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="
}
}
},
"维度管理": {
"添加维度": {
"AddDemSuccess": {
"code": "test_dem",
"description": "测试添加的维度",
"isDefault": 1,
"name": "测试维度"
}
},
"根据维度编码删除维度": {
"DeleteDemSuccess": {
"ids": "需要更新"
}
},
"更新维度": {
"PutDemSuccess": {
"code": "test_dem",
"description": "测试添加的维度",
"isDefault": 1,
"name": "测试维度-更新"
}
}
},
"组织管理": {
"添加组织": {
"AddOrgSuccess": {
"code": "test_org_code",
"demId": "需要更新",
"exceedLimitNum": 0,
"grade": "",
"limitNum": 0,
"name": "测试组织",
"nowNum": 0,
"orderNo": 0,
"parentId": "0"
}
},
"组织加入用户": {
"UserJoinOrgSuccess": {"orgCode": "test_org_code", "accounts": "admin"}
},
"保存组织参数": {
"SaveOrgParamSuccess": {
"query": {"orgCode": "test_org_code"},
"json": [{"alias":"sz","value":100000}]
}
},
"删除组织": {
"DeleteOrgSuccess": "test_org_code"
}
}
}
[file]
# 配置数据配置层中文件的名称
excel=apiAutoTest.xlsx
case=case_data.json
expect=expect_data.json
sql=sql_data.json
[table]
# excel工作表名称
name=BPM
{
"认证接口": {
"登录系统": {
"LoginSuccess": {"username": "超级管理员",
"account": "admin",
"userId": "1",
"expiration": 86400},
"LoginErrorUsernameIsNone": {"message": "账户错误或该租户未启用"},
"LoginErrorUsernameIsShort": {"message": "账户错误或该租户未启用"},
"LoginErrorUsernameIsLong": {"message": "账户错误或该租户未启用"},
"LoginErrorUsernameIsSpecial": {"message": "账户错误或该租户未启用"},
"LoginErrorUsernameIsError": {"message": "账户错误或该租户未启用"},
"LoginErrorPwdIsNone": {"message": "账号或密码错误"},
"LoginErrorPwdIsShort": {"message": "账号或密码错误"},
"LoginErrorPwdIsSpecial":{"message": "账号或密码错误"},
"LoginErrorPwdIsLong":{"message": "账号或密码错误"}
},
"刷新token": {
"RefreshSuccess": {
"message": "刷新成功"
}
}
},
"维度管理": {
"添加维度": {
"AddDemSuccess": {
"message": "添加维度成功!"
}
},
"根据维度编码删除维度": {
"DeleteDemSuccess": {
"message": "删除维度成功!"
}
},
"更新维度": {
"PutDemSuccess": {
"message": "更新维度成功!"
}
}
},
"组织管理": {
"添加组织": {
"AddOrgSuccess": {
"message": "添加组织成功!"
}
},
"组织加入用户": {
"UserJoinOrgSuccess": {"message":"加入成功"}
},
"保存组织参数": {
"SaveOrgParamSuccess": {"message":"保存组织参数成功!"}
},
"删除组织": {
"DeleteOrgSuccess": {"message":"删除组织成功!"}
}
}
}
{
"维度管理": {
"添加维度": {
"AddDemSuccess": "delete from uc_demension where CODE_=\"test_dem\";"
},
"根据维度编码删除维度": {
"DeleteDemSuccess": "select ID_ from uc_demension where CODE_=\"test_dem\";"
}
},
"组织管理": {
"添加组织": {
"AddOrgSuccess": {
"select": "select ID_ from uc_demension where CODE_=\"test_dem\";",
"delete": "delete from uc_org where CODE_=\"test_org_code\";"
}
}
}
}
This source diff could not be displayed because it is too large. You can view the blob instead.
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_shy\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_shy\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_shy\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_shy\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:select, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:40
INFO  root:__init__.py:44 执行的功能为:close, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:26
INFO  root:__init__.py:44 执行的功能为:close, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:close, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:26
INFO  root:__init__.py:44 执行的功能为:close, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:close, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:26
INFO  root:__init__.py:44 执行的功能为:close, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_farke\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:select, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:40
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_shy\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:delete, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:35
INFO  root:__init__.py:44 执行的功能为:select, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:40
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:18
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:17
INFO  root:__init__.py:59 执行的功能为:__init__, 功能的描述为:获取项目下基础配置ini配置文件的路径,创建Configparser对象,读取ini文件, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:17
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\read_basic_ini.py, 所做的行为:17
INFO  root:__init__.py:44 执行的功能为:get_host, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\read_basic_ini.py, 所做的行为:24
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_shy\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:delete, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:35
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
\ No newline at end of file
INFO  pytest_dependency:pytest_dependency.py:100 skip test_add_dem because it depends on test_bpm/test_auth.py::TestAuth::test_login[\u6b63\u5411\u7528\u4f8b-case_data0-expect_data0]
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:18
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:17
INFO  root:__init__.py:59 执行的功能为:__init__, 功能的描述为:获取项目下基础配置ini配置文件的路径,创建Configparser对象,读取ini文件, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:17
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\read_basic_ini.py, 所做的行为:17
INFO  root:__init__.py:44 执行的功能为:get_host, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\read_basic_ini.py, 所做的行为:24
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_farke\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_shy\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:18
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:17
INFO  root:__init__.py:59 执行的功能为:__init__, 功能的描述为:获取项目下基础配置ini配置文件的路径,创建Configparser对象,读取ini文件, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:17
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\read_basic_ini.py, 所做的行为:17
INFO  root:__init__.py:44 执行的功能为:get_host, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\read_basic_ini.py, 所做的行为:24
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_farke\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:delete, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:35
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
"Epic","Feature","Story","FAILED","BROKEN","PASSED","SKIPPED","UNKNOWN"
"BPM-shy","维度管理","更新维度","0","0","1","0","0"
"BPM-jack","认证接口","登录系统","0","1","9","0","0"
"BPM-shy","组织管理","保存组织参数","0","0","1","0","0"
"BPM项目-场景","BPM项目-维度管理","添加维度","0","0","0","1","0"
"BPM项目-场景","BPM项目-认证接口","登录系统","0","0","2","0","0"
"BPM-farke","维度管理","根据维度编码删除维度","0","0","1","0","0"
"BPM-farke","维度管理","更新维度","0","0","1","0","0"
"BPM-shy","维度管理","根据维度编码删除维度","0","0","1","0","0"
"BPM-shy","组织管理","组织加入用户","0","0","1","0","0"
"BPM-jack","认证接口","刷新token","0","0","1","0","0"
"BPM-farke","维度管理","添加维度","0","0","1","0","0"
"BPM-shy","组织管理","添加组织","0","0","1","0","0"
"BPM-shy","组织管理","删除组织","0","0","1","0","0"
"BPM-shy","维度管理","添加维度","0","0","1","0","0"
{
"uid" : "b1a8273437954620fa374b796ffaacdd",
"name" : "behaviors",
"children" : [ {
"name" : "BPM项目-场景",
"children" : [ {
"name" : "BPM项目-认证接口",
"children" : [ {
"name" : "登录系统",
"children" : [ {
"name" : "登陆系统的标题",
"uid" : "6182889ac34359c8",
"parentUid" : "637cc5ad467d7fdb70b78777f0d4cd9c",
"status" : "passed",
"time" : {
"start" : 1735445612177,
"stop" : 1735445612226,
"duration" : 49
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'username': '超级管理员', 'account': 'admin', 'userId': '1', 'expiration': 86400}", "'正向用例'" ]
}, {
"name" : "登陆系统的标题",
"uid" : "bfa27ce577b1727",
"parentUid" : "637cc5ad467d7fdb70b78777f0d4cd9c",
"status" : "passed",
"time" : {
"start" : 1735445612232,
"stop" : 1735445612258,
"duration" : 26
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "{'username': 'admin', 'password': ''}", "{'message': '账号或密码错误'}", "'反向用例'" ]
} ],
"uid" : "637cc5ad467d7fdb70b78777f0d4cd9c"
} ],
"uid" : "112a902083c0a509abe4633ae565bf56"
}, {
"name" : "BPM项目-维度管理",
"children" : [ {
"name" : "添加维度",
"children" : [ {
"name" : "添加维度的标题",
"uid" : "a95e441d55cfd27e",
"parentUid" : "579d13408520c656490c34f0132f3c20",
"status" : "skipped",
"time" : {
"start" : 1735445612263,
"stop" : 1735445612263,
"duration" : 0
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ ]
} ],
"uid" : "579d13408520c656490c34f0132f3c20"
} ],
"uid" : "b036d3efaad33649a66cf029af20bb23"
} ],
"uid" : "ac36b08383b29c832f376331a54a2a9b"
}, {
"name" : "BPM-farke",
"children" : [ {
"name" : "维度管理",
"children" : [ {
"name" : "添加维度",
"children" : [ {
"name" : "正向用例",
"uid" : "ecabcd5b46f75bce",
"parentUid" : "427102bfe6906963cc111e7936aba8f2",
"status" : "passed",
"time" : {
"start" : 1735445612356,
"stop" : 1735445612408,
"duration" : 52
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'添加维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度'}", "{'message': '添加维度成功!'}", "'高'", "'json'", "'维度管理'", "'post'", "'delete from uc_demension where CODE_=\"test_dem\";'", "'delete'", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/addDem'" ]
} ],
"uid" : "427102bfe6906963cc111e7936aba8f2"
}, {
"name" : "更新维度",
"children" : [ {
"name" : "正向用例",
"uid" : "d75307e523b247b4",
"parentUid" : "cdfb3e09702735e66e148205394c6a9e",
"status" : "passed",
"time" : {
"start" : 1735445612418,
"stop" : 1735445612447,
"duration" : 29
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'更新维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度-更新'}", "{'message': '更新维度成功!'}", "'中'", "'json'", "'维度管理'", "'put'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/updateDem'" ]
} ],
"uid" : "cdfb3e09702735e66e148205394c6a9e"
}, {
"name" : "根据维度编码删除维度",
"children" : [ {
"name" : "正向用例",
"uid" : "1e6d26bc76b77d97",
"parentUid" : "70f4e2e235b05d3e4b6cc531639c518b",
"status" : "passed",
"time" : {
"start" : 1735445612460,
"stop" : 1735445612518,
"duration" : 58
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'根据维度编码删除维度'", "{'ids': '需要更新'}", "{'message': '删除维度成功!'}", "'中'", "'query'", "'维度管理'", "'delete'", "'select ID_ from uc_demension where CODE_=\"test_dem\";'", "'select'", "'正向用例'", "'ids'", "'http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds'" ]
} ],
"uid" : "70f4e2e235b05d3e4b6cc531639c518b"
} ],
"uid" : "436297792daf8898fc2a94a27a128104"
} ],
"uid" : "a27f55c1f9a76c45e0fed6e251b2a595"
}, {
"name" : "BPM-jack",
"children" : [ {
"name" : "认证接口",
"children" : [ {
"name" : "登录系统",
"children" : [ {
"name" : "正向用例-用户名和密码正确",
"uid" : "1d2ea9fe00ca05e4",
"parentUid" : "0ea4501f733deed6d77c555210757aa7",
"status" : "passed",
"time" : {
"start" : 1735445612611,
"stop" : 1735445612644,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'username': '超级管理员', 'account': 'admin', 'userId': '1', 'expiration': 86400}", "'高'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'正向用例-用户名和密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名为空,密码正确",
"uid" : "c5814d8a05590bc6",
"parentUid" : "0ea4501f733deed6d77c555210757aa7",
"status" : "passed",
"time" : {
"start" : 1735445612651,
"stop" : 1735445612672,
"duration" : 21
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': '', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名为空,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名过短,密码正确",
"uid" : "2c3b9632c0c3c6f4",
"parentUid" : "0ea4501f733deed6d77c555210757aa7",
"status" : "passed",
"time" : {
"start" : 1735445612680,
"stop" : 1735445612712,
"duration" : 32
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'a', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名过短,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名过长,密码正确",
"uid" : "a80f5c73e98d0741",
"parentUid" : "0ea4501f733deed6d77c555210757aa7",
"status" : "passed",
"time" : {
"start" : 1735445612722,
"stop" : 1735445612761,
"duration" : 39
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'adminadminadminadminadminadminadmin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名过长,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名为特殊字符,密码正确",
"uid" : "26607d0fc400b834",
"parentUid" : "0ea4501f733deed6d77c555210757aa7",
"status" : "passed",
"time" : {
"start" : 1735445612773,
"stop" : 1735445612807,
"duration" : 34
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': '▣▤▥▦▩◘◙', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名为特殊字符,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名错误,密码正确",
"uid" : "93cad0eaff510b40",
"parentUid" : "0ea4501f733deed6d77c555210757aa7",
"status" : "passed",
"time" : {
"start" : 1735445612817,
"stop" : 1735445612852,
"duration" : 35
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'Admin123', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名错误,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码为空",
"uid" : "15e9970491f0a09f",
"parentUid" : "0ea4501f733deed6d77c555210757aa7",
"status" : "broken",
"time" : {
"start" : 1735445613159,
"stop" : 1735445613192,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': ''}", "{'message': '账号密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为空'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码过短",
"uid" : "7f0216857be8531c",
"parentUid" : "0ea4501f733deed6d77c555210757aa7",
"status" : "passed",
"time" : {
"start" : 1735445613214,
"stop" : 1735445613247,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': '1'}", "{'message': '账号或密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码过短'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码过长",
"uid" : "49047d75c6739794",
"parentUid" : "0ea4501f733deed6d77c555210757aa7",
"status" : "passed",
"time" : {
"start" : 1735445613261,
"stop" : 1735445613302,
"duration" : 41
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I=WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': None}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码过长'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码为特殊字符",
"uid" : "90ac19af8aa66702",
"parentUid" : "0ea4501f733deed6d77c555210757aa7",
"status" : "passed",
"time" : {
"start" : 1735445613311,
"stop" : 1735445613333,
"duration" : 22
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': '▣▤▥▦▩◘◙'}", "{'message': '账号或密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为特殊字符'", "None", "'http://36.139.193.99:8088/auth'" ]
} ],
"uid" : "0ea4501f733deed6d77c555210757aa7"
}, {
"name" : "刷新token",
"children" : [ {
"name" : "正向用例",
"uid" : "b48aa381796879c7",
"parentUid" : "08b4349739a220fc61dd6dea84ad41f7",
"status" : "passed",
"time" : {
"start" : 1735445613342,
"stop" : 1735445613375,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'刷新token'", "None", "{'message': None}", "'中'", "None", "'认证接口'", "'get'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/refresh'" ]
} ],
"uid" : "08b4349739a220fc61dd6dea84ad41f7"
} ],
"uid" : "9edc2b21e56ecba56b449313aa52182e"
} ],
"uid" : "5331e086e8b4948acbf88ce55d4bcea1"
}, {
"name" : "BPM-shy",
"children" : [ {
"name" : "维度管理",
"children" : [ {
"name" : "添加维度",
"children" : [ {
"name" : "正向用例",
"uid" : "4c1bebef17d4e513",
"parentUid" : "a4021579c39374672707072c123b974e",
"status" : "passed",
"time" : {
"start" : 1735445613494,
"stop" : 1735445613544,
"duration" : 50
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'添加维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度'}", "{'message': '添加维度成功!'}", "'高'", "'json'", "'维度管理'", "'post'", "'delete from uc_demension where CODE_=\"test_dem\";'", "'delete'", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/addDem'" ]
} ],
"uid" : "a4021579c39374672707072c123b974e"
}, {
"name" : "更新维度",
"children" : [ {
"name" : "正向用例",
"uid" : "a1e59d44d15649e8",
"parentUid" : "06045416b262810876b441d2ac4dd06c",
"status" : "passed",
"time" : {
"start" : 1735445613550,
"stop" : 1735445613577,
"duration" : 27
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'更新维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度-更新'}", "{'message': '更新维度成功!'}", "'中'", "'json'", "'维度管理'", "'put'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/updateDem'" ]
} ],
"uid" : "06045416b262810876b441d2ac4dd06c"
}, {
"name" : "根据维度编码删除维度",
"children" : [ {
"name" : "正向用例",
"uid" : "df909ecea6f7b6dd",
"parentUid" : "4c35fd2aca795a3f0d73dad16c0c93a1",
"status" : "passed",
"time" : {
"start" : 1735445613794,
"stop" : 1735445613855,
"duration" : 61
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'根据维度编码删除维度'", "{'ids': '需要更新'}", "{'message': '删除维度成功!'}", "'中'", "'query'", "'维度管理'", "'delete'", "'select ID_ from uc_demension where CODE_=\"test_dem\";'", "'select'", "'正向用例'", "'ids'", "'http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds'" ]
} ],
"uid" : "4c35fd2aca795a3f0d73dad16c0c93a1"
} ],
"uid" : "f06affa0c32a5240857748caa076106c"
}, {
"name" : "组织管理",
"children" : [ {
"name" : "添加组织",
"children" : [ {
"name" : "正向用例",
"uid" : "a81dd6be6f27488c",
"parentUid" : "1866d061e7d3f8d69e68d9b704bd6f59",
"status" : "passed",
"time" : {
"start" : 1735445613584,
"stop" : 1735445613638,
"duration" : 54
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'添加组织'", "{'code': 'test_org_code', 'demId': '需要更新', 'exceedLimitNum': 0, 'grade': '', 'limitNum': 0, 'name': '测试组织', 'nowNum': 0, 'orderNo': 0, 'parentId': '0'}", "{'message': '添加组织成功!'}", "'高'", "'json'", "'组织管理'", "'post'", "{'select': 'select ID_ from uc_demension where CODE_=\"test_dem\";', 'delete': 'delete from uc_org where CODE_=\"test_org_code\";'}", "'delete|select'", "'正向用例'", "'demId'", "'http://36.139.193.99:8088/api/org/v1/org/addOrg'" ]
} ],
"uid" : "1866d061e7d3f8d69e68d9b704bd6f59"
}, {
"name" : "组织加入用户",
"children" : [ {
"name" : "正向用例",
"uid" : "4c1a66ac96836302",
"parentUid" : "a002d7cfacbd5db01adf7f4f828c5990",
"status" : "passed",
"time" : {
"start" : 1735445613646,
"stop" : 1735445613677,
"duration" : 31
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'组织加入用户'", "{'orgCode': 'test_org_code', 'accounts': 'admin'}", "{'message': '加入成功'}", "'中'", "'query'", "'组织管理'", "'post'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/org/v1/orgUsers/addUsersForOrg'" ]
} ],
"uid" : "a002d7cfacbd5db01adf7f4f828c5990"
}, {
"name" : "保存组织参数",
"children" : [ {
"name" : "正向用例",
"uid" : "f8c43a4aa85bbf85",
"parentUid" : "501ea3846e749e1ecf890fe1e683b50d",
"status" : "passed",
"time" : {
"start" : 1735445613690,
"stop" : 1735445613731,
"duration" : 41
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'保存组织参数'", "{'query': {'orgCode': 'test_org_code'}, 'json': [{'alias': 'sz', 'value': 100000}]}", "{'message': '保存组织参数成功!'}", "'中'", "'query|json'", "'组织管理'", "'post'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/org/v1/orgParam/saveOrgParams'" ]
} ],
"uid" : "501ea3846e749e1ecf890fe1e683b50d"
}, {
"name" : "删除组织",
"children" : [ {
"name" : "正向用例",
"uid" : "8a1ab60af2891f57",
"parentUid" : "e279f3f27bc32582c2af182223b36324",
"status" : "passed",
"time" : {
"start" : 1735445613742,
"stop" : 1735445613784,
"duration" : 42
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'删除组织'", "'test_org_code'", "{'message': '删除组织成功!'}", "'中'", "'form'", "'组织管理'", "'post'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/org/v1/org/deleteOrg'" ]
} ],
"uid" : "e279f3f27bc32582c2af182223b36324"
} ],
"uid" : "38f21633af7433b3f18eed6620e97b50"
} ],
"uid" : "ff2012d6ca367e0e819f8e7a6ec1d39d"
} ]
}
\ No newline at end of file
"Category","FAILED","BROKEN","PASSED","SKIPPED","UNKNOWN"
"Test defects","0","1","0","0","0"
{
"uid" : "4b4757e66a1912dae1a509f688f20b0f",
"name" : "categories",
"children" : [ {
"name" : "Test defects",
"children" : [ {
"name" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"children" : [ {
"name" : "反向用例-用户名正确,密码为空",
"uid" : "15e9970491f0a09f",
"parentUid" : "c8ab4e329e8e2102923e9a6b165bba10",
"status" : "broken",
"time" : {
"start" : 1735445613159,
"stop" : 1735445613192,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': ''}", "{'message': '账号密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为空'", "None", "'http://36.139.193.99:8088/auth'" ]
} ],
"uid" : "c8ab4e329e8e2102923e9a6b165bba10"
} ],
"uid" : "bdbf199525818fae7a8651db9eafe741"
} ]
}
\ No newline at end of file
{
"uid" : "83edc06c07f9ae9e47eb6dd1b683e4e2",
"name" : "packages",
"children" : [ {
"name" : "test_case",
"children" : [ {
"name" : "test_bpm",
"children" : [ {
"name" : "test_auth",
"children" : [ {
"name" : "登陆系统的标题",
"uid" : "6182889ac34359c8",
"parentUid" : "f422f7cef665f67842bbabc013c8eb07",
"status" : "passed",
"time" : {
"start" : 1735445612177,
"stop" : 1735445612226,
"duration" : 49
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'username': '超级管理员', 'account': 'admin', 'userId': '1', 'expiration': 86400}", "'正向用例'" ]
}, {
"name" : "登陆系统的标题",
"uid" : "bfa27ce577b1727",
"parentUid" : "f422f7cef665f67842bbabc013c8eb07",
"status" : "passed",
"time" : {
"start" : 1735445612232,
"stop" : 1735445612258,
"duration" : 26
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "{'username': 'admin', 'password': ''}", "{'message': '账号或密码错误'}", "'反向用例'" ]
} ],
"uid" : "f422f7cef665f67842bbabc013c8eb07"
}, {
"name" : "test_dem",
"children" : [ {
"name" : "添加维度的标题",
"uid" : "a95e441d55cfd27e",
"parentUid" : "375a122dfd80b7f9dd874a9182621eee",
"status" : "skipped",
"time" : {
"start" : 1735445612263,
"stop" : 1735445612263,
"duration" : 0
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ ]
} ],
"uid" : "375a122dfd80b7f9dd874a9182621eee"
} ],
"uid" : "83ce1d6617259521e6a50fa1a9e1d444"
}, {
"name" : "test_user_farke.test_bpm",
"children" : [ {
"name" : "正向用例",
"uid" : "ecabcd5b46f75bce",
"parentUid" : "02815341c3fc103c7da37db5bd64abb0",
"status" : "passed",
"time" : {
"start" : 1735445612356,
"stop" : 1735445612408,
"duration" : 52
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'添加维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度'}", "{'message': '添加维度成功!'}", "'高'", "'json'", "'维度管理'", "'post'", "'delete from uc_demension where CODE_=\"test_dem\";'", "'delete'", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/addDem'" ]
}, {
"name" : "正向用例",
"uid" : "d75307e523b247b4",
"parentUid" : "02815341c3fc103c7da37db5bd64abb0",
"status" : "passed",
"time" : {
"start" : 1735445612418,
"stop" : 1735445612447,
"duration" : 29
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'更新维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度-更新'}", "{'message': '更新维度成功!'}", "'中'", "'json'", "'维度管理'", "'put'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/updateDem'" ]
}, {
"name" : "正向用例",
"uid" : "1e6d26bc76b77d97",
"parentUid" : "02815341c3fc103c7da37db5bd64abb0",
"status" : "passed",
"time" : {
"start" : 1735445612460,
"stop" : 1735445612518,
"duration" : 58
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'根据维度编码删除维度'", "{'ids': '需要更新'}", "{'message': '删除维度成功!'}", "'中'", "'query'", "'维度管理'", "'delete'", "'select ID_ from uc_demension where CODE_=\"test_dem\";'", "'select'", "'正向用例'", "'ids'", "'http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds'" ]
} ],
"uid" : "test_user_farke.test_bpm"
}, {
"name" : "test_user_jack.test_bpm",
"children" : [ {
"name" : "正向用例-用户名和密码正确",
"uid" : "1d2ea9fe00ca05e4",
"parentUid" : "220047aaf1a894f34cf9e59c8d7e637f",
"status" : "passed",
"time" : {
"start" : 1735445612611,
"stop" : 1735445612644,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'username': '超级管理员', 'account': 'admin', 'userId': '1', 'expiration': 86400}", "'高'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'正向用例-用户名和密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名为空,密码正确",
"uid" : "c5814d8a05590bc6",
"parentUid" : "220047aaf1a894f34cf9e59c8d7e637f",
"status" : "passed",
"time" : {
"start" : 1735445612651,
"stop" : 1735445612672,
"duration" : 21
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': '', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名为空,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名过短,密码正确",
"uid" : "2c3b9632c0c3c6f4",
"parentUid" : "220047aaf1a894f34cf9e59c8d7e637f",
"status" : "passed",
"time" : {
"start" : 1735445612680,
"stop" : 1735445612712,
"duration" : 32
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'a', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名过短,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名过长,密码正确",
"uid" : "a80f5c73e98d0741",
"parentUid" : "220047aaf1a894f34cf9e59c8d7e637f",
"status" : "passed",
"time" : {
"start" : 1735445612722,
"stop" : 1735445612761,
"duration" : 39
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'adminadminadminadminadminadminadmin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名过长,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名为特殊字符,密码正确",
"uid" : "26607d0fc400b834",
"parentUid" : "220047aaf1a894f34cf9e59c8d7e637f",
"status" : "passed",
"time" : {
"start" : 1735445612773,
"stop" : 1735445612807,
"duration" : 34
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': '▣▤▥▦▩◘◙', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名为特殊字符,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名错误,密码正确",
"uid" : "93cad0eaff510b40",
"parentUid" : "220047aaf1a894f34cf9e59c8d7e637f",
"status" : "passed",
"time" : {
"start" : 1735445612817,
"stop" : 1735445612852,
"duration" : 35
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'Admin123', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名错误,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码为空",
"uid" : "15e9970491f0a09f",
"parentUid" : "220047aaf1a894f34cf9e59c8d7e637f",
"status" : "broken",
"time" : {
"start" : 1735445613159,
"stop" : 1735445613192,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': ''}", "{'message': '账号密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为空'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码过短",
"uid" : "7f0216857be8531c",
"parentUid" : "220047aaf1a894f34cf9e59c8d7e637f",
"status" : "passed",
"time" : {
"start" : 1735445613214,
"stop" : 1735445613247,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': '1'}", "{'message': '账号或密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码过短'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码过长",
"uid" : "49047d75c6739794",
"parentUid" : "220047aaf1a894f34cf9e59c8d7e637f",
"status" : "passed",
"time" : {
"start" : 1735445613261,
"stop" : 1735445613302,
"duration" : 41
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I=WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': None}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码过长'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码为特殊字符",
"uid" : "90ac19af8aa66702",
"parentUid" : "220047aaf1a894f34cf9e59c8d7e637f",
"status" : "passed",
"time" : {
"start" : 1735445613311,
"stop" : 1735445613333,
"duration" : 22
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': '▣▤▥▦▩◘◙'}", "{'message': '账号或密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为特殊字符'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "正向用例",
"uid" : "b48aa381796879c7",
"parentUid" : "220047aaf1a894f34cf9e59c8d7e637f",
"status" : "passed",
"time" : {
"start" : 1735445613342,
"stop" : 1735445613375,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'刷新token'", "None", "{'message': None}", "'中'", "None", "'认证接口'", "'get'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/refresh'" ]
} ],
"uid" : "test_user_jack.test_bpm"
}, {
"name" : "test_user_shy.test_bpm",
"children" : [ {
"name" : "正向用例",
"uid" : "4c1bebef17d4e513",
"parentUid" : "d8f3386e724a34cc450f88c50e269265",
"status" : "passed",
"time" : {
"start" : 1735445613494,
"stop" : 1735445613544,
"duration" : 50
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'添加维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度'}", "{'message': '添加维度成功!'}", "'高'", "'json'", "'维度管理'", "'post'", "'delete from uc_demension where CODE_=\"test_dem\";'", "'delete'", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/addDem'" ]
}, {
"name" : "正向用例",
"uid" : "a1e59d44d15649e8",
"parentUid" : "d8f3386e724a34cc450f88c50e269265",
"status" : "passed",
"time" : {
"start" : 1735445613550,
"stop" : 1735445613577,
"duration" : 27
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'更新维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度-更新'}", "{'message': '更新维度成功!'}", "'中'", "'json'", "'维度管理'", "'put'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/updateDem'" ]
}, {
"name" : "正向用例",
"uid" : "a81dd6be6f27488c",
"parentUid" : "d8f3386e724a34cc450f88c50e269265",
"status" : "passed",
"time" : {
"start" : 1735445613584,
"stop" : 1735445613638,
"duration" : 54
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'添加组织'", "{'code': 'test_org_code', 'demId': '需要更新', 'exceedLimitNum': 0, 'grade': '', 'limitNum': 0, 'name': '测试组织', 'nowNum': 0, 'orderNo': 0, 'parentId': '0'}", "{'message': '添加组织成功!'}", "'高'", "'json'", "'组织管理'", "'post'", "{'select': 'select ID_ from uc_demension where CODE_=\"test_dem\";', 'delete': 'delete from uc_org where CODE_=\"test_org_code\";'}", "'delete|select'", "'正向用例'", "'demId'", "'http://36.139.193.99:8088/api/org/v1/org/addOrg'" ]
}, {
"name" : "正向用例",
"uid" : "4c1a66ac96836302",
"parentUid" : "d8f3386e724a34cc450f88c50e269265",
"status" : "passed",
"time" : {
"start" : 1735445613646,
"stop" : 1735445613677,
"duration" : 31
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'组织加入用户'", "{'orgCode': 'test_org_code', 'accounts': 'admin'}", "{'message': '加入成功'}", "'中'", "'query'", "'组织管理'", "'post'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/org/v1/orgUsers/addUsersForOrg'" ]
}, {
"name" : "正向用例",
"uid" : "f8c43a4aa85bbf85",
"parentUid" : "d8f3386e724a34cc450f88c50e269265",
"status" : "passed",
"time" : {
"start" : 1735445613690,
"stop" : 1735445613731,
"duration" : 41
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'保存组织参数'", "{'query': {'orgCode': 'test_org_code'}, 'json': [{'alias': 'sz', 'value': 100000}]}", "{'message': '保存组织参数成功!'}", "'中'", "'query|json'", "'组织管理'", "'post'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/org/v1/orgParam/saveOrgParams'" ]
}, {
"name" : "正向用例",
"uid" : "8a1ab60af2891f57",
"parentUid" : "d8f3386e724a34cc450f88c50e269265",
"status" : "passed",
"time" : {
"start" : 1735445613742,
"stop" : 1735445613784,
"duration" : 42
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'删除组织'", "'test_org_code'", "{'message': '删除组织成功!'}", "'中'", "'form'", "'组织管理'", "'post'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/org/v1/org/deleteOrg'" ]
}, {
"name" : "正向用例",
"uid" : "df909ecea6f7b6dd",
"parentUid" : "d8f3386e724a34cc450f88c50e269265",
"status" : "passed",
"time" : {
"start" : 1735445613794,
"stop" : 1735445613855,
"duration" : 61
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'根据维度编码删除维度'", "{'ids': '需要更新'}", "{'message': '删除维度成功!'}", "'中'", "'query'", "'维度管理'", "'delete'", "'select ID_ from uc_demension where CODE_=\"test_dem\";'", "'select'", "'正向用例'", "'ids'", "'http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds'" ]
} ],
"uid" : "test_user_shy.test_bpm"
} ],
"uid" : "3b2e467b921b0ea8d4803b9c79d92d0c"
} ]
}
\ No newline at end of file
"Status","Start Time","Stop Time","Duration in ms","Parent Suite","Suite","Sub Suite","Test Class","Test Method","Name","Description"
"passed","Sun Dec 29 12:13:33 CST 2024","Sun Dec 29 12:13:33 CST 2024","27","test_case.test_user_shy","test_bpm","TestBpm","","","正向用例",""
"passed","Sun Dec 29 12:13:33 CST 2024","Sun Dec 29 12:13:33 CST 2024","33","test_case.test_user_jack","test_bpm","TestBpm","","","反向用例-用户名正确,密码过短",""
"passed","Sun Dec 29 12:13:32 CST 2024","Sun Dec 29 12:13:32 CST 2024","34","test_case.test_user_jack","test_bpm","TestBpm","","","反向用例-用户名为特殊字符,密码正确",""
"passed","Sun Dec 29 12:13:32 CST 2024","Sun Dec 29 12:13:32 CST 2024","33","test_case.test_user_jack","test_bpm","TestBpm","","","正向用例-用户名和密码正确",""
"passed","Sun Dec 29 12:13:33 CST 2024","Sun Dec 29 12:13:33 CST 2024","41","test_case.test_user_shy","test_bpm","TestBpm","","","正向用例",""
"passed","Sun Dec 29 12:13:33 CST 2024","Sun Dec 29 12:13:33 CST 2024","22","test_case.test_user_jack","test_bpm","TestBpm","","","反向用例-用户名正确,密码为特殊字符",""
"skipped","Sun Dec 29 12:13:32 CST 2024","Sun Dec 29 12:13:32 CST 2024","0","test_case.test_bpm","test_dem","TestDem","","","添加维度的标题",""
"passed","Sun Dec 29 12:13:32 CST 2024","Sun Dec 29 12:13:32 CST 2024","32","test_case.test_user_jack","test_bpm","TestBpm","","","反向用例-用户名过短,密码正确",""
"passed","Sun Dec 29 12:13:32 CST 2024","Sun Dec 29 12:13:32 CST 2024","39","test_case.test_user_jack","test_bpm","TestBpm","","","反向用例-用户名过长,密码正确",""
"passed","Sun Dec 29 12:13:32 CST 2024","Sun Dec 29 12:13:32 CST 2024","26","test_case.test_bpm","test_auth","TestAuth","","","登陆系统的标题",""
"passed","Sun Dec 29 12:13:32 CST 2024","Sun Dec 29 12:13:32 CST 2024","58","test_case.test_user_farke","test_bpm","TestBpm","","","正向用例",""
"passed","Sun Dec 29 12:13:32 CST 2024","Sun Dec 29 12:13:32 CST 2024","29","test_case.test_user_farke","test_bpm","TestBpm","","","正向用例",""
"passed","Sun Dec 29 12:13:33 CST 2024","Sun Dec 29 12:13:33 CST 2024","61","test_case.test_user_shy","test_bpm","TestBpm","","","正向用例",""
"passed","Sun Dec 29 12:13:32 CST 2024","Sun Dec 29 12:13:32 CST 2024","49","test_case.test_bpm","test_auth","TestAuth","","","登陆系统的标题",""
"passed","Sun Dec 29 12:13:32 CST 2024","Sun Dec 29 12:13:32 CST 2024","21","test_case.test_user_jack","test_bpm","TestBpm","","","反向用例-用户名为空,密码正确",""
"passed","Sun Dec 29 12:13:33 CST 2024","Sun Dec 29 12:13:33 CST 2024","31","test_case.test_user_shy","test_bpm","TestBpm","","","正向用例",""
"passed","Sun Dec 29 12:13:33 CST 2024","Sun Dec 29 12:13:33 CST 2024","33","test_case.test_user_jack","test_bpm","TestBpm","","","正向用例",""
"broken","Sun Dec 29 12:13:33 CST 2024","Sun Dec 29 12:13:33 CST 2024","33","test_case.test_user_jack","test_bpm","TestBpm","","","反向用例-用户名正确,密码为空",""
"passed","Sun Dec 29 12:13:32 CST 2024","Sun Dec 29 12:13:32 CST 2024","52","test_case.test_user_farke","test_bpm","TestBpm","","","正向用例",""
"passed","Sun Dec 29 12:13:33 CST 2024","Sun Dec 29 12:13:33 CST 2024","54","test_case.test_user_shy","test_bpm","TestBpm","","","正向用例",""
"passed","Sun Dec 29 12:13:32 CST 2024","Sun Dec 29 12:13:32 CST 2024","35","test_case.test_user_jack","test_bpm","TestBpm","","","反向用例-用户名错误,密码正确",""
"passed","Sun Dec 29 12:13:33 CST 2024","Sun Dec 29 12:13:33 CST 2024","42","test_case.test_user_shy","test_bpm","TestBpm","","","正向用例",""
"passed","Sun Dec 29 12:13:33 CST 2024","Sun Dec 29 12:13:33 CST 2024","41","test_case.test_user_jack","test_bpm","TestBpm","","","反向用例-用户名正确,密码过长",""
"passed","Sun Dec 29 12:13:33 CST 2024","Sun Dec 29 12:13:33 CST 2024","50","test_case.test_user_shy","test_bpm","TestBpm","","","正向用例",""
{
"uid" : "98d3104e051c652961429bf95fa0b5d6",
"name" : "suites",
"children" : [ {
"name" : "test_case.test_bpm",
"children" : [ {
"name" : "test_auth",
"children" : [ {
"name" : "TestAuth",
"children" : [ {
"name" : "登陆系统的标题",
"uid" : "6182889ac34359c8",
"parentUid" : "655f8c6b803eabc93f9b33a289e6d091",
"status" : "passed",
"time" : {
"start" : 1735445612177,
"stop" : 1735445612226,
"duration" : 49
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'username': '超级管理员', 'account': 'admin', 'userId': '1', 'expiration': 86400}", "'正向用例'" ]
}, {
"name" : "登陆系统的标题",
"uid" : "bfa27ce577b1727",
"parentUid" : "655f8c6b803eabc93f9b33a289e6d091",
"status" : "passed",
"time" : {
"start" : 1735445612232,
"stop" : 1735445612258,
"duration" : 26
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "{'username': 'admin', 'password': ''}", "{'message': '账号或密码错误'}", "'反向用例'" ]
} ],
"uid" : "655f8c6b803eabc93f9b33a289e6d091"
} ],
"uid" : "b982252d9e674669f4f3d9da606b8203"
}, {
"name" : "test_dem",
"children" : [ {
"name" : "TestDem",
"children" : [ {
"name" : "添加维度的标题",
"uid" : "a95e441d55cfd27e",
"parentUid" : "87abbaa1ef33927c02d24d606be41fa2",
"status" : "skipped",
"time" : {
"start" : 1735445612263,
"stop" : 1735445612263,
"duration" : 0
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ ]
} ],
"uid" : "87abbaa1ef33927c02d24d606be41fa2"
} ],
"uid" : "8cf518e7a2cc87245c90bea5e94d9a1f"
} ],
"uid" : "984732065b98c3e55fced1b71055797c"
}, {
"name" : "test_case.test_user_farke",
"children" : [ {
"name" : "test_bpm",
"children" : [ {
"name" : "TestBpm",
"children" : [ {
"name" : "正向用例",
"uid" : "ecabcd5b46f75bce",
"parentUid" : "cb77145aa3cdfe8c0b8f4e7be016310e",
"status" : "passed",
"time" : {
"start" : 1735445612356,
"stop" : 1735445612408,
"duration" : 52
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'添加维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度'}", "{'message': '添加维度成功!'}", "'高'", "'json'", "'维度管理'", "'post'", "'delete from uc_demension where CODE_=\"test_dem\";'", "'delete'", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/addDem'" ]
}, {
"name" : "正向用例",
"uid" : "d75307e523b247b4",
"parentUid" : "cb77145aa3cdfe8c0b8f4e7be016310e",
"status" : "passed",
"time" : {
"start" : 1735445612418,
"stop" : 1735445612447,
"duration" : 29
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'更新维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度-更新'}", "{'message': '更新维度成功!'}", "'中'", "'json'", "'维度管理'", "'put'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/updateDem'" ]
}, {
"name" : "正向用例",
"uid" : "1e6d26bc76b77d97",
"parentUid" : "cb77145aa3cdfe8c0b8f4e7be016310e",
"status" : "passed",
"time" : {
"start" : 1735445612460,
"stop" : 1735445612518,
"duration" : 58
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'根据维度编码删除维度'", "{'ids': '需要更新'}", "{'message': '删除维度成功!'}", "'中'", "'query'", "'维度管理'", "'delete'", "'select ID_ from uc_demension where CODE_=\"test_dem\";'", "'select'", "'正向用例'", "'ids'", "'http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds'" ]
} ],
"uid" : "cb77145aa3cdfe8c0b8f4e7be016310e"
} ],
"uid" : "8339d06cb9ccac94703f912e25f8fe07"
} ],
"uid" : "3b083abbd4da894c2a31a2543bb576c2"
}, {
"name" : "test_case.test_user_jack",
"children" : [ {
"name" : "test_bpm",
"children" : [ {
"name" : "TestBpm",
"children" : [ {
"name" : "正向用例-用户名和密码正确",
"uid" : "1d2ea9fe00ca05e4",
"parentUid" : "59c55811841dd50fbc3e978a3d434ac4",
"status" : "passed",
"time" : {
"start" : 1735445612611,
"stop" : 1735445612644,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'username': '超级管理员', 'account': 'admin', 'userId': '1', 'expiration': 86400}", "'高'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'正向用例-用户名和密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名为空,密码正确",
"uid" : "c5814d8a05590bc6",
"parentUid" : "59c55811841dd50fbc3e978a3d434ac4",
"status" : "passed",
"time" : {
"start" : 1735445612651,
"stop" : 1735445612672,
"duration" : 21
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': '', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名为空,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名过短,密码正确",
"uid" : "2c3b9632c0c3c6f4",
"parentUid" : "59c55811841dd50fbc3e978a3d434ac4",
"status" : "passed",
"time" : {
"start" : 1735445612680,
"stop" : 1735445612712,
"duration" : 32
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'a', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名过短,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名过长,密码正确",
"uid" : "a80f5c73e98d0741",
"parentUid" : "59c55811841dd50fbc3e978a3d434ac4",
"status" : "passed",
"time" : {
"start" : 1735445612722,
"stop" : 1735445612761,
"duration" : 39
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'adminadminadminadminadminadminadmin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名过长,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名为特殊字符,密码正确",
"uid" : "26607d0fc400b834",
"parentUid" : "59c55811841dd50fbc3e978a3d434ac4",
"status" : "passed",
"time" : {
"start" : 1735445612773,
"stop" : 1735445612807,
"duration" : 34
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': '▣▤▥▦▩◘◙', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名为特殊字符,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名错误,密码正确",
"uid" : "93cad0eaff510b40",
"parentUid" : "59c55811841dd50fbc3e978a3d434ac4",
"status" : "passed",
"time" : {
"start" : 1735445612817,
"stop" : 1735445612852,
"duration" : 35
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'Admin123', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名错误,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码为空",
"uid" : "15e9970491f0a09f",
"parentUid" : "59c55811841dd50fbc3e978a3d434ac4",
"status" : "broken",
"time" : {
"start" : 1735445613159,
"stop" : 1735445613192,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': ''}", "{'message': '账号密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为空'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码过短",
"uid" : "7f0216857be8531c",
"parentUid" : "59c55811841dd50fbc3e978a3d434ac4",
"status" : "passed",
"time" : {
"start" : 1735445613214,
"stop" : 1735445613247,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': '1'}", "{'message': '账号或密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码过短'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码过长",
"uid" : "49047d75c6739794",
"parentUid" : "59c55811841dd50fbc3e978a3d434ac4",
"status" : "passed",
"time" : {
"start" : 1735445613261,
"stop" : 1735445613302,
"duration" : 41
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I=WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': None}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码过长'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码为特殊字符",
"uid" : "90ac19af8aa66702",
"parentUid" : "59c55811841dd50fbc3e978a3d434ac4",
"status" : "passed",
"time" : {
"start" : 1735445613311,
"stop" : 1735445613333,
"duration" : 22
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': '▣▤▥▦▩◘◙'}", "{'message': '账号或密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为特殊字符'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "正向用例",
"uid" : "b48aa381796879c7",
"parentUid" : "59c55811841dd50fbc3e978a3d434ac4",
"status" : "passed",
"time" : {
"start" : 1735445613342,
"stop" : 1735445613375,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'刷新token'", "None", "{'message': None}", "'中'", "None", "'认证接口'", "'get'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/refresh'" ]
} ],
"uid" : "59c55811841dd50fbc3e978a3d434ac4"
} ],
"uid" : "2df0c4c7f32db7cb9f47338bde6d9c5b"
} ],
"uid" : "b5a9f09b1acae566881061796add74ac"
}, {
"name" : "test_case.test_user_shy",
"children" : [ {
"name" : "test_bpm",
"children" : [ {
"name" : "TestBpm",
"children" : [ {
"name" : "正向用例",
"uid" : "4c1bebef17d4e513",
"parentUid" : "c2a51d063a4ca273c75fc7e8a2e1b2e4",
"status" : "passed",
"time" : {
"start" : 1735445613494,
"stop" : 1735445613544,
"duration" : 50
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'添加维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度'}", "{'message': '添加维度成功!'}", "'高'", "'json'", "'维度管理'", "'post'", "'delete from uc_demension where CODE_=\"test_dem\";'", "'delete'", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/addDem'" ]
}, {
"name" : "正向用例",
"uid" : "a1e59d44d15649e8",
"parentUid" : "c2a51d063a4ca273c75fc7e8a2e1b2e4",
"status" : "passed",
"time" : {
"start" : 1735445613550,
"stop" : 1735445613577,
"duration" : 27
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'更新维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度-更新'}", "{'message': '更新维度成功!'}", "'中'", "'json'", "'维度管理'", "'put'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/updateDem'" ]
}, {
"name" : "正向用例",
"uid" : "a81dd6be6f27488c",
"parentUid" : "c2a51d063a4ca273c75fc7e8a2e1b2e4",
"status" : "passed",
"time" : {
"start" : 1735445613584,
"stop" : 1735445613638,
"duration" : 54
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'添加组织'", "{'code': 'test_org_code', 'demId': '需要更新', 'exceedLimitNum': 0, 'grade': '', 'limitNum': 0, 'name': '测试组织', 'nowNum': 0, 'orderNo': 0, 'parentId': '0'}", "{'message': '添加组织成功!'}", "'高'", "'json'", "'组织管理'", "'post'", "{'select': 'select ID_ from uc_demension where CODE_=\"test_dem\";', 'delete': 'delete from uc_org where CODE_=\"test_org_code\";'}", "'delete|select'", "'正向用例'", "'demId'", "'http://36.139.193.99:8088/api/org/v1/org/addOrg'" ]
}, {
"name" : "正向用例",
"uid" : "4c1a66ac96836302",
"parentUid" : "c2a51d063a4ca273c75fc7e8a2e1b2e4",
"status" : "passed",
"time" : {
"start" : 1735445613646,
"stop" : 1735445613677,
"duration" : 31
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'组织加入用户'", "{'orgCode': 'test_org_code', 'accounts': 'admin'}", "{'message': '加入成功'}", "'中'", "'query'", "'组织管理'", "'post'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/org/v1/orgUsers/addUsersForOrg'" ]
}, {
"name" : "正向用例",
"uid" : "f8c43a4aa85bbf85",
"parentUid" : "c2a51d063a4ca273c75fc7e8a2e1b2e4",
"status" : "passed",
"time" : {
"start" : 1735445613690,
"stop" : 1735445613731,
"duration" : 41
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'保存组织参数'", "{'query': {'orgCode': 'test_org_code'}, 'json': [{'alias': 'sz', 'value': 100000}]}", "{'message': '保存组织参数成功!'}", "'中'", "'query|json'", "'组织管理'", "'post'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/org/v1/orgParam/saveOrgParams'" ]
}, {
"name" : "正向用例",
"uid" : "8a1ab60af2891f57",
"parentUid" : "c2a51d063a4ca273c75fc7e8a2e1b2e4",
"status" : "passed",
"time" : {
"start" : 1735445613742,
"stop" : 1735445613784,
"duration" : 42
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'删除组织'", "'test_org_code'", "{'message': '删除组织成功!'}", "'中'", "'form'", "'组织管理'", "'post'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/org/v1/org/deleteOrg'" ]
}, {
"name" : "正向用例",
"uid" : "df909ecea6f7b6dd",
"parentUid" : "c2a51d063a4ca273c75fc7e8a2e1b2e4",
"status" : "passed",
"time" : {
"start" : 1735445613794,
"stop" : 1735445613855,
"duration" : 61
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'根据维度编码删除维度'", "{'ids': '需要更新'}", "{'message': '删除维度成功!'}", "'中'", "'query'", "'维度管理'", "'delete'", "'select ID_ from uc_demension where CODE_=\"test_dem\";'", "'select'", "'正向用例'", "'ids'", "'http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds'" ]
} ],
"uid" : "c2a51d063a4ca273c75fc7e8a2e1b2e4"
} ],
"uid" : "500b25dbc8cb2eb7ad49681bb42e3a17"
} ],
"uid" : "41fe8ba4b516ca690a9c245decda2b15"
} ]
}
\ No newline at end of file
{
"uid" : "15e9970491f0a09f",
"name" : "反向用例-用户名正确,密码为空",
"fullName" : "test_case.test_user_jack.test_bpm.TestBpm#test_bpm",
"historyId" : "3a19a7c1988bebb35bd7d53f782c4cf7",
"time" : {
"start" : 1735445613159,
"stop" : 1735445613192,
"duration" : 33
},
"status" : "broken",
"statusMessage" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"statusTrace" : "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612530,
"stop" : 1735445612610,
"duration" : 80
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "broken",
"statusMessage" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"statusTrace" : "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError",
"steps" : [ ],
"attachments" : [ {
"uid" : "5a391e391b142c8a",
"name" : "log",
"source" : "5a391e391b142c8a.txt",
"type" : "text/plain",
"size" : 5315
} ],
"parameters" : [ ],
"shouldDisplayMessage" : true,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613861,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "认证接口"
}, {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-jack"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_jack"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_jack.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'登录系统'"
}, {
"name" : "case",
"value" : "{'username': 'admin', 'password': ''}"
}, {
"name" : "expect",
"value" : "{'message': '账号密码错误'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'application/json'"
}, {
"name" : "module",
"value" : "'认证接口'"
}, {
"name" : "req",
"value" : "'POST'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'反向用例-用户名正确,密码为空'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/auth'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ {
"uid" : "ab9330f38517cdc7",
"status" : "broken",
"statusDetails" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"time" : {
"start" : 1735445613112,
"stop" : 1735445613145,
"duration" : 33
}
}, {
"uid" : "6f757f9c0a9fd601",
"status" : "broken",
"statusDetails" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"time" : {
"start" : 1735445613064,
"stop" : 1735445613099,
"duration" : 35
}
}, {
"uid" : "3fc7cc8b46f0ef85",
"status" : "broken",
"statusDetails" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"time" : {
"start" : 1735445613015,
"stop" : 1735445613050,
"duration" : 35
}
}, {
"uid" : "7d28900ad6ba0f5d",
"status" : "broken",
"statusDetails" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"time" : {
"start" : 1735445612964,
"stop" : 1735445613000,
"duration" : 36
}
}, {
"uid" : "bac8f5f7f02a4d36",
"status" : "broken",
"statusDetails" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"time" : {
"start" : 1735445612860,
"stop" : 1735445612896,
"duration" : 36
}
} ],
"categories" : [ {
"name" : "Test defects",
"matchedStatuses" : [ ],
"flaky" : false
} ],
"tags" : [ ]
},
"source" : "15e9970491f0a09f.json",
"parameterValues" : [ "'登录系统'", "{'username': 'admin', 'password': ''}", "{'message': '账号密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为空'", "None", "'http://36.139.193.99:8088/auth'" ]
}
\ No newline at end of file
{
"uid" : "1d2ea9fe00ca05e4",
"name" : "正向用例-用户名和密码正确",
"fullName" : "test_case.test_user_jack.test_bpm.TestBpm#test_bpm",
"historyId" : "059eaf6d6b5b02f506b3edbce892f866",
"time" : {
"start" : 1735445612611,
"stop" : 1735445612644,
"duration" : 33
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612530,
"stop" : 1735445612610,
"duration" : 80
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "b2d0cd8be6201d61",
"name" : "log",
"source" : "b2d0cd8be6201d61.txt",
"type" : "text/plain",
"size" : 3315
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613861,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "认证接口"
}, {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "severity",
"value" : "高"
}, {
"name" : "epic",
"value" : "BPM-jack"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_jack"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_jack.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'登录系统'"
}, {
"name" : "case",
"value" : "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}"
}, {
"name" : "expect",
"value" : "{'username': '超级管理员', 'account': 'admin', 'userId': '1', 'expiration': 86400}"
}, {
"name" : "level",
"value" : "'高'"
}, {
"name" : "mime",
"value" : "'application/json'"
}, {
"name" : "module",
"value" : "'认证接口'"
}, {
"name" : "req",
"value" : "'POST'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'正向用例-用户名和密码正确'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/auth'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "1d2ea9fe00ca05e4.json",
"parameterValues" : [ "'登录系统'", "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'username': '超级管理员', 'account': 'admin', 'userId': '1', 'expiration': 86400}", "'高'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'正向用例-用户名和密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}
\ No newline at end of file
{
"uid" : "1e6d26bc76b77d97",
"name" : "正向用例",
"fullName" : "test_case.test_user_farke.test_bpm.TestBpm#test_bpm",
"historyId" : "5e96723d0cec8ad6e36dfbdd0c60ab19",
"time" : {
"start" : 1735445612460,
"stop" : 1735445612518,
"duration" : 58
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612267,
"stop" : 1735445612355,
"duration" : 88
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "4a368068e5680f17",
"name" : "log",
"source" : "4a368068e5680f17.txt",
"type" : "text/plain",
"size" : 731
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613862,
"duration" : 1
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "维度管理"
}, {
"name" : "story",
"value" : "根据维度编码删除维度"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-farke"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_farke"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_farke.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'根据维度编码删除维度'"
}, {
"name" : "case",
"value" : "{'ids': '需要更新'}"
}, {
"name" : "expect",
"value" : "{'message': '删除维度成功!'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'query'"
}, {
"name" : "module",
"value" : "'维度管理'"
}, {
"name" : "req",
"value" : "'delete'"
}, {
"name" : "sql",
"value" : "'select ID_ from uc_demension where CODE_=\"test_dem\";'"
}, {
"name" : "sql_type",
"value" : "'select'"
}, {
"name" : "title",
"value" : "'正向用例'"
}, {
"name" : "update",
"value" : "'ids'"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "1e6d26bc76b77d97.json",
"parameterValues" : [ "'根据维度编码删除维度'", "{'ids': '需要更新'}", "{'message': '删除维度成功!'}", "'中'", "'query'", "'维度管理'", "'delete'", "'select ID_ from uc_demension where CODE_=\"test_dem\";'", "'select'", "'正向用例'", "'ids'", "'http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds'" ]
}
\ No newline at end of file
{
"uid" : "26607d0fc400b834",
"name" : "反向用例-用户名为特殊字符,密码正确",
"fullName" : "test_case.test_user_jack.test_bpm.TestBpm#test_bpm",
"historyId" : "5e07a2f2ebab76d23f195c11c8f0fb66",
"time" : {
"start" : 1735445612773,
"stop" : 1735445612807,
"duration" : 34
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612530,
"stop" : 1735445612610,
"duration" : 80
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "11b796e4c1113499",
"name" : "log",
"source" : "11b796e4c1113499.txt",
"type" : "text/plain",
"size" : 504
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613861,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "认证接口"
}, {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-jack"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_jack"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_jack.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'登录系统'"
}, {
"name" : "case",
"value" : "{'username': '▣▤▥▦▩◘◙', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}"
}, {
"name" : "expect",
"value" : "{'message': '账户错误或该租户未启用'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'application/json'"
}, {
"name" : "module",
"value" : "'认证接口'"
}, {
"name" : "req",
"value" : "'POST'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'反向用例-用户名为特殊字符,密码正确'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/auth'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "26607d0fc400b834.json",
"parameterValues" : [ "'登录系统'", "{'username': '▣▤▥▦▩◘◙', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名为特殊字符,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}
\ No newline at end of file
{
"uid" : "2c3b9632c0c3c6f4",
"name" : "反向用例-用户名过短,密码正确",
"fullName" : "test_case.test_user_jack.test_bpm.TestBpm#test_bpm",
"historyId" : "5b77bd45f8b3a2b7bb68277ddd6b8faa",
"time" : {
"start" : 1735445612680,
"stop" : 1735445612712,
"duration" : 32
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612530,
"stop" : 1735445612610,
"duration" : 80
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "894c1ae78dac6f94",
"name" : "log",
"source" : "894c1ae78dac6f94.txt",
"type" : "text/plain",
"size" : 504
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613861,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "认证接口"
}, {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-jack"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_jack"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_jack.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'登录系统'"
}, {
"name" : "case",
"value" : "{'username': 'a', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}"
}, {
"name" : "expect",
"value" : "{'message': '账户错误或该租户未启用'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'application/json'"
}, {
"name" : "module",
"value" : "'认证接口'"
}, {
"name" : "req",
"value" : "'POST'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'反向用例-用户名过短,密码正确'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/auth'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "2c3b9632c0c3c6f4.json",
"parameterValues" : [ "'登录系统'", "{'username': 'a', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名过短,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}
\ No newline at end of file
{
"uid" : "3fc7cc8b46f0ef85",
"name" : "反向用例-用户名正确,密码为空",
"fullName" : "test_case.test_user_jack.test_bpm.TestBpm#test_bpm",
"historyId" : "3a19a7c1988bebb35bd7d53f782c4cf7",
"time" : {
"start" : 1735445613015,
"stop" : 1735445613050,
"duration" : 35
},
"status" : "broken",
"statusMessage" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"statusTrace" : "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612530,
"stop" : 1735445612610,
"duration" : 80
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "broken",
"statusMessage" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"statusTrace" : "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError",
"steps" : [ ],
"attachments" : [ {
"uid" : "bb167779ecb47e1c",
"name" : "log",
"source" : "bb167779ecb47e1c.txt",
"type" : "text/plain",
"size" : 2657
} ],
"parameters" : [ ],
"shouldDisplayMessage" : true,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613861,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "认证接口"
}, {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-jack"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_jack"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_jack.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'登录系统'"
}, {
"name" : "case",
"value" : "{'username': 'admin', 'password': ''}"
}, {
"name" : "expect",
"value" : "{'message': '账号密码错误'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'application/json'"
}, {
"name" : "module",
"value" : "'认证接口'"
}, {
"name" : "req",
"value" : "'POST'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'反向用例-用户名正确,密码为空'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/auth'"
} ],
"links" : [ ],
"hidden" : true,
"retry" : true,
"extra" : {
"categories" : [ ],
"tags" : [ ]
},
"source" : "3fc7cc8b46f0ef85.json",
"parameterValues" : [ "'登录系统'", "{'username': 'admin', 'password': ''}", "{'message': '账号密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为空'", "None", "'http://36.139.193.99:8088/auth'" ]
}
\ No newline at end of file
{
"uid" : "49047d75c6739794",
"name" : "反向用例-用户名正确,密码过长",
"fullName" : "test_case.test_user_jack.test_bpm.TestBpm#test_bpm",
"historyId" : "f1ae6dd610bf49307c204bc6499be403",
"time" : {
"start" : 1735445613261,
"stop" : 1735445613302,
"duration" : 41
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612530,
"stop" : 1735445612610,
"duration" : 80
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "4832ba4b3c396f6f",
"name" : "log",
"source" : "4832ba4b3c396f6f.txt",
"type" : "text/plain",
"size" : 504
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613861,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "认证接口"
}, {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-jack"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_jack"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_jack.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'登录系统'"
}, {
"name" : "case",
"value" : "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I=WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}"
}, {
"name" : "expect",
"value" : "{'message': None}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'application/json'"
}, {
"name" : "module",
"value" : "'认证接口'"
}, {
"name" : "req",
"value" : "'POST'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'反向用例-用户名正确,密码过长'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/auth'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "49047d75c6739794.json",
"parameterValues" : [ "'登录系统'", "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I=WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': None}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码过长'", "None", "'http://36.139.193.99:8088/auth'" ]
}
\ No newline at end of file
{
"uid" : "4c1a66ac96836302",
"name" : "正向用例",
"fullName" : "test_case.test_user_shy.test_bpm.TestBpm#test_bpm",
"historyId" : "de9169adb3047aea29cb4975de8561c7",
"time" : {
"start" : 1735445613646,
"stop" : 1735445613677,
"duration" : 31
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "req_fix",
"time" : {
"start" : 1735445613383,
"stop" : 1735445613493,
"duration" : 110
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "2e59d704a2a43402",
"name" : "log",
"source" : "2e59d704a2a43402.txt",
"type" : "text/plain",
"size" : 503
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613860,
"stop" : 1735445613860,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "组织管理"
}, {
"name" : "story",
"value" : "组织加入用户"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-shy"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_shy"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_shy.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'组织加入用户'"
}, {
"name" : "case",
"value" : "{'orgCode': 'test_org_code', 'accounts': 'admin'}"
}, {
"name" : "expect",
"value" : "{'message': '加入成功'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'query'"
}, {
"name" : "module",
"value" : "'组织管理'"
}, {
"name" : "req",
"value" : "'post'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'正向用例'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/api/org/v1/orgUsers/addUsersForOrg'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "4c1a66ac96836302.json",
"parameterValues" : [ "'组织加入用户'", "{'orgCode': 'test_org_code', 'accounts': 'admin'}", "{'message': '加入成功'}", "'中'", "'query'", "'组织管理'", "'post'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/org/v1/orgUsers/addUsersForOrg'" ]
}
\ No newline at end of file
{
"uid" : "4c1bebef17d4e513",
"name" : "正向用例",
"fullName" : "test_case.test_user_shy.test_bpm.TestBpm#test_bpm",
"historyId" : "835bac4a67f4e5d25a5eb7b7d59cc4f6",
"time" : {
"start" : 1735445613494,
"stop" : 1735445613544,
"duration" : 50
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "req_fix",
"time" : {
"start" : 1735445613383,
"stop" : 1735445613493,
"duration" : 110
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "9acd5730fa5c1617",
"name" : "log",
"source" : "9acd5730fa5c1617.txt",
"type" : "text/plain",
"size" : 3540
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613860,
"stop" : 1735445613860,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "维度管理"
}, {
"name" : "story",
"value" : "添加维度"
}, {
"name" : "severity",
"value" : "高"
}, {
"name" : "epic",
"value" : "BPM-shy"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_shy"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_shy.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'添加维度'"
}, {
"name" : "case",
"value" : "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度'}"
}, {
"name" : "expect",
"value" : "{'message': '添加维度成功!'}"
}, {
"name" : "level",
"value" : "'高'"
}, {
"name" : "mime",
"value" : "'json'"
}, {
"name" : "module",
"value" : "'维度管理'"
}, {
"name" : "req",
"value" : "'post'"
}, {
"name" : "sql",
"value" : "'delete from uc_demension where CODE_=\"test_dem\";'"
}, {
"name" : "sql_type",
"value" : "'delete'"
}, {
"name" : "title",
"value" : "'正向用例'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/api/demension/v1/dem/addDem'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "4c1bebef17d4e513.json",
"parameterValues" : [ "'添加维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度'}", "{'message': '添加维度成功!'}", "'高'", "'json'", "'维度管理'", "'post'", "'delete from uc_demension where CODE_=\"test_dem\";'", "'delete'", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/addDem'" ]
}
\ No newline at end of file
{
"uid" : "6182889ac34359c8",
"name" : "登陆系统的标题",
"fullName" : "test_case.test_bpm.test_auth.TestAuth#test_login",
"historyId" : "4048ba52b7bcd499ff8b6aa43370076d",
"time" : {
"start" : 1735445612177,
"stop" : 1735445612226,
"duration" : 49
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "req_fix",
"time" : {
"start" : 1735445612176,
"stop" : 1735445612176,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613862,
"stop" : 1735445613862,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "epic",
"value" : "BPM项目-场景"
}, {
"name" : "severity",
"value" : "高"
}, {
"name" : "feature",
"value" : "BPM项目-认证接口"
}, {
"name" : "tag",
"value" : "dependency(scope='session')"
}, {
"name" : "parentSuite",
"value" : "test_case.test_bpm"
}, {
"name" : "suite",
"value" : "test_auth"
}, {
"name" : "subSuite",
"value" : "TestAuth"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_bpm.test_auth"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "case_data",
"value" : "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}"
}, {
"name" : "expect_data",
"value" : "{'username': '超级管理员', 'account': 'admin', 'userId': '1', 'expiration': 86400}"
}, {
"name" : "title",
"value" : "'正向用例'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ "dependency(scope='session')" ]
},
"source" : "6182889ac34359c8.json",
"parameterValues" : [ "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'username': '超级管理员', 'account': 'admin', 'userId': '1', 'expiration': 86400}", "'正向用例'" ]
}
\ No newline at end of file
{
"uid" : "6f757f9c0a9fd601",
"name" : "反向用例-用户名正确,密码为空",
"fullName" : "test_case.test_user_jack.test_bpm.TestBpm#test_bpm",
"historyId" : "3a19a7c1988bebb35bd7d53f782c4cf7",
"time" : {
"start" : 1735445613064,
"stop" : 1735445613099,
"duration" : 35
},
"status" : "broken",
"statusMessage" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"statusTrace" : "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612530,
"stop" : 1735445612610,
"duration" : 80
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "broken",
"statusMessage" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"statusTrace" : "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError",
"steps" : [ ],
"attachments" : [ {
"uid" : "6612b5e20988e065",
"name" : "log",
"source" : "6612b5e20988e065.txt",
"type" : "text/plain",
"size" : 3543
} ],
"parameters" : [ ],
"shouldDisplayMessage" : true,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613861,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "认证接口"
}, {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-jack"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_jack"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_jack.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'登录系统'"
}, {
"name" : "case",
"value" : "{'username': 'admin', 'password': ''}"
}, {
"name" : "expect",
"value" : "{'message': '账号密码错误'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'application/json'"
}, {
"name" : "module",
"value" : "'认证接口'"
}, {
"name" : "req",
"value" : "'POST'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'反向用例-用户名正确,密码为空'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/auth'"
} ],
"links" : [ ],
"hidden" : true,
"retry" : true,
"extra" : {
"categories" : [ ],
"tags" : [ ]
},
"source" : "6f757f9c0a9fd601.json",
"parameterValues" : [ "'登录系统'", "{'username': 'admin', 'password': ''}", "{'message': '账号密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为空'", "None", "'http://36.139.193.99:8088/auth'" ]
}
\ No newline at end of file
{
"uid" : "7d28900ad6ba0f5d",
"name" : "反向用例-用户名正确,密码为空",
"fullName" : "test_case.test_user_jack.test_bpm.TestBpm#test_bpm",
"historyId" : "3a19a7c1988bebb35bd7d53f782c4cf7",
"time" : {
"start" : 1735445612964,
"stop" : 1735445613000,
"duration" : 36
},
"status" : "broken",
"statusMessage" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"statusTrace" : "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612530,
"stop" : 1735445612610,
"duration" : 80
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "broken",
"statusMessage" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"statusTrace" : "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError",
"steps" : [ ],
"attachments" : [ {
"uid" : "87203a75fac21c49",
"name" : "log",
"source" : "87203a75fac21c49.txt",
"type" : "text/plain",
"size" : 1771
} ],
"parameters" : [ ],
"shouldDisplayMessage" : true,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613861,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "认证接口"
}, {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-jack"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_jack"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_jack.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'登录系统'"
}, {
"name" : "case",
"value" : "{'username': 'admin', 'password': ''}"
}, {
"name" : "expect",
"value" : "{'message': '账号密码错误'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'application/json'"
}, {
"name" : "module",
"value" : "'认证接口'"
}, {
"name" : "req",
"value" : "'POST'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'反向用例-用户名正确,密码为空'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/auth'"
} ],
"links" : [ ],
"hidden" : true,
"retry" : true,
"extra" : {
"categories" : [ ],
"tags" : [ ]
},
"source" : "7d28900ad6ba0f5d.json",
"parameterValues" : [ "'登录系统'", "{'username': 'admin', 'password': ''}", "{'message': '账号密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为空'", "None", "'http://36.139.193.99:8088/auth'" ]
}
\ No newline at end of file
{
"uid" : "7f0216857be8531c",
"name" : "反向用例-用户名正确,密码过短",
"fullName" : "test_case.test_user_jack.test_bpm.TestBpm#test_bpm",
"historyId" : "2aea37f80bd8073c6351569828ae3c90",
"time" : {
"start" : 1735445613214,
"stop" : 1735445613247,
"duration" : 33
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612530,
"stop" : 1735445612610,
"duration" : 80
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "ffa49f1b6b1d1dfe",
"name" : "log",
"source" : "ffa49f1b6b1d1dfe.txt",
"type" : "text/plain",
"size" : 504
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613861,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "认证接口"
}, {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-jack"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_jack"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_jack.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'登录系统'"
}, {
"name" : "case",
"value" : "{'username': 'admin', 'password': '1'}"
}, {
"name" : "expect",
"value" : "{'message': '账号或密码错误'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'application/json'"
}, {
"name" : "module",
"value" : "'认证接口'"
}, {
"name" : "req",
"value" : "'POST'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'反向用例-用户名正确,密码过短'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/auth'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "7f0216857be8531c.json",
"parameterValues" : [ "'登录系统'", "{'username': 'admin', 'password': '1'}", "{'message': '账号或密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码过短'", "None", "'http://36.139.193.99:8088/auth'" ]
}
\ No newline at end of file
{
"uid" : "8a1ab60af2891f57",
"name" : "正向用例",
"fullName" : "test_case.test_user_shy.test_bpm.TestBpm#test_bpm",
"historyId" : "f42bdf750b6af50c31f0619646ef26c2",
"time" : {
"start" : 1735445613742,
"stop" : 1735445613784,
"duration" : 42
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "req_fix",
"time" : {
"start" : 1735445613383,
"stop" : 1735445613493,
"duration" : 110
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "f232ba2f41e72b72",
"name" : "log",
"source" : "f232ba2f41e72b72.txt",
"type" : "text/plain",
"size" : 503
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613860,
"stop" : 1735445613860,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "组织管理"
}, {
"name" : "story",
"value" : "删除组织"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-shy"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_shy"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_shy.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'删除组织'"
}, {
"name" : "case",
"value" : "'test_org_code'"
}, {
"name" : "expect",
"value" : "{'message': '删除组织成功!'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'form'"
}, {
"name" : "module",
"value" : "'组织管理'"
}, {
"name" : "req",
"value" : "'post'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'正向用例'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/api/org/v1/org/deleteOrg'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "8a1ab60af2891f57.json",
"parameterValues" : [ "'删除组织'", "'test_org_code'", "{'message': '删除组织成功!'}", "'中'", "'form'", "'组织管理'", "'post'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/org/v1/org/deleteOrg'" ]
}
\ No newline at end of file
{
"uid" : "90ac19af8aa66702",
"name" : "反向用例-用户名正确,密码为特殊字符",
"fullName" : "test_case.test_user_jack.test_bpm.TestBpm#test_bpm",
"historyId" : "a64f3b1f5715e2f492a002ea2f21ac65",
"time" : {
"start" : 1735445613311,
"stop" : 1735445613333,
"duration" : 22
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612530,
"stop" : 1735445612610,
"duration" : 80
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "6ea5ca0bd2cd36f0",
"name" : "log",
"source" : "6ea5ca0bd2cd36f0.txt",
"type" : "text/plain",
"size" : 504
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613861,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "认证接口"
}, {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-jack"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_jack"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_jack.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'登录系统'"
}, {
"name" : "case",
"value" : "{'username': 'admin', 'password': '▣▤▥▦▩◘◙'}"
}, {
"name" : "expect",
"value" : "{'message': '账号或密码错误'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'application/json'"
}, {
"name" : "module",
"value" : "'认证接口'"
}, {
"name" : "req",
"value" : "'POST'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'反向用例-用户名正确,密码为特殊字符'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/auth'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "90ac19af8aa66702.json",
"parameterValues" : [ "'登录系统'", "{'username': 'admin', 'password': '▣▤▥▦▩◘◙'}", "{'message': '账号或密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为特殊字符'", "None", "'http://36.139.193.99:8088/auth'" ]
}
\ No newline at end of file
{
"uid" : "93cad0eaff510b40",
"name" : "反向用例-用户名错误,密码正确",
"fullName" : "test_case.test_user_jack.test_bpm.TestBpm#test_bpm",
"historyId" : "a66a24115f84b24b2f8d4ec34e7ef590",
"time" : {
"start" : 1735445612817,
"stop" : 1735445612852,
"duration" : 35
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612530,
"stop" : 1735445612610,
"duration" : 80
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "fc09948c2aaab2dc",
"name" : "log",
"source" : "fc09948c2aaab2dc.txt",
"type" : "text/plain",
"size" : 504
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613861,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "认证接口"
}, {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-jack"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_jack"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_jack.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'登录系统'"
}, {
"name" : "case",
"value" : "{'username': 'Admin123', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}"
}, {
"name" : "expect",
"value" : "{'message': '账户错误或该租户未启用'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'application/json'"
}, {
"name" : "module",
"value" : "'认证接口'"
}, {
"name" : "req",
"value" : "'POST'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'反向用例-用户名错误,密码正确'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/auth'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "93cad0eaff510b40.json",
"parameterValues" : [ "'登录系统'", "{'username': 'Admin123', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名错误,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}
\ No newline at end of file
{
"uid" : "a1e59d44d15649e8",
"name" : "正向用例",
"fullName" : "test_case.test_user_shy.test_bpm.TestBpm#test_bpm",
"historyId" : "9fcc5b45a482f74501a9f7c005752d90",
"time" : {
"start" : 1735445613550,
"stop" : 1735445613577,
"duration" : 27
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "req_fix",
"time" : {
"start" : 1735445613383,
"stop" : 1735445613493,
"duration" : 110
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "3905a5cf6eb1c125",
"name" : "log",
"source" : "3905a5cf6eb1c125.txt",
"type" : "text/plain",
"size" : 503
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613860,
"stop" : 1735445613860,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "维度管理"
}, {
"name" : "story",
"value" : "更新维度"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-shy"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_shy"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_shy.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'更新维度'"
}, {
"name" : "case",
"value" : "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度-更新'}"
}, {
"name" : "expect",
"value" : "{'message': '更新维度成功!'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'json'"
}, {
"name" : "module",
"value" : "'维度管理'"
}, {
"name" : "req",
"value" : "'put'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'正向用例'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/api/demension/v1/dem/updateDem'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "a1e59d44d15649e8.json",
"parameterValues" : [ "'更新维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度-更新'}", "{'message': '更新维度成功!'}", "'中'", "'json'", "'维度管理'", "'put'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/updateDem'" ]
}
\ No newline at end of file
{
"uid" : "a80f5c73e98d0741",
"name" : "反向用例-用户名过长,密码正确",
"fullName" : "test_case.test_user_jack.test_bpm.TestBpm#test_bpm",
"historyId" : "344354ac13d2cf6e490002f0f54c0ace",
"time" : {
"start" : 1735445612722,
"stop" : 1735445612761,
"duration" : 39
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612530,
"stop" : 1735445612610,
"duration" : 80
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "d4c7399ec7613470",
"name" : "log",
"source" : "d4c7399ec7613470.txt",
"type" : "text/plain",
"size" : 504
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613861,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "认证接口"
}, {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-jack"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_jack"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_jack.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'登录系统'"
}, {
"name" : "case",
"value" : "{'username': 'adminadminadminadminadminadminadmin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}"
}, {
"name" : "expect",
"value" : "{'message': '账户错误或该租户未启用'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'application/json'"
}, {
"name" : "module",
"value" : "'认证接口'"
}, {
"name" : "req",
"value" : "'POST'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'反向用例-用户名过长,密码正确'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/auth'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "a80f5c73e98d0741.json",
"parameterValues" : [ "'登录系统'", "{'username': 'adminadminadminadminadminadminadmin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名过长,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}
\ No newline at end of file
{
"uid" : "a81dd6be6f27488c",
"name" : "正向用例",
"fullName" : "test_case.test_user_shy.test_bpm.TestBpm#test_bpm",
"historyId" : "a69903ef4d247999e0c971681208aa80",
"time" : {
"start" : 1735445613584,
"stop" : 1735445613638,
"duration" : 54
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "req_fix",
"time" : {
"start" : 1735445613383,
"stop" : 1735445613493,
"duration" : 110
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "75d2f625f6505578",
"name" : "log",
"source" : "75d2f625f6505578.txt",
"type" : "text/plain",
"size" : 955
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613860,
"stop" : 1735445613860,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "组织管理"
}, {
"name" : "story",
"value" : "添加组织"
}, {
"name" : "severity",
"value" : "高"
}, {
"name" : "epic",
"value" : "BPM-shy"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_shy"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_shy.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'添加组织'"
}, {
"name" : "case",
"value" : "{'code': 'test_org_code', 'demId': '需要更新', 'exceedLimitNum': 0, 'grade': '', 'limitNum': 0, 'name': '测试组织', 'nowNum': 0, 'orderNo': 0, 'parentId': '0'}"
}, {
"name" : "expect",
"value" : "{'message': '添加组织成功!'}"
}, {
"name" : "level",
"value" : "'高'"
}, {
"name" : "mime",
"value" : "'json'"
}, {
"name" : "module",
"value" : "'组织管理'"
}, {
"name" : "req",
"value" : "'post'"
}, {
"name" : "sql",
"value" : "{'select': 'select ID_ from uc_demension where CODE_=\"test_dem\";', 'delete': 'delete from uc_org where CODE_=\"test_org_code\";'}"
}, {
"name" : "sql_type",
"value" : "'delete|select'"
}, {
"name" : "title",
"value" : "'正向用例'"
}, {
"name" : "update",
"value" : "'demId'"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/api/org/v1/org/addOrg'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "a81dd6be6f27488c.json",
"parameterValues" : [ "'添加组织'", "{'code': 'test_org_code', 'demId': '需要更新', 'exceedLimitNum': 0, 'grade': '', 'limitNum': 0, 'name': '测试组织', 'nowNum': 0, 'orderNo': 0, 'parentId': '0'}", "{'message': '添加组织成功!'}", "'高'", "'json'", "'组织管理'", "'post'", "{'select': 'select ID_ from uc_demension where CODE_=\"test_dem\";', 'delete': 'delete from uc_org where CODE_=\"test_org_code\";'}", "'delete|select'", "'正向用例'", "'demId'", "'http://36.139.193.99:8088/api/org/v1/org/addOrg'" ]
}
\ No newline at end of file
{
"uid" : "a95e441d55cfd27e",
"name" : "添加维度的标题",
"fullName" : "test_case.test_bpm.test_dem.TestDem#test_add_dem",
"historyId" : "47dfc6262edb93463bd12d53e31c5d4e",
"time" : {
"start" : 1735445612263,
"stop" : 1735445612263,
"duration" : 0
},
"status" : "skipped",
"statusMessage" : "Skipped: test_add_dem depends on test_bpm/test_auth.py::TestAuth::test_login[\\u6b63\\u5411\\u7528\\u4f8b-case_data0-expect_data0]",
"statusTrace" : "('C:\\\\Users\\\\32006\\\\Desktop\\\\test_python\\\\python_learning\\\\test\\\\venv\\\\Lib\\\\site-packages\\\\pytest_dependency.py', 101, 'Skipped: test_add_dem depends on test_bpm/test_auth.py::TestAuth::test_login[\\\\u6b63\\\\u5411\\\\u7528\\\\u4f8b-case_data0-expect_data0]')",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "req_fix",
"time" : {
"start" : 1735445612176,
"stop" : 1735445612176,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "skipped",
"statusMessage" : "Skipped: test_add_dem depends on test_bpm/test_auth.py::TestAuth::test_login[\\u6b63\\u5411\\u7528\\u4f8b-case_data0-expect_data0]",
"statusTrace" : "('C:\\\\Users\\\\32006\\\\Desktop\\\\test_python\\\\python_learning\\\\test\\\\venv\\\\Lib\\\\site-packages\\\\pytest_dependency.py', 101, 'Skipped: test_add_dem depends on test_bpm/test_auth.py::TestAuth::test_login[\\\\u6b63\\\\u5411\\\\u7528\\\\u4f8b-case_data0-expect_data0]')",
"steps" : [ ],
"attachments" : [ {
"uid" : "a9f69832b785d9eb",
"name" : "log",
"source" : "a9f69832b785d9eb.txt",
"type" : "text/plain",
"size" : 194
} ],
"parameters" : [ ],
"shouldDisplayMessage" : true,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613862,
"stop" : 1735445613862,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "severity",
"value" : "高"
}, {
"name" : "epic",
"value" : "BPM项目-场景"
}, {
"name" : "feature",
"value" : "BPM项目-维度管理"
}, {
"name" : "story",
"value" : "添加维度"
}, {
"name" : "tag",
"value" : "dependency(depends=['test_bpm/test_auth.py::TestAuth::test_login[\\\\u6b63\\\\u5411\\\\u7528\\\\u4f8b-case_data0-expect_data0]'], scope='session')"
}, {
"name" : "parentSuite",
"value" : "test_case.test_bpm"
}, {
"name" : "suite",
"value" : "test_dem"
}, {
"name" : "subSuite",
"value" : "TestDem"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_bpm.test_dem"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ "dependency(depends=['test_bpm/test_auth.py::TestAuth::test_login[\\\\u6b63\\\\u5411\\\\u7528\\\\u4f8b-case_data0-expect_data0]'], scope='session')" ]
},
"source" : "a95e441d55cfd27e.json",
"parameterValues" : [ ]
}
\ No newline at end of file
{
"uid" : "ab9330f38517cdc7",
"name" : "反向用例-用户名正确,密码为空",
"fullName" : "test_case.test_user_jack.test_bpm.TestBpm#test_bpm",
"historyId" : "3a19a7c1988bebb35bd7d53f782c4cf7",
"time" : {
"start" : 1735445613112,
"stop" : 1735445613145,
"duration" : 33
},
"status" : "broken",
"statusMessage" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"statusTrace" : "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612530,
"stop" : 1735445612610,
"duration" : 80
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "broken",
"statusMessage" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"statusTrace" : "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError",
"steps" : [ ],
"attachments" : [ {
"uid" : "a95ae1add2ee37b4",
"name" : "log",
"source" : "a95ae1add2ee37b4.txt",
"type" : "text/plain",
"size" : 4429
} ],
"parameters" : [ ],
"shouldDisplayMessage" : true,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613861,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "认证接口"
}, {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-jack"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_jack"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_jack.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'登录系统'"
}, {
"name" : "case",
"value" : "{'username': 'admin', 'password': ''}"
}, {
"name" : "expect",
"value" : "{'message': '账号密码错误'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'application/json'"
}, {
"name" : "module",
"value" : "'认证接口'"
}, {
"name" : "req",
"value" : "'POST'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'反向用例-用户名正确,密码为空'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/auth'"
} ],
"links" : [ ],
"hidden" : true,
"retry" : true,
"extra" : {
"categories" : [ ],
"tags" : [ ]
},
"source" : "ab9330f38517cdc7.json",
"parameterValues" : [ "'登录系统'", "{'username': 'admin', 'password': ''}", "{'message': '账号密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为空'", "None", "'http://36.139.193.99:8088/auth'" ]
}
\ No newline at end of file
{
"uid" : "b48aa381796879c7",
"name" : "正向用例",
"fullName" : "test_case.test_user_jack.test_bpm.TestBpm#test_bpm",
"historyId" : "008bb596be3cc0672bed7d964ad859fe",
"time" : {
"start" : 1735445613342,
"stop" : 1735445613375,
"duration" : 33
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612530,
"stop" : 1735445612610,
"duration" : 80
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "f523f19e37282a2a",
"name" : "log",
"source" : "f523f19e37282a2a.txt",
"type" : "text/plain",
"size" : 504
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613861,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "认证接口"
}, {
"name" : "story",
"value" : "刷新token"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-jack"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_jack"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_jack.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'刷新token'"
}, {
"name" : "case",
"value" : "None"
}, {
"name" : "expect",
"value" : "{'message': None}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "None"
}, {
"name" : "module",
"value" : "'认证接口'"
}, {
"name" : "req",
"value" : "'get'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'正向用例'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/refresh'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "b48aa381796879c7.json",
"parameterValues" : [ "'刷新token'", "None", "{'message': None}", "'中'", "None", "'认证接口'", "'get'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/refresh'" ]
}
\ No newline at end of file
{
"uid" : "bac8f5f7f02a4d36",
"name" : "反向用例-用户名正确,密码为空",
"fullName" : "test_case.test_user_jack.test_bpm.TestBpm#test_bpm",
"historyId" : "3a19a7c1988bebb35bd7d53f782c4cf7",
"time" : {
"start" : 1735445612860,
"stop" : 1735445612896,
"duration" : 36
},
"status" : "broken",
"statusMessage" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"statusTrace" : "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612530,
"stop" : 1735445612610,
"duration" : 80
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "broken",
"statusMessage" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"statusTrace" : "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError",
"steps" : [ ],
"attachments" : [ {
"uid" : "9125cec4a459bcc1",
"name" : "log",
"source" : "9125cec4a459bcc1.txt",
"type" : "text/plain",
"size" : 885
} ],
"parameters" : [ ],
"shouldDisplayMessage" : true,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613861,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "认证接口"
}, {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-jack"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_jack"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_jack.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'登录系统'"
}, {
"name" : "case",
"value" : "{'username': 'admin', 'password': ''}"
}, {
"name" : "expect",
"value" : "{'message': '账号密码错误'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'application/json'"
}, {
"name" : "module",
"value" : "'认证接口'"
}, {
"name" : "req",
"value" : "'POST'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'反向用例-用户名正确,密码为空'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/auth'"
} ],
"links" : [ ],
"hidden" : true,
"retry" : true,
"extra" : {
"categories" : [ ],
"tags" : [ ]
},
"source" : "bac8f5f7f02a4d36.json",
"parameterValues" : [ "'登录系统'", "{'username': 'admin', 'password': ''}", "{'message': '账号密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为空'", "None", "'http://36.139.193.99:8088/auth'" ]
}
\ No newline at end of file
{
"uid" : "bfa27ce577b1727",
"name" : "登陆系统的标题",
"fullName" : "test_case.test_bpm.test_auth.TestAuth#test_login",
"historyId" : "71d61dc3baca8c0d0c9cbcb57f3bf9b5",
"time" : {
"start" : 1735445612232,
"stop" : 1735445612258,
"duration" : 26
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "req_fix",
"time" : {
"start" : 1735445612176,
"stop" : 1735445612176,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613862,
"stop" : 1735445613862,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "epic",
"value" : "BPM项目-场景"
}, {
"name" : "severity",
"value" : "高"
}, {
"name" : "feature",
"value" : "BPM项目-认证接口"
}, {
"name" : "tag",
"value" : "dependency(scope='session')"
}, {
"name" : "parentSuite",
"value" : "test_case.test_bpm"
}, {
"name" : "suite",
"value" : "test_auth"
}, {
"name" : "subSuite",
"value" : "TestAuth"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_bpm.test_auth"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "case_data",
"value" : "{'username': 'admin', 'password': ''}"
}, {
"name" : "expect_data",
"value" : "{'message': '账号或密码错误'}"
}, {
"name" : "title",
"value" : "'反向用例'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ "dependency(scope='session')" ]
},
"source" : "bfa27ce577b1727.json",
"parameterValues" : [ "{'username': 'admin', 'password': ''}", "{'message': '账号或密码错误'}", "'反向用例'" ]
}
\ No newline at end of file
{
"uid" : "c5814d8a05590bc6",
"name" : "反向用例-用户名为空,密码正确",
"fullName" : "test_case.test_user_jack.test_bpm.TestBpm#test_bpm",
"historyId" : "9721a3a86a57b5f8f77d34691878bbdc",
"time" : {
"start" : 1735445612651,
"stop" : 1735445612672,
"duration" : 21
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612530,
"stop" : 1735445612610,
"duration" : 80
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "a2a4f9197117c016",
"name" : "log",
"source" : "a2a4f9197117c016.txt",
"type" : "text/plain",
"size" : 504
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613861,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "认证接口"
}, {
"name" : "story",
"value" : "登录系统"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-jack"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_jack"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_jack.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'登录系统'"
}, {
"name" : "case",
"value" : "{'username': '', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}"
}, {
"name" : "expect",
"value" : "{'message': '账户错误或该租户未启用'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'application/json'"
}, {
"name" : "module",
"value" : "'认证接口'"
}, {
"name" : "req",
"value" : "'POST'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'反向用例-用户名为空,密码正确'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/auth'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "c5814d8a05590bc6.json",
"parameterValues" : [ "'登录系统'", "{'username': '', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名为空,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}
\ No newline at end of file
{
"uid" : "d75307e523b247b4",
"name" : "正向用例",
"fullName" : "test_case.test_user_farke.test_bpm.TestBpm#test_bpm",
"historyId" : "6cdc007ee85e152c40dea6af2e07e202",
"time" : {
"start" : 1735445612418,
"stop" : 1735445612447,
"duration" : 29
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612267,
"stop" : 1735445612355,
"duration" : 88
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "e6caf5e1c14019ca",
"name" : "log",
"source" : "e6caf5e1c14019ca.txt",
"type" : "text/plain",
"size" : 505
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613862,
"duration" : 1
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "维度管理"
}, {
"name" : "story",
"value" : "更新维度"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-farke"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_farke"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_farke.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'更新维度'"
}, {
"name" : "case",
"value" : "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度-更新'}"
}, {
"name" : "expect",
"value" : "{'message': '更新维度成功!'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'json'"
}, {
"name" : "module",
"value" : "'维度管理'"
}, {
"name" : "req",
"value" : "'put'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'正向用例'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/api/demension/v1/dem/updateDem'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "d75307e523b247b4.json",
"parameterValues" : [ "'更新维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度-更新'}", "{'message': '更新维度成功!'}", "'中'", "'json'", "'维度管理'", "'put'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/updateDem'" ]
}
\ No newline at end of file
{
"uid" : "df909ecea6f7b6dd",
"name" : "正向用例",
"fullName" : "test_case.test_user_shy.test_bpm.TestBpm#test_bpm",
"historyId" : "004003df845b679380c00f2ed705fe23",
"time" : {
"start" : 1735445613794,
"stop" : 1735445613855,
"duration" : 61
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "req_fix",
"time" : {
"start" : 1735445613383,
"stop" : 1735445613493,
"duration" : 110
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "42c11d9d4422a2bb",
"name" : "log",
"source" : "42c11d9d4422a2bb.txt",
"type" : "text/plain",
"size" : 2145
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613860,
"stop" : 1735445613860,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "维度管理"
}, {
"name" : "story",
"value" : "根据维度编码删除维度"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-shy"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_shy"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_shy.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'根据维度编码删除维度'"
}, {
"name" : "case",
"value" : "{'ids': '需要更新'}"
}, {
"name" : "expect",
"value" : "{'message': '删除维度成功!'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'query'"
}, {
"name" : "module",
"value" : "'维度管理'"
}, {
"name" : "req",
"value" : "'delete'"
}, {
"name" : "sql",
"value" : "'select ID_ from uc_demension where CODE_=\"test_dem\";'"
}, {
"name" : "sql_type",
"value" : "'select'"
}, {
"name" : "title",
"value" : "'正向用例'"
}, {
"name" : "update",
"value" : "'ids'"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "df909ecea6f7b6dd.json",
"parameterValues" : [ "'根据维度编码删除维度'", "{'ids': '需要更新'}", "{'message': '删除维度成功!'}", "'中'", "'query'", "'维度管理'", "'delete'", "'select ID_ from uc_demension where CODE_=\"test_dem\";'", "'select'", "'正向用例'", "'ids'", "'http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds'" ]
}
\ No newline at end of file
{
"uid" : "ecabcd5b46f75bce",
"name" : "正向用例",
"fullName" : "test_case.test_user_farke.test_bpm.TestBpm#test_bpm",
"historyId" : "baf1911dd5183d0c379dc7d232b2835c",
"time" : {
"start" : 1735445612356,
"stop" : 1735445612408,
"duration" : 52
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "req_fix",
"time" : {
"start" : 1735445612267,
"stop" : 1735445612355,
"duration" : 88
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "f979726d0ba02112",
"name" : "log",
"source" : "f979726d0ba02112.txt",
"type" : "text/plain",
"size" : 3542
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613861,
"stop" : 1735445613862,
"duration" : 1
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "维度管理"
}, {
"name" : "story",
"value" : "添加维度"
}, {
"name" : "severity",
"value" : "高"
}, {
"name" : "epic",
"value" : "BPM-farke"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_farke"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_farke.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'添加维度'"
}, {
"name" : "case",
"value" : "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度'}"
}, {
"name" : "expect",
"value" : "{'message': '添加维度成功!'}"
}, {
"name" : "level",
"value" : "'高'"
}, {
"name" : "mime",
"value" : "'json'"
}, {
"name" : "module",
"value" : "'维度管理'"
}, {
"name" : "req",
"value" : "'post'"
}, {
"name" : "sql",
"value" : "'delete from uc_demension where CODE_=\"test_dem\";'"
}, {
"name" : "sql_type",
"value" : "'delete'"
}, {
"name" : "title",
"value" : "'正向用例'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/api/demension/v1/dem/addDem'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "ecabcd5b46f75bce.json",
"parameterValues" : [ "'添加维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度'}", "{'message': '添加维度成功!'}", "'高'", "'json'", "'维度管理'", "'post'", "'delete from uc_demension where CODE_=\"test_dem\";'", "'delete'", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/addDem'" ]
}
\ No newline at end of file
{
"uid" : "f8c43a4aa85bbf85",
"name" : "正向用例",
"fullName" : "test_case.test_user_shy.test_bpm.TestBpm#test_bpm",
"historyId" : "b4c0011a74bd423901705e18c31707ea",
"time" : {
"start" : 1735445613690,
"stop" : 1735445613731,
"duration" : 41
},
"status" : "passed",
"flaky" : false,
"newFailed" : false,
"beforeStages" : [ {
"name" : "req_fix",
"time" : {
"start" : 1735445613383,
"stop" : 1735445613493,
"duration" : 110
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
}, {
"name" : "_session_faker",
"time" : {
"start" : 1735445612129,
"stop" : 1735445612176,
"duration" : 47
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"testStage" : {
"status" : "passed",
"steps" : [ ],
"attachments" : [ {
"uid" : "2f8e2a592c05ed16",
"name" : "log",
"source" : "2f8e2a592c05ed16.txt",
"type" : "text/plain",
"size" : 503
} ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 1,
"hasContent" : true,
"stepsCount" : 0
},
"afterStages" : [ {
"name" : "req_fix::0",
"time" : {
"start" : 1735445613860,
"stop" : 1735445613860,
"duration" : 0
},
"status" : "passed",
"steps" : [ ],
"attachments" : [ ],
"parameters" : [ ],
"shouldDisplayMessage" : false,
"attachmentsCount" : 0,
"hasContent" : false,
"stepsCount" : 0
} ],
"labels" : [ {
"name" : "feature",
"value" : "组织管理"
}, {
"name" : "story",
"value" : "保存组织参数"
}, {
"name" : "severity",
"value" : "中"
}, {
"name" : "epic",
"value" : "BPM-shy"
}, {
"name" : "parentSuite",
"value" : "test_case.test_user_shy"
}, {
"name" : "suite",
"value" : "test_bpm"
}, {
"name" : "subSuite",
"value" : "TestBpm"
}, {
"name" : "host",
"value" : "syf"
}, {
"name" : "thread",
"value" : "6680-MainThread"
}, {
"name" : "framework",
"value" : "pytest"
}, {
"name" : "language",
"value" : "cpython3"
}, {
"name" : "package",
"value" : "test_case.test_user_shy.test_bpm"
}, {
"name" : "resultFormat",
"value" : "allure2"
} ],
"parameters" : [ {
"name" : "api",
"value" : "'保存组织参数'"
}, {
"name" : "case",
"value" : "{'query': {'orgCode': 'test_org_code'}, 'json': [{'alias': 'sz', 'value': 100000}]}"
}, {
"name" : "expect",
"value" : "{'message': '保存组织参数成功!'}"
}, {
"name" : "level",
"value" : "'中'"
}, {
"name" : "mime",
"value" : "'query|json'"
}, {
"name" : "module",
"value" : "'组织管理'"
}, {
"name" : "req",
"value" : "'post'"
}, {
"name" : "sql",
"value" : "None"
}, {
"name" : "sql_type",
"value" : "None"
}, {
"name" : "title",
"value" : "'正向用例'"
}, {
"name" : "update",
"value" : "None"
}, {
"name" : "url",
"value" : "'http://36.139.193.99:8088/api/org/v1/orgParam/saveOrgParams'"
} ],
"links" : [ ],
"hidden" : false,
"retry" : false,
"extra" : {
"severity" : "normal",
"retries" : [ ],
"categories" : [ ],
"tags" : [ ]
},
"source" : "f8c43a4aa85bbf85.json",
"parameterValues" : [ "'保存组织参数'", "{'query': {'orgCode': 'test_org_code'}, 'json': [{'alias': 'sz', 'value': 100000}]}", "{'message': '保存组织参数成功!'}", "'中'", "'query|json'", "'组织管理'", "'post'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/org/v1/orgParam/saveOrgParams'" ]
}
\ No newline at end of file
{
"uid" : "ab17fc5a4eb3bca4b216b548c7f9fcbc",
"name" : "timeline",
"children" : [ {
"name" : "syf",
"children" : [ {
"name" : "6680-MainThread",
"children" : [ {
"name" : "登陆系统的标题",
"uid" : "6182889ac34359c8",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445612177,
"stop" : 1735445612226,
"duration" : 49
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'username': '超级管理员', 'account': 'admin', 'userId': '1', 'expiration': 86400}", "'正向用例'" ]
}, {
"name" : "反向用例-用户名正确,密码为特殊字符",
"uid" : "90ac19af8aa66702",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445613311,
"stop" : 1735445613333,
"duration" : 22
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': '▣▤▥▦▩◘◙'}", "{'message': '账号或密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为特殊字符'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名为空,密码正确",
"uid" : "c5814d8a05590bc6",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445612651,
"stop" : 1735445612672,
"duration" : 21
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': '', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名为空,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "正向用例",
"uid" : "8a1ab60af2891f57",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445613742,
"stop" : 1735445613784,
"duration" : 42
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'删除组织'", "'test_org_code'", "{'message': '删除组织成功!'}", "'中'", "'form'", "'组织管理'", "'post'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/org/v1/org/deleteOrg'" ]
}, {
"name" : "反向用例-用户名正确,密码过长",
"uid" : "49047d75c6739794",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445613261,
"stop" : 1735445613302,
"duration" : 41
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I=WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': None}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码过长'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "正向用例",
"uid" : "4c1a66ac96836302",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445613646,
"stop" : 1735445613677,
"duration" : 31
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'组织加入用户'", "{'orgCode': 'test_org_code', 'accounts': 'admin'}", "{'message': '加入成功'}", "'中'", "'query'", "'组织管理'", "'post'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/org/v1/orgUsers/addUsersForOrg'" ]
}, {
"name" : "正向用例",
"uid" : "a1e59d44d15649e8",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445613550,
"stop" : 1735445613577,
"duration" : 27
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'更新维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度-更新'}", "{'message': '更新维度成功!'}", "'中'", "'json'", "'维度管理'", "'put'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/updateDem'" ]
}, {
"name" : "正向用例",
"uid" : "ecabcd5b46f75bce",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445612356,
"stop" : 1735445612408,
"duration" : 52
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'添加维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度'}", "{'message': '添加维度成功!'}", "'高'", "'json'", "'维度管理'", "'post'", "'delete from uc_demension where CODE_=\"test_dem\";'", "'delete'", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/addDem'" ]
}, {
"name" : "正向用例",
"uid" : "a81dd6be6f27488c",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445613584,
"stop" : 1735445613638,
"duration" : 54
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'添加组织'", "{'code': 'test_org_code', 'demId': '需要更新', 'exceedLimitNum': 0, 'grade': '', 'limitNum': 0, 'name': '测试组织', 'nowNum': 0, 'orderNo': 0, 'parentId': '0'}", "{'message': '添加组织成功!'}", "'高'", "'json'", "'组织管理'", "'post'", "{'select': 'select ID_ from uc_demension where CODE_=\"test_dem\";', 'delete': 'delete from uc_org where CODE_=\"test_org_code\";'}", "'delete|select'", "'正向用例'", "'demId'", "'http://36.139.193.99:8088/api/org/v1/org/addOrg'" ]
}, {
"name" : "反向用例-用户名过长,密码正确",
"uid" : "a80f5c73e98d0741",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445612722,
"stop" : 1735445612761,
"duration" : 39
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'adminadminadminadminadminadminadmin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名过长,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码为空",
"uid" : "bac8f5f7f02a4d36",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "broken",
"time" : {
"start" : 1735445612860,
"stop" : 1735445612896,
"duration" : 36
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': ''}", "{'message': '账号密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为空'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "添加维度的标题",
"uid" : "a95e441d55cfd27e",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "skipped",
"time" : {
"start" : 1735445612263,
"stop" : 1735445612263,
"duration" : 0
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ ]
}, {
"name" : "正向用例-用户名和密码正确",
"uid" : "1d2ea9fe00ca05e4",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445612611,
"stop" : 1735445612644,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'username': '超级管理员', 'account': 'admin', 'userId': '1', 'expiration': 86400}", "'高'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'正向用例-用户名和密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "正向用例",
"uid" : "1e6d26bc76b77d97",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445612460,
"stop" : 1735445612518,
"duration" : 58
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'根据维度编码删除维度'", "{'ids': '需要更新'}", "{'message': '删除维度成功!'}", "'中'", "'query'", "'维度管理'", "'delete'", "'select ID_ from uc_demension where CODE_=\"test_dem\";'", "'select'", "'正向用例'", "'ids'", "'http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds'" ]
}, {
"name" : "登陆系统的标题",
"uid" : "bfa27ce577b1727",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445612232,
"stop" : 1735445612258,
"duration" : 26
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "{'username': 'admin', 'password': ''}", "{'message': '账号或密码错误'}", "'反向用例'" ]
}, {
"name" : "正向用例",
"uid" : "d75307e523b247b4",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445612418,
"stop" : 1735445612447,
"duration" : 29
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'更新维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度-更新'}", "{'message': '更新维度成功!'}", "'中'", "'json'", "'维度管理'", "'put'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/updateDem'" ]
}, {
"name" : "正向用例",
"uid" : "df909ecea6f7b6dd",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445613794,
"stop" : 1735445613855,
"duration" : 61
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'根据维度编码删除维度'", "{'ids': '需要更新'}", "{'message': '删除维度成功!'}", "'中'", "'query'", "'维度管理'", "'delete'", "'select ID_ from uc_demension where CODE_=\"test_dem\";'", "'select'", "'正向用例'", "'ids'", "'http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds'" ]
}, {
"name" : "反向用例-用户名过短,密码正确",
"uid" : "2c3b9632c0c3c6f4",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445612680,
"stop" : 1735445612712,
"duration" : 32
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'a', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名过短,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码为空",
"uid" : "7d28900ad6ba0f5d",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "broken",
"time" : {
"start" : 1735445612964,
"stop" : 1735445613000,
"duration" : 36
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': ''}", "{'message': '账号密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为空'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码过短",
"uid" : "7f0216857be8531c",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445613214,
"stop" : 1735445613247,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': '1'}", "{'message': '账号或密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码过短'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码为空",
"uid" : "3fc7cc8b46f0ef85",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "broken",
"time" : {
"start" : 1735445613015,
"stop" : 1735445613050,
"duration" : 35
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': ''}", "{'message': '账号密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为空'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名为特殊字符,密码正确",
"uid" : "26607d0fc400b834",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445612773,
"stop" : 1735445612807,
"duration" : 34
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': '▣▤▥▦▩◘◙', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名为特殊字符,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名错误,密码正确",
"uid" : "93cad0eaff510b40",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445612817,
"stop" : 1735445612852,
"duration" : 35
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'Admin123', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}", "{'message': '账户错误或该租户未启用'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名错误,密码正确'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "正向用例",
"uid" : "b48aa381796879c7",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445613342,
"stop" : 1735445613375,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'刷新token'", "None", "{'message': None}", "'中'", "None", "'认证接口'", "'get'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/refresh'" ]
}, {
"name" : "正向用例",
"uid" : "4c1bebef17d4e513",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445613494,
"stop" : 1735445613544,
"duration" : 50
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'添加维度'", "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度'}", "{'message': '添加维度成功!'}", "'高'", "'json'", "'维度管理'", "'post'", "'delete from uc_demension where CODE_=\"test_dem\";'", "'delete'", "'正向用例'", "None", "'http://36.139.193.99:8088/api/demension/v1/dem/addDem'" ]
}, {
"name" : "反向用例-用户名正确,密码为空",
"uid" : "ab9330f38517cdc7",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "broken",
"time" : {
"start" : 1735445613112,
"stop" : 1735445613145,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': ''}", "{'message': '账号密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为空'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "反向用例-用户名正确,密码为空",
"uid" : "6f757f9c0a9fd601",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "broken",
"time" : {
"start" : 1735445613064,
"stop" : 1735445613099,
"duration" : 35
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': ''}", "{'message': '账号密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为空'", "None", "'http://36.139.193.99:8088/auth'" ]
}, {
"name" : "正向用例",
"uid" : "f8c43a4aa85bbf85",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "passed",
"time" : {
"start" : 1735445613690,
"stop" : 1735445613731,
"duration" : 41
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'保存组织参数'", "{'query': {'orgCode': 'test_org_code'}, 'json': [{'alias': 'sz', 'value': 100000}]}", "{'message': '保存组织参数成功!'}", "'中'", "'query|json'", "'组织管理'", "'post'", "None", "None", "'正向用例'", "None", "'http://36.139.193.99:8088/api/org/v1/orgParam/saveOrgParams'" ]
}, {
"name" : "反向用例-用户名正确,密码为空",
"uid" : "15e9970491f0a09f",
"parentUid" : "f366bf3cfc28c0fb8c90d90ef4ace367",
"status" : "broken",
"time" : {
"start" : 1735445613159,
"stop" : 1735445613192,
"duration" : 33
},
"flaky" : false,
"newFailed" : false,
"parameters" : [ "'登录系统'", "{'username': 'admin', 'password': ''}", "{'message': '账号密码错误'}", "'中'", "'application/json'", "'认证接口'", "'POST'", "None", "None", "'反向用例-用户名正确,密码为空'", "None", "'http://36.139.193.99:8088/auth'" ]
} ],
"uid" : "f366bf3cfc28c0fb8c90d90ef4ace367"
} ],
"uid" : "ee348a878b61d057000170ef860fd40e"
} ]
}
\ No newline at end of file
launch_status failed=0 1735445733000000000
launch_status broken=1 1735445733000000000
launch_status passed=22 1735445733000000000
launch_status skipped=1 1735445733000000000
launch_status unknown=0 1735445733000000000
launch_time duration=1678 1735445733000000000
launch_time min_duration=0 1735445733000000000
launch_time max_duration=61 1735445733000000000
launch_time sum_duration=876 1735445733000000000
launch_problems test_defects=1 1735445733000000000
launch_retries retries=5 1735445733000000000
launch_retries run=24 1735445733000000000
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Allure Report summary mail</title>
</head>
<body>
Mail body
</body>
</html>
launch_status_failed 0
launch_status_broken 1
launch_status_passed 22
launch_status_skipped 1
launch_status_unknown 0
launch_time_duration 1678
launch_time_min_duration 0
launch_time_max_duration 61
launch_time_sum_duration 876
launch_problems_test_defects 1
launch_retries_retries 5
launch_retries_run 24
module.exports = __webpack_public_path__ + "favicon.ico";
\ No newline at end of file
[ {
"data" : {
"Test defects" : 1
}
} ]
\ No newline at end of file
[ {
"data" : {
"duration" : 1678
}
} ]
\ No newline at end of file
[ {
"data" : {
"failed" : 0,
"broken" : 1,
"skipped" : 1,
"passed" : 22,
"unknown" : 0,
"total" : 24
}
} ]
\ No newline at end of file
{
"004003df845b679380c00f2ed705fe23" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "df909ecea6f7b6dd",
"status" : "passed",
"time" : {
"start" : 1735445613794,
"stop" : 1735445613855,
"duration" : 61
}
} ]
},
"f42bdf750b6af50c31f0619646ef26c2" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "8a1ab60af2891f57",
"status" : "passed",
"time" : {
"start" : 1735445613742,
"stop" : 1735445613784,
"duration" : 42
}
} ]
},
"baf1911dd5183d0c379dc7d232b2835c" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "ecabcd5b46f75bce",
"status" : "passed",
"time" : {
"start" : 1735445612356,
"stop" : 1735445612408,
"duration" : 52
}
} ]
},
"008bb596be3cc0672bed7d964ad859fe" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "b48aa381796879c7",
"status" : "passed",
"time" : {
"start" : 1735445613342,
"stop" : 1735445613375,
"duration" : 33
}
} ]
},
"835bac4a67f4e5d25a5eb7b7d59cc4f6" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "4c1bebef17d4e513",
"status" : "passed",
"time" : {
"start" : 1735445613494,
"stop" : 1735445613544,
"duration" : 50
}
} ]
},
"2aea37f80bd8073c6351569828ae3c90" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "7f0216857be8531c",
"status" : "passed",
"time" : {
"start" : 1735445613214,
"stop" : 1735445613247,
"duration" : 33
}
} ]
},
"3a19a7c1988bebb35bd7d53f782c4cf7" : {
"statistic" : {
"failed" : 0,
"broken" : 1,
"skipped" : 0,
"passed" : 0,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "15e9970491f0a09f",
"status" : "broken",
"statusDetails" : "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?",
"time" : {
"start" : 1735445613159,
"stop" : 1735445613192,
"duration" : 33
}
} ]
},
"5b77bd45f8b3a2b7bb68277ddd6b8faa" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "2c3b9632c0c3c6f4",
"status" : "passed",
"time" : {
"start" : 1735445612680,
"stop" : 1735445612712,
"duration" : 32
}
} ]
},
"059eaf6d6b5b02f506b3edbce892f866" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "1d2ea9fe00ca05e4",
"status" : "passed",
"time" : {
"start" : 1735445612611,
"stop" : 1735445612644,
"duration" : 33
}
} ]
},
"de9169adb3047aea29cb4975de8561c7" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "4c1a66ac96836302",
"status" : "passed",
"time" : {
"start" : 1735445613646,
"stop" : 1735445613677,
"duration" : 31
}
} ]
},
"a64f3b1f5715e2f492a002ea2f21ac65" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "90ac19af8aa66702",
"status" : "passed",
"time" : {
"start" : 1735445613311,
"stop" : 1735445613333,
"duration" : 22
}
} ]
},
"a66a24115f84b24b2f8d4ec34e7ef590" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "93cad0eaff510b40",
"status" : "passed",
"time" : {
"start" : 1735445612817,
"stop" : 1735445612852,
"duration" : 35
}
} ]
},
"a69903ef4d247999e0c971681208aa80" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "a81dd6be6f27488c",
"status" : "passed",
"time" : {
"start" : 1735445613584,
"stop" : 1735445613638,
"duration" : 54
}
} ]
},
"47dfc6262edb93463bd12d53e31c5d4e" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 1,
"passed" : 0,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "a95e441d55cfd27e",
"status" : "skipped",
"statusDetails" : "Skipped: test_add_dem depends on test_bpm/test_auth.py::TestAuth::test_login[\\u6b63\\u5411\\u7528\\u4f8b-case_data0-expect_data0]",
"time" : {
"start" : 1735445612263,
"stop" : 1735445612263,
"duration" : 0
}
} ]
},
"5e07a2f2ebab76d23f195c11c8f0fb66" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "26607d0fc400b834",
"status" : "passed",
"time" : {
"start" : 1735445612773,
"stop" : 1735445612807,
"duration" : 34
}
} ]
},
"71d61dc3baca8c0d0c9cbcb57f3bf9b5" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "bfa27ce577b1727",
"status" : "passed",
"time" : {
"start" : 1735445612232,
"stop" : 1735445612258,
"duration" : 26
}
} ]
},
"9721a3a86a57b5f8f77d34691878bbdc" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "c5814d8a05590bc6",
"status" : "passed",
"time" : {
"start" : 1735445612651,
"stop" : 1735445612672,
"duration" : 21
}
} ]
},
"344354ac13d2cf6e490002f0f54c0ace" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "a80f5c73e98d0741",
"status" : "passed",
"time" : {
"start" : 1735445612722,
"stop" : 1735445612761,
"duration" : 39
}
} ]
},
"f1ae6dd610bf49307c204bc6499be403" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "49047d75c6739794",
"status" : "passed",
"time" : {
"start" : 1735445613261,
"stop" : 1735445613302,
"duration" : 41
}
} ]
},
"5e96723d0cec8ad6e36dfbdd0c60ab19" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "1e6d26bc76b77d97",
"status" : "passed",
"time" : {
"start" : 1735445612460,
"stop" : 1735445612518,
"duration" : 58
}
} ]
},
"6cdc007ee85e152c40dea6af2e07e202" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "d75307e523b247b4",
"status" : "passed",
"time" : {
"start" : 1735445612418,
"stop" : 1735445612447,
"duration" : 29
}
} ]
},
"b4c0011a74bd423901705e18c31707ea" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "f8c43a4aa85bbf85",
"status" : "passed",
"time" : {
"start" : 1735445613690,
"stop" : 1735445613731,
"duration" : 41
}
} ]
},
"4048ba52b7bcd499ff8b6aa43370076d" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "6182889ac34359c8",
"status" : "passed",
"time" : {
"start" : 1735445612177,
"stop" : 1735445612226,
"duration" : 49
}
} ]
},
"9fcc5b45a482f74501a9f7c005752d90" : {
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
},
"items" : [ {
"uid" : "a1e59d44d15649e8",
"status" : "passed",
"time" : {
"start" : 1735445613550,
"stop" : 1735445613577,
"duration" : 27
}
} ]
}
}
\ No newline at end of file
[ {
"data" : {
"run" : 24,
"retry" : 5
}
} ]
\ No newline at end of file
<!DOCTYPE html>
<html dir="ltr">
<head>
<meta charset="utf-8">
<title>Allure Report</title>
<link rel="favicon" href="favicon.ico?v=2">
<link rel="stylesheet" href="styles.css">
<link rel="stylesheet" href="plugins/screen-diff/styles.css">
</head>
<body>
<div id="alert"></div>
<div id="content">
<span class="spinner">
<span class="spinner__circle"></span>
</span>
</div>
<div id="popup"></div>
<script src="app.js"></script>
<script src="plugins/behaviors/index.js"></script>
<script src="plugins/packages/index.js"></script>
<script src="plugins/screen-diff/index.js"></script>
</body>
</html>
'use strict';
allure.api.addTranslation('en', {
tab: {
behaviors: {
name: 'Behaviors'
}
},
widget: {
behaviors: {
name: 'Features by stories',
showAll: 'show all'
}
}
});
allure.api.addTranslation('ru', {
tab: {
behaviors: {
name: 'Функциональность'
}
},
widget: {
behaviors: {
name: 'Функциональность',
showAll: 'показать все'
}
}
});
allure.api.addTranslation('zh', {
tab: {
behaviors: {
name: '功能'
}
},
widget: {
behaviors: {
name: '特性场景',
showAll: '显示所有'
}
}
});
allure.api.addTranslation('de', {
tab: {
behaviors: {
name: 'Verhalten'
}
},
widget: {
behaviors: {
name: 'Features nach Stories',
showAll: 'Zeige alle'
}
}
});
allure.api.addTranslation('nl', {
tab: {
behaviors: {
name: 'Functionaliteit'
}
},
widget: {
behaviors: {
name: 'Features en story’s',
showAll: 'Toon alle'
}
}
});
allure.api.addTranslation('he', {
tab: {
behaviors: {
name: 'התנהגויות'
}
},
widget: {
behaviors: {
name: 'תכונות לפי סיפורי משתמש',
showAll: 'הצג הכול'
}
}
});
allure.api.addTranslation('br', {
tab: {
behaviors: {
name: 'Comportamentos'
}
},
widget: {
behaviors: {
name: 'Funcionalidades por história',
showAll: 'Mostrar tudo'
}
}
});
allure.api.addTranslation('ja', {
tab: {
behaviors: {
name: '振る舞い'
}
},
widget: {
behaviors: {
name: 'ストーリー別の機能',
showAll: '全て表示'
}
}
});
allure.api.addTranslation('es', {
tab: {
behaviors: {
name: 'Funcionalidades'
}
},
widget: {
behaviors: {
name: 'Funcionalidades por Historias de Usuario',
showAll: 'mostrar todo'
}
}
});
allure.api.addTranslation('kr', {
tab: {
behaviors: {
name: '동작'
}
},
widget: {
behaviors: {
name: '스토리별 기능',
showAll: '전체 보기'
}
}
});
allure.api.addTranslation('fr', {
tab: {
behaviors: {
name: 'Comportements'
}
},
widget: {
behaviors: {
name: 'Thèmes par histoires',
showAll: 'Montrer tout'
}
}
});
allure.api.addTab('behaviors', {
title: 'tab.behaviors.name', icon: 'fa fa-list',
route: 'behaviors(/)(:testGroup)(/)(:testResult)(/)(:testResultTab)(/)',
onEnter: (function (testGroup, testResult, testResultTab) {
return new allure.components.TreeLayout({
testGroup: testGroup,
testResult: testResult,
testResultTab: testResultTab,
tabName: 'tab.behaviors.name',
baseUrl: 'behaviors',
url: 'data/behaviors.json',
csvUrl: 'data/behaviors.csv'
});
})
});
allure.api.addWidget('widgets', 'behaviors', allure.components.WidgetStatusView.extend({
rowTag: 'a',
title: 'widget.behaviors.name',
baseUrl: 'behaviors',
showLinks: true
}));
'use strict';
allure.api.addTranslation('en', {
tab: {
packages: {
name: 'Packages'
}
}
});
allure.api.addTranslation('ru', {
tab: {
packages: {
name: 'Пакеты'
}
}
});
allure.api.addTranslation('zh', {
tab: {
packages: {
name: '包'
}
}
});
allure.api.addTranslation('de', {
tab: {
packages: {
name: 'Pakete'
}
}
});
allure.api.addTranslation('nl', {
tab: {
packages: {
name: 'Packages'
}
}
});
allure.api.addTranslation('he', {
tab: {
packages: {
name: 'חבילות'
}
}
});
allure.api.addTranslation('br', {
tab: {
packages: {
name: 'Pacotes'
}
}
});
allure.api.addTranslation('ja', {
tab: {
packages: {
name: 'パッケージ'
}
}
});
allure.api.addTranslation('es', {
tab: {
packages: {
name: 'Paquetes'
}
}
});
allure.api.addTranslation('kr', {
tab: {
packages: {
name: '패키지'
}
}
});
allure.api.addTranslation('fr', {
tab: {
packages: {
name: 'Paquets'
}
}
});
allure.api.addTab('packages', {
title: 'tab.packages.name', icon: 'fa fa-align-left',
route: 'packages(/)(:testGroup)(/)(:testResult)(/)(:testResultTab)(/)',
onEnter: (function (testGroup, testResult, testResultTab) {
return new allure.components.TreeLayout({
testGroup: testGroup,
testResult: testResult,
testResultTab: testResultTab,
tabName: 'tab.packages.name',
baseUrl: 'packages',
url: 'data/packages.json'
});
})
});
(function () {
var settings = allure.getPluginSettings('screen-diff', { diffType: 'diff' });
function renderImage(src) {
return (
'<div class="screen-diff__container">' +
'<img class="screen-diff__image" src="' +
src +
'">' +
'</div>'
);
}
function findImage(data, name) {
if (data.testStage && data.testStage.attachments) {
var matchedImage = data.testStage.attachments.filter(function (attachment) {
return attachment.name === name;
})[0];
if (matchedImage) {
return 'data/attachments/' + matchedImage.source;
}
}
return null;
}
function renderDiffContent(type, diffImage, actualImage, expectedImage) {
if (type === 'diff') {
if (diffImage) {
return renderImage(diffImage);
}
}
if (type === 'overlay' && expectedImage) {
return (
'<div class="screen-diff__overlay screen-diff__container">' +
'<img class="screen-diff__image" src="' +
expectedImage +
'">' +
'<div class="screen-diff__image-over">' +
'<img class="screen-diff__image" src="' +
actualImage +
'">' +
'</div>' +
'</div>'
);
}
if (actualImage) {
return renderImage(actualImage);
}
return 'No diff data provided';
}
var TestResultView = Backbone.Marionette.View.extend({
regions: {
subView: '.screen-diff-view',
},
template: function () {
return '<div class="screen-diff-view"></div>';
},
onRender: function () {
var data = this.model.toJSON();
var testType = data.labels.filter(function (label) {
return label.name === 'testType';
})[0];
var diffImage = findImage(data, 'diff');
var actualImage = findImage(data, 'actual');
var expectedImage = findImage(data, 'expected');
if (!testType || testType.value !== 'screenshotDiff') {
return;
}
this.showChildView(
'subView',
new ScreenDiffView({
diffImage: diffImage,
actualImage: actualImage,
expectedImage: expectedImage,
}),
);
},
});
var ErrorView = Backbone.Marionette.View.extend({
templateContext: function () {
return this.options;
},
template: function (data) {
return '<pre class="screen-diff-error">' + data.error + '</pre>';
},
});
var AttachmentView = Backbone.Marionette.View.extend({
regions: {
subView: '.screen-diff-view',
},
template: function () {
return '<div class="screen-diff-view"></div>';
},
onRender: function () {
jQuery
.getJSON(this.options.sourceUrl)
.then(this.renderScreenDiffView.bind(this), this.renderErrorView.bind(this));
},
renderErrorView: function (error) {
console.log(error);
this.showChildView(
'subView',
new ErrorView({
error: error.statusText,
}),
);
},
renderScreenDiffView: function (data) {
this.showChildView(
'subView',
new ScreenDiffView({
diffImage: data.diff,
actualImage: data.actual,
expectedImage: data.expected,
}),
);
},
});
var ScreenDiffView = Backbone.Marionette.View.extend({
className: 'pane__section',
events: function () {
return {
['click [name="screen-diff-type-' + this.cid + '"]']: 'onDiffTypeChange',
'mousemove .screen-diff__overlay': 'onOverlayMove',
};
},
initialize: function (options) {
this.diffImage = options.diffImage;
this.actualImage = options.actualImage;
this.expectedImage = options.expectedImage;
this.radioName = 'screen-diff-type-' + this.cid;
},
templateContext: function () {
return {
diffType: settings.get('diffType'),
diffImage: this.diffImage,
actualImage: this.actualImage,
expectedImage: this.expectedImage,
radioName: this.radioName,
};
},
template: function (data) {
if (!data.diffImage && !data.actualImage && !data.expectedImage) {
return '';
}
return (
'<h3 class="pane__section-title">Screen Diff</h3>' +
'<div class="screen-diff__content">' +
'<div class="screen-diff__switchers">' +
'<label><input type="radio" name="' +
data.radioName +
'" value="diff"> Show diff</label>' +
'<label><input type="radio" name="' +
data.radioName +
'" value="overlay"> Show overlay</label>' +
'</div>' +
renderDiffContent(
data.diffType,
data.diffImage,
data.actualImage,
data.expectedImage,
) +
'</div>'
);
},
adjustImageSize: function (event) {
var overImage = this.$(event.target);
overImage.width(overImage.width());
},
onRender: function () {
const diffType = settings.get('diffType');
this.$('[name="' + this.radioName + '"][value="' + diffType + '"]').prop(
'checked',
true,
);
if (diffType === 'overlay') {
this.$('.screen-diff__image-over img').on('load', this.adjustImageSize.bind(this));
}
},
onOverlayMove: function (event) {
var pageX = event.pageX;
var containerScroll = this.$('.screen-diff__container').scrollLeft();
var elementX = event.currentTarget.getBoundingClientRect().left;
var delta = pageX - elementX + containerScroll;
this.$('.screen-diff__image-over').width(delta);
},
onDiffTypeChange: function (event) {
settings.save('diffType', event.target.value);
this.render();
},
});
allure.api.addTestResultBlock(TestResultView, { position: 'before' });
allure.api.addAttachmentViewer('application/vnd.allure.image.diff', {
View: AttachmentView,
icon: 'fa fa-exchange',
});
})();
.screen-diff__switchers {
margin-bottom: 1em;
}
.screen-diff__switchers label + label {
margin-left: 1em;
}
.screen-diff__overlay {
position: relative;
cursor: col-resize;
}
.screen-diff__container {
overflow-x: auto;
}
.screen-diff__image-over {
top: 0;
left: 0;
bottom: 0;
background: #fff;
position: absolute;
overflow: hidden;
box-shadow: 2px 0 1px -1px #aaa;
}
.screen-diff-error {
color: #fd5a3e;
}
This source diff could not be displayed because it is too large. You can view the blob instead.
{
"total" : 4,
"items" : [ {
"uid" : "5331e086e8b4948acbf88ce55d4bcea1",
"name" : "BPM-jack",
"statistic" : {
"failed" : 0,
"broken" : 1,
"skipped" : 0,
"passed" : 0,
"unknown" : 0,
"total" : 1
}
}, {
"uid" : "ff2012d6ca367e0e819f8e7a6ec1d39d",
"name" : "BPM-shy",
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 2,
"unknown" : 0,
"total" : 2
}
}, {
"uid" : "ac36b08383b29c832f376331a54a2a9b",
"name" : "BPM项目-场景",
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 1,
"passed" : 1,
"unknown" : 0,
"total" : 2
}
}, {
"uid" : "a27f55c1f9a76c45e0fed6e251b2a595",
"name" : "BPM-farke",
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 1,
"unknown" : 0,
"total" : 1
}
} ]
}
\ No newline at end of file
[ {
"data" : {
"Test defects" : 1
}
} ]
\ No newline at end of file
{
"total" : 1,
"items" : [ {
"uid" : "bdbf199525818fae7a8651db9eafe741",
"name" : "Test defects",
"statistic" : {
"failed" : 0,
"broken" : 1,
"skipped" : 0,
"passed" : 0,
"unknown" : 0,
"total" : 1
}
} ]
}
\ No newline at end of file
[ {
"data" : {
"duration" : 1678
}
} ]
\ No newline at end of file
[ {
"uid" : "a1e59d44d15649e8",
"name" : "正向用例",
"time" : {
"start" : 1735445613550,
"stop" : 1735445613577,
"duration" : 27
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "7f0216857be8531c",
"name" : "反向用例-用户名正确,密码过短",
"time" : {
"start" : 1735445613214,
"stop" : 1735445613247,
"duration" : 33
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "26607d0fc400b834",
"name" : "反向用例-用户名为特殊字符,密码正确",
"time" : {
"start" : 1735445612773,
"stop" : 1735445612807,
"duration" : 34
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "1d2ea9fe00ca05e4",
"name" : "正向用例-用户名和密码正确",
"time" : {
"start" : 1735445612611,
"stop" : 1735445612644,
"duration" : 33
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "f8c43a4aa85bbf85",
"name" : "正向用例",
"time" : {
"start" : 1735445613690,
"stop" : 1735445613731,
"duration" : 41
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "90ac19af8aa66702",
"name" : "反向用例-用户名正确,密码为特殊字符",
"time" : {
"start" : 1735445613311,
"stop" : 1735445613333,
"duration" : 22
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "a95e441d55cfd27e",
"name" : "添加维度的标题",
"time" : {
"start" : 1735445612263,
"stop" : 1735445612263,
"duration" : 0
},
"status" : "skipped",
"severity" : "normal"
}, {
"uid" : "2c3b9632c0c3c6f4",
"name" : "反向用例-用户名过短,密码正确",
"time" : {
"start" : 1735445612680,
"stop" : 1735445612712,
"duration" : 32
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "a80f5c73e98d0741",
"name" : "反向用例-用户名过长,密码正确",
"time" : {
"start" : 1735445612722,
"stop" : 1735445612761,
"duration" : 39
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "bfa27ce577b1727",
"name" : "登陆系统的标题",
"time" : {
"start" : 1735445612232,
"stop" : 1735445612258,
"duration" : 26
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "1e6d26bc76b77d97",
"name" : "正向用例",
"time" : {
"start" : 1735445612460,
"stop" : 1735445612518,
"duration" : 58
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "d75307e523b247b4",
"name" : "正向用例",
"time" : {
"start" : 1735445612418,
"stop" : 1735445612447,
"duration" : 29
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "df909ecea6f7b6dd",
"name" : "正向用例",
"time" : {
"start" : 1735445613794,
"stop" : 1735445613855,
"duration" : 61
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "6182889ac34359c8",
"name" : "登陆系统的标题",
"time" : {
"start" : 1735445612177,
"stop" : 1735445612226,
"duration" : 49
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "c5814d8a05590bc6",
"name" : "反向用例-用户名为空,密码正确",
"time" : {
"start" : 1735445612651,
"stop" : 1735445612672,
"duration" : 21
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "4c1a66ac96836302",
"name" : "正向用例",
"time" : {
"start" : 1735445613646,
"stop" : 1735445613677,
"duration" : 31
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "b48aa381796879c7",
"name" : "正向用例",
"time" : {
"start" : 1735445613342,
"stop" : 1735445613375,
"duration" : 33
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "15e9970491f0a09f",
"name" : "反向用例-用户名正确,密码为空",
"time" : {
"start" : 1735445613159,
"stop" : 1735445613192,
"duration" : 33
},
"status" : "broken",
"severity" : "normal"
}, {
"uid" : "ecabcd5b46f75bce",
"name" : "正向用例",
"time" : {
"start" : 1735445612356,
"stop" : 1735445612408,
"duration" : 52
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "a81dd6be6f27488c",
"name" : "正向用例",
"time" : {
"start" : 1735445613584,
"stop" : 1735445613638,
"duration" : 54
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "93cad0eaff510b40",
"name" : "反向用例-用户名错误,密码正确",
"time" : {
"start" : 1735445612817,
"stop" : 1735445612852,
"duration" : 35
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "8a1ab60af2891f57",
"name" : "正向用例",
"time" : {
"start" : 1735445613742,
"stop" : 1735445613784,
"duration" : 42
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "49047d75c6739794",
"name" : "反向用例-用户名正确,密码过长",
"time" : {
"start" : 1735445613261,
"stop" : 1735445613302,
"duration" : 41
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "4c1bebef17d4e513",
"name" : "正向用例",
"time" : {
"start" : 1735445613494,
"stop" : 1735445613544,
"duration" : 50
},
"status" : "passed",
"severity" : "normal"
} ]
\ No newline at end of file
[ {
"data" : {
"failed" : 0,
"broken" : 1,
"skipped" : 1,
"passed" : 22,
"unknown" : 0,
"total" : 24
}
} ]
\ No newline at end of file
[ {
"data" : {
"run" : 24,
"retry" : 5
}
} ]
\ No newline at end of file
[ {
"uid" : "ecabcd5b46f75bce",
"name" : "正向用例",
"time" : {
"start" : 1735445612356,
"stop" : 1735445612408,
"duration" : 52
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "a95e441d55cfd27e",
"name" : "添加维度的标题",
"time" : {
"start" : 1735445612263,
"stop" : 1735445612263,
"duration" : 0
},
"status" : "skipped",
"severity" : "normal"
}, {
"uid" : "a81dd6be6f27488c",
"name" : "正向用例",
"time" : {
"start" : 1735445613584,
"stop" : 1735445613638,
"duration" : 54
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "df909ecea6f7b6dd",
"name" : "正向用例",
"time" : {
"start" : 1735445613794,
"stop" : 1735445613855,
"duration" : 61
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "1d2ea9fe00ca05e4",
"name" : "正向用例-用户名和密码正确",
"time" : {
"start" : 1735445612611,
"stop" : 1735445612644,
"duration" : 33
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "1e6d26bc76b77d97",
"name" : "正向用例",
"time" : {
"start" : 1735445612460,
"stop" : 1735445612518,
"duration" : 58
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "d75307e523b247b4",
"name" : "正向用例",
"time" : {
"start" : 1735445612418,
"stop" : 1735445612447,
"duration" : 29
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "4c1a66ac96836302",
"name" : "正向用例",
"time" : {
"start" : 1735445613646,
"stop" : 1735445613677,
"duration" : 31
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "a80f5c73e98d0741",
"name" : "反向用例-用户名过长,密码正确",
"time" : {
"start" : 1735445612722,
"stop" : 1735445612761,
"duration" : 39
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "90ac19af8aa66702",
"name" : "反向用例-用户名正确,密码为特殊字符",
"time" : {
"start" : 1735445613311,
"stop" : 1735445613333,
"duration" : 22
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "2c3b9632c0c3c6f4",
"name" : "反向用例-用户名过短,密码正确",
"time" : {
"start" : 1735445612680,
"stop" : 1735445612712,
"duration" : 32
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "a1e59d44d15649e8",
"name" : "正向用例",
"time" : {
"start" : 1735445613550,
"stop" : 1735445613577,
"duration" : 27
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "bfa27ce577b1727",
"name" : "登陆系统的标题",
"time" : {
"start" : 1735445612232,
"stop" : 1735445612258,
"duration" : 26
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "4c1bebef17d4e513",
"name" : "正向用例",
"time" : {
"start" : 1735445613494,
"stop" : 1735445613544,
"duration" : 50
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "c5814d8a05590bc6",
"name" : "反向用例-用户名为空,密码正确",
"time" : {
"start" : 1735445612651,
"stop" : 1735445612672,
"duration" : 21
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "7f0216857be8531c",
"name" : "反向用例-用户名正确,密码过短",
"time" : {
"start" : 1735445613214,
"stop" : 1735445613247,
"duration" : 33
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "26607d0fc400b834",
"name" : "反向用例-用户名为特殊字符,密码正确",
"time" : {
"start" : 1735445612773,
"stop" : 1735445612807,
"duration" : 34
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "6182889ac34359c8",
"name" : "登陆系统的标题",
"time" : {
"start" : 1735445612177,
"stop" : 1735445612226,
"duration" : 49
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "8a1ab60af2891f57",
"name" : "正向用例",
"time" : {
"start" : 1735445613742,
"stop" : 1735445613784,
"duration" : 42
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "49047d75c6739794",
"name" : "反向用例-用户名正确,密码过长",
"time" : {
"start" : 1735445613261,
"stop" : 1735445613302,
"duration" : 41
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "93cad0eaff510b40",
"name" : "反向用例-用户名错误,密码正确",
"time" : {
"start" : 1735445612817,
"stop" : 1735445612852,
"duration" : 35
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "f8c43a4aa85bbf85",
"name" : "正向用例",
"time" : {
"start" : 1735445613690,
"stop" : 1735445613731,
"duration" : 41
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "15e9970491f0a09f",
"name" : "反向用例-用户名正确,密码为空",
"time" : {
"start" : 1735445613159,
"stop" : 1735445613192,
"duration" : 33
},
"status" : "broken",
"severity" : "normal"
}, {
"uid" : "b48aa381796879c7",
"name" : "正向用例",
"time" : {
"start" : 1735445613342,
"stop" : 1735445613375,
"duration" : 33
},
"status" : "passed",
"severity" : "normal"
} ]
\ No newline at end of file
[ {
"uid" : "a1e59d44d15649e8",
"name" : "正向用例",
"time" : {
"start" : 1735445613550,
"stop" : 1735445613577,
"duration" : 27
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "7f0216857be8531c",
"name" : "反向用例-用户名正确,密码过短",
"time" : {
"start" : 1735445613214,
"stop" : 1735445613247,
"duration" : 33
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "26607d0fc400b834",
"name" : "反向用例-用户名为特殊字符,密码正确",
"time" : {
"start" : 1735445612773,
"stop" : 1735445612807,
"duration" : 34
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "1d2ea9fe00ca05e4",
"name" : "正向用例-用户名和密码正确",
"time" : {
"start" : 1735445612611,
"stop" : 1735445612644,
"duration" : 33
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "f8c43a4aa85bbf85",
"name" : "正向用例",
"time" : {
"start" : 1735445613690,
"stop" : 1735445613731,
"duration" : 41
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "90ac19af8aa66702",
"name" : "反向用例-用户名正确,密码为特殊字符",
"time" : {
"start" : 1735445613311,
"stop" : 1735445613333,
"duration" : 22
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "a95e441d55cfd27e",
"name" : "添加维度的标题",
"time" : {
"start" : 1735445612263,
"stop" : 1735445612263,
"duration" : 0
},
"status" : "skipped",
"severity" : "normal"
}, {
"uid" : "2c3b9632c0c3c6f4",
"name" : "反向用例-用户名过短,密码正确",
"time" : {
"start" : 1735445612680,
"stop" : 1735445612712,
"duration" : 32
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "a80f5c73e98d0741",
"name" : "反向用例-用户名过长,密码正确",
"time" : {
"start" : 1735445612722,
"stop" : 1735445612761,
"duration" : 39
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "bfa27ce577b1727",
"name" : "登陆系统的标题",
"time" : {
"start" : 1735445612232,
"stop" : 1735445612258,
"duration" : 26
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "1e6d26bc76b77d97",
"name" : "正向用例",
"time" : {
"start" : 1735445612460,
"stop" : 1735445612518,
"duration" : 58
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "d75307e523b247b4",
"name" : "正向用例",
"time" : {
"start" : 1735445612418,
"stop" : 1735445612447,
"duration" : 29
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "df909ecea6f7b6dd",
"name" : "正向用例",
"time" : {
"start" : 1735445613794,
"stop" : 1735445613855,
"duration" : 61
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "6182889ac34359c8",
"name" : "登陆系统的标题",
"time" : {
"start" : 1735445612177,
"stop" : 1735445612226,
"duration" : 49
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "c5814d8a05590bc6",
"name" : "反向用例-用户名为空,密码正确",
"time" : {
"start" : 1735445612651,
"stop" : 1735445612672,
"duration" : 21
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "4c1a66ac96836302",
"name" : "正向用例",
"time" : {
"start" : 1735445613646,
"stop" : 1735445613677,
"duration" : 31
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "b48aa381796879c7",
"name" : "正向用例",
"time" : {
"start" : 1735445613342,
"stop" : 1735445613375,
"duration" : 33
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "15e9970491f0a09f",
"name" : "反向用例-用户名正确,密码为空",
"time" : {
"start" : 1735445613159,
"stop" : 1735445613192,
"duration" : 33
},
"status" : "broken",
"severity" : "normal"
}, {
"uid" : "ecabcd5b46f75bce",
"name" : "正向用例",
"time" : {
"start" : 1735445612356,
"stop" : 1735445612408,
"duration" : 52
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "a81dd6be6f27488c",
"name" : "正向用例",
"time" : {
"start" : 1735445613584,
"stop" : 1735445613638,
"duration" : 54
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "93cad0eaff510b40",
"name" : "反向用例-用户名错误,密码正确",
"time" : {
"start" : 1735445612817,
"stop" : 1735445612852,
"duration" : 35
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "8a1ab60af2891f57",
"name" : "正向用例",
"time" : {
"start" : 1735445613742,
"stop" : 1735445613784,
"duration" : 42
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "49047d75c6739794",
"name" : "反向用例-用户名正确,密码过长",
"time" : {
"start" : 1735445613261,
"stop" : 1735445613302,
"duration" : 41
},
"status" : "passed",
"severity" : "normal"
}, {
"uid" : "4c1bebef17d4e513",
"name" : "正向用例",
"time" : {
"start" : 1735445613494,
"stop" : 1735445613544,
"duration" : 50
},
"status" : "passed",
"severity" : "normal"
} ]
\ No newline at end of file
{
"total" : 4,
"items" : [ {
"uid" : "b5a9f09b1acae566881061796add74ac",
"name" : "test_case.test_user_jack",
"statistic" : {
"failed" : 0,
"broken" : 1,
"skipped" : 0,
"passed" : 10,
"unknown" : 0,
"total" : 11
}
}, {
"uid" : "41fe8ba4b516ca690a9c245decda2b15",
"name" : "test_case.test_user_shy",
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 7,
"unknown" : 0,
"total" : 7
}
}, {
"uid" : "3b083abbd4da894c2a31a2543bb576c2",
"name" : "test_case.test_user_farke",
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 0,
"passed" : 3,
"unknown" : 0,
"total" : 3
}
}, {
"uid" : "984732065b98c3e55fced1b71055797c",
"name" : "test_case.test_bpm",
"statistic" : {
"failed" : 0,
"broken" : 0,
"skipped" : 1,
"passed" : 2,
"unknown" : 0,
"total" : 3
}
} ]
}
\ No newline at end of file
{
"reportName" : "Allure Report",
"testRuns" : [ ],
"statistic" : {
"failed" : 0,
"broken" : 1,
"skipped" : 1,
"passed" : 22,
"unknown" : 0,
"total" : 24
},
"time" : {
"start" : 1735445612177,
"stop" : 1735445613855,
"duration" : 1678,
"minDuration" : 0,
"maxDuration" : 61,
"sumDuration" : 876
}
}
\ No newline at end of file
{"uuid": "43f698fe-389e-4f5c-b09d-8debdbeb3d9e", "befores": [{"name": "case", "status": "passed", "start": 1735445613584, "stop": 1735445613584}], "start": 1735445613584, "stop": 1735445613640}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_farke\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
{"name": "反向用例-用户名错误,密码正确", "status": "passed", "attachments": [{"name": "log", "source": "93cc911f-9fdc-42d8-8241-7d24b98467f5-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'认证接口'"}, {"name": "api", "value": "'登录系统'"}, {"name": "title", "value": "'反向用例-用户名错误,密码正确'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/auth'"}, {"name": "mime", "value": "'application/json'"}, {"name": "req", "value": "'POST'"}, {"name": "case", "value": "{'username': 'Admin123', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}"}, {"name": "expect", "value": "{'message': '账户错误或该租户未启用'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445612817, "stop": 1735445612852, "uuid": "ad25d1a9-d5d2-4c3d-87d6-4eae81e46fe5", "historyId": "a66a24115f84b24b2f8d4ec34e7ef590", "testCaseId": "db9486bc3117698c9d60cda9ad909479", "fullName": "test_case.test_user_jack.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "认证接口"}, {"name": "story", "value": "登录系统"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-jack"}, {"name": "parentSuite", "value": "test_case.test_user_jack"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_jack.test_bpm"}]}
\ No newline at end of file
{"uuid": "6043b32d-ba83-49c2-b56b-34ba7d19d93b", "befores": [{"name": "title", "status": "passed", "start": 1735445612679, "stop": 1735445612679}], "start": 1735445612679, "stop": 1735445612717}
\ No newline at end of file
{"uuid": "0d8e85c8-1bba-4f0b-a0f0-704bb024dbbe", "befores": [{"name": "sql", "status": "passed", "start": 1735445613064, "stop": 1735445613064}], "start": 1735445613064, "stop": 1735445613104}
\ No newline at end of file
{"uuid": "c156eefd-b894-43fe-8de3-7c14e15fcd4f", "befores": [{"name": "case", "status": "passed", "start": 1735445613646, "stop": 1735445613646}], "start": 1735445613646, "stop": 1735445613679}
\ No newline at end of file
{"uuid": "0f05a94d-7098-4f9a-801d-f67dae960158", "befores": [{"name": "case", "status": "passed", "start": 1735445613064, "stop": 1735445613064}], "start": 1735445613064, "stop": 1735445613105}
\ No newline at end of file
{"uuid": "a1b23c4b-1385-42e3-b2bd-245bbd329fd7", "befores": [{"name": "sql", "status": "passed", "start": 1735445613550, "stop": 1735445613550}], "start": 1735445613550, "stop": 1735445613577}
\ No newline at end of file
{"uuid": "68ea659f-52e7-4c84-b58b-cbe0d32fccb2", "befores": [{"name": "title", "status": "passed", "start": 1735445613310, "stop": 1735445613310}], "start": 1735445613310, "stop": 1735445613338}
\ No newline at end of file
{"uuid": "b301632f-196a-44b5-9496-9d7d8342424d", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445613260, "stop": 1735445613260}], "start": 1735445613260, "stop": 1735445613304}
\ No newline at end of file
{"uuid": "91ba18ce-2bc7-4cff-ad88-c4b3f61d9aec", "befores": [{"name": "mime", "status": "passed", "start": 1735445612418, "stop": 1735445612418}], "start": 1735445612418, "stop": 1735445612452}
\ No newline at end of file
{"uuid": "918a5c2f-0620-4529-84bd-6053fa7ee15a", "befores": [{"name": "expect", "status": "passed", "start": 1735445613310, "stop": 1735445613310}], "start": 1735445613310, "stop": 1735445613335}
\ No newline at end of file
{"uuid": "64352950-1f6a-44f9-9ac8-6efae19d64a1", "befores": [{"name": "module", "status": "passed", "start": 1735445613583, "stop": 1735445613583}], "start": 1735445613583, "stop": 1735445613643}
\ No newline at end of file
{"uuid": "b73e7e61-d5ae-49cb-8263-aec05eac5c93", "befores": [{"name": "expect_data", "status": "passed", "start": 1735445612177, "stop": 1735445612177}], "start": 1735445612177, "stop": 1735445612227}
\ No newline at end of file
{"uuid": "1dc10b9d-2f68-48d6-b156-e317a9b02e83", "befores": [{"name": "req", "status": "passed", "start": 1735445613493, "stop": 1735445613494}], "start": 1735445613493, "stop": 1735445613546}
\ No newline at end of file
{"uuid": "6acb9ecc-729c-48d7-bf38-f375fd31ec48", "befores": [{"name": "update", "status": "passed", "start": 1735445612356, "stop": 1735445612356}], "start": 1735445612356, "stop": 1735445612408}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_shy\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:delete, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:35
INFO  root:__init__.py:44 执行的功能为:select, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:40
\ No newline at end of file
{"uuid": "90a60095-6459-4902-9d3d-ad44776800eb", "befores": [{"name": "url", "status": "passed", "start": 1735445613158, "stop": 1735445613158}], "start": 1735445613158, "stop": 1735445613205}
\ No newline at end of file
{"uuid": "4be413d3-5f2f-4e63-9b91-f3e39b62c5eb", "befores": [{"name": "req", "status": "passed", "start": 1735445612418, "stop": 1735445612418}], "start": 1735445612418, "stop": 1735445612452}
\ No newline at end of file
{"uuid": "72a5ee93-747f-4e07-a0d5-9b073e9a10f3", "befores": [{"name": "req", "status": "passed", "start": 1735445613260, "stop": 1735445613260}], "start": 1735445613260, "stop": 1735445613306}
\ No newline at end of file
{"uuid": "acae2758-3120-4565-9db3-690c69e178d6", "befores": [{"name": "sql", "status": "passed", "start": 1735445613342, "stop": 1735445613342}], "start": 1735445613342, "stop": 1735445613376}
\ No newline at end of file
{"uuid": "a0a3e13f-5708-4d40-a67a-0e91b65f2f4a", "befores": [{"name": "case", "status": "passed", "start": 1735445613342, "stop": 1735445613342}], "start": 1735445613342, "stop": 1735445613377}
\ No newline at end of file
{"name": "反向用例-用户名正确,密码过短", "status": "passed", "attachments": [{"name": "log", "source": "90bb983f-8d7e-490d-aad8-1bca726fbeff-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'认证接口'"}, {"name": "api", "value": "'登录系统'"}, {"name": "title", "value": "'反向用例-用户名正确,密码过短'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/auth'"}, {"name": "mime", "value": "'application/json'"}, {"name": "req", "value": "'POST'"}, {"name": "case", "value": "{'username': 'admin', 'password': '1'}"}, {"name": "expect", "value": "{'message': '账号或密码错误'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445613214, "stop": 1735445613247, "uuid": "ff8f9f74-16cc-43f0-bca5-794e7bf99557", "historyId": "2aea37f80bd8073c6351569828ae3c90", "testCaseId": "db9486bc3117698c9d60cda9ad909479", "fullName": "test_case.test_user_jack.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "认证接口"}, {"name": "story", "value": "登录系统"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-jack"}, {"name": "parentSuite", "value": "test_case.test_user_jack"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_jack.test_bpm"}]}
\ No newline at end of file
{"uuid": "5b0d599f-95cf-427b-9c43-19538ba57f3e", "befores": [{"name": "api", "status": "passed", "start": 1735445613794, "stop": 1735445613794}], "start": 1735445613794, "stop": 1735445613859}
\ No newline at end of file
{"uuid": "3dce1966-1393-4fc8-9ebc-3271c7396186", "befores": [{"name": "sql", "status": "passed", "start": 1735445612964, "stop": 1735445612964}], "start": 1735445612964, "stop": 1735445613006}
\ No newline at end of file
{"name": "反向用例-用户名正确,密码为空", "status": "broken", "statusDetails": {"message": "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?", "trace": "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError"}, "attachments": [{"name": "log", "source": "11ccc427-6575-4b13-8e17-358ec43fe434-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'认证接口'"}, {"name": "api", "value": "'登录系统'"}, {"name": "title", "value": "'反向用例-用户名正确,密码为空'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/auth'"}, {"name": "mime", "value": "'application/json'"}, {"name": "req", "value": "'POST'"}, {"name": "case", "value": "{'username': 'admin', 'password': ''}"}, {"name": "expect", "value": "{'message': '账号密码错误'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445613015, "stop": 1735445613050, "uuid": "ca26324d-1d24-4a1e-8657-f40e0da15440", "historyId": "3a19a7c1988bebb35bd7d53f782c4cf7", "testCaseId": "db9486bc3117698c9d60cda9ad909479", "fullName": "test_case.test_user_jack.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "认证接口"}, {"name": "story", "value": "登录系统"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-jack"}, {"name": "parentSuite", "value": "test_case.test_user_jack"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_jack.test_bpm"}]}
\ No newline at end of file
{"uuid": "1bf0452f-321d-4462-a2b6-6d09f3b32ea6", "befores": [{"name": "expect", "status": "passed", "start": 1735445613158, "stop": 1735445613158}], "start": 1735445613158, "stop": 1735445613203}
\ No newline at end of file
{"uuid": "ffa0399d-4b65-465d-9fac-78c722e7051f", "befores": [{"name": "api", "status": "passed", "start": 1735445613310, "stop": 1735445613310}], "start": 1735445613310, "stop": 1735445613339}
\ No newline at end of file
{"uuid": "a0371227-5e79-4efc-9128-8a785a3fe09b", "befores": [{"name": "case", "status": "passed", "start": 1735445612773, "stop": 1735445612773}], "start": 1735445612773, "stop": 1735445612809}
\ No newline at end of file
{"uuid": "70fed722-eedb-4ad7-afb0-e74c4c670b9e", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445613310, "stop": 1735445613310}], "start": 1735445613310, "stop": 1735445613334}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
{"uuid": "4c43bd41-5983-45f4-b433-be1668ce221c", "befores": [{"name": "sql", "status": "passed", "start": 1735445612773, "stop": 1735445612773}], "start": 1735445612773, "stop": 1735445612808}
\ No newline at end of file
{"uuid": "e07c38e3-25f2-461a-90c4-97c7a1a01735", "befores": [{"name": "level", "status": "passed", "start": 1735445612459, "stop": 1735445612459}], "start": 1735445612459, "stop": 1735445612525}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
\ No newline at end of file
{"uuid": "024b574e-d727-4222-a1ac-f0a04a7d4d51", "befores": [{"name": "sql", "status": "passed", "start": 1735445613742, "stop": 1735445613742}], "start": 1735445613742, "stop": 1735445613785}
\ No newline at end of file
{"uuid": "bf6891c4-7f3b-4083-8703-ad0e3a2bf1c8", "befores": [{"name": "api", "status": "passed", "start": 1735445613158, "stop": 1735445613158}], "start": 1735445613158, "stop": 1735445613207}
\ No newline at end of file
{"uuid": "bd821bbe-bde6-4b88-9702-65f5687f1536", "befores": [{"name": "title", "status": "passed", "start": 1735445612417, "stop": 1735445612417}], "start": 1735445612417, "stop": 1735445612455}
\ No newline at end of file
{"uuid": "95bde6f0-7a4d-4112-a500-b259fb2ce5df", "befores": [{"name": "expect_data", "status": "passed", "start": 1735445612232, "stop": 1735445612232}], "start": 1735445612232, "stop": 1735445612259}
\ No newline at end of file
{"uuid": "26ab03d4-5889-4979-935e-7249f76961f6", "befores": [{"name": "title", "status": "passed", "start": 1735445613014, "stop": 1735445613014}], "start": 1735445613014, "stop": 1735445613057}
\ No newline at end of file
{"uuid": "031d1aed-14ef-43a0-86bc-abd16d7075a3", "befores": [{"name": "url", "status": "passed", "start": 1735445612860, "stop": 1735445612860}], "start": 1735445612860, "stop": 1735445612960}
\ No newline at end of file
{"uuid": "74e0166d-8f60-4c41-9667-4d040740520e", "befores": [{"name": "case", "status": "passed", "start": 1735445613158, "stop": 1735445613158}], "start": 1735445613158, "stop": 1735445613204}
\ No newline at end of file
{"uuid": "007d3c48-7d8d-4036-950e-08351a1dca28", "befores": [{"name": "sql", "status": "passed", "start": 1735445613794, "stop": 1735445613794}], "start": 1735445613794, "stop": 1735445613856}
\ No newline at end of file
{"uuid": "094f9b08-66cc-4d6b-af59-a5e956e5256f", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445612773, "stop": 1735445612773}], "start": 1735445612773, "stop": 1735445612808}
\ No newline at end of file
{"uuid": "960338c6-6909-43dd-87f7-ead3435af74e", "befores": [{"name": "case", "status": "passed", "start": 1735445613310, "stop": 1735445613310}], "start": 1735445613310, "stop": 1735445613335}
\ No newline at end of file
{"uuid": "a1e377e2-a6b8-40c7-abf7-85cca19c3e03", "befores": [{"name": "sql", "status": "passed", "start": 1735445613214, "stop": 1735445613214}], "start": 1735445613214, "stop": 1735445613249}
\ No newline at end of file
{"uuid": "2722fb1a-5341-433b-8d74-bd6720a48082", "befores": [{"name": "api", "status": "passed", "start": 1735445613742, "stop": 1735445613742}], "start": 1735445613742, "stop": 1735445613791}
\ No newline at end of file
{"uuid": "d5cf5924-1e65-4a7d-a4a9-a6161a8243ad", "befores": [{"name": "api", "status": "passed", "start": 1735445612650, "stop": 1735445612650}], "start": 1735445612650, "stop": 1735445612677}
\ No newline at end of file
{"uuid": "7dadb2d0-bbbf-4c97-8f4c-238868e26b4d", "befores": [{"name": "level", "status": "passed", "start": 1735445613550, "stop": 1735445613550}], "start": 1735445613550, "stop": 1735445613580}
\ No newline at end of file
{"uuid": "1f4bcf4a-ccca-4b80-a8c4-754dd79ddd3b", "befores": [{"name": "url", "status": "passed", "start": 1735445612772, "stop": 1735445612772}], "start": 1735445612772, "stop": 1735445612810}
\ No newline at end of file
{"uuid": "63d02ea0-eecc-4336-acaf-71d9d38b7fa5", "befores": [{"name": "sql", "status": "passed", "start": 1735445613646, "stop": 1735445613646}], "start": 1735445613646, "stop": 1735445613677}
\ No newline at end of file
{"uuid": "2fee26aa-eb62-4555-9e94-5699dba53cc7", "befores": [{"name": "req", "status": "passed", "start": 1735445613310, "stop": 1735445613310}], "start": 1735445613310, "stop": 1735445613335}
\ No newline at end of file
{"uuid": "faafd80d-c3f0-4677-a9fe-3375f5d41fe3", "befores": [{"name": "title", "status": "passed", "start": 1735445612817, "stop": 1735445612817}], "start": 1735445612817, "stop": 1735445612857}
\ No newline at end of file
{"uuid": "6dd5bafd-777d-49a5-92e3-ed8a293f6868", "befores": [{"name": "sql", "status": "passed", "start": 1735445612860, "stop": 1735445612860}], "start": 1735445612860, "stop": 1735445612958}
\ No newline at end of file
{"uuid": "a50c2176-85b9-4849-abc5-a07d0cf6d7eb", "befores": [{"name": "req", "status": "passed", "start": 1735445613064, "stop": 1735445613064}], "start": 1735445613064, "stop": 1735445613106}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:18
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:17
INFO  root:__init__.py:59 执行的功能为:__init__, 功能的描述为:获取项目下基础配置ini配置文件的路径,创建Configparser对象,读取ini文件, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:17
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\read_basic_ini.py, 所做的行为:17
INFO  root:__init__.py:44 执行的功能为:get_host, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\read_basic_ini.py, 所做的行为:24
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
{"uuid": "0ae6f2fc-fea5-45e3-bf3d-405d81bf8399", "befores": [{"name": "level", "status": "passed", "start": 1735445613310, "stop": 1735445613310}], "start": 1735445613310, "stop": 1735445613338}
\ No newline at end of file
{"uuid": "80173d9d-492d-4a3b-adc1-46d973328a0e", "befores": [{"name": "title", "status": "passed", "start": 1735445613158, "stop": 1735445613158}], "start": 1735445613158, "stop": 1735445613206}
\ No newline at end of file
{"uuid": "7915c965-9445-4c02-b3e0-f054e6272d2e", "befores": [{"name": "url", "status": "passed", "start": 1735445613064, "stop": 1735445613064}], "start": 1735445613064, "stop": 1735445613107}
\ No newline at end of file
{"uuid": "ce8989dc-0da4-4f6d-989d-c5d469a4bcd9", "befores": [{"name": "module", "status": "passed", "start": 1735445613260, "stop": 1735445613260}], "start": 1735445613260, "stop": 1735445613308}
\ No newline at end of file
{"uuid": "90ec6892-042d-4d33-b7e9-c548c05971d5", "befores": [{"name": "sql", "status": "passed", "start": 1735445613015, "stop": 1735445613015}], "start": 1735445613015, "stop": 1735445613055}
\ No newline at end of file
{"uuid": "b019874a-66a0-4d4d-94dc-8017e05e1de7", "befores": [{"name": "mime", "status": "passed", "start": 1735445612772, "stop": 1735445612772}], "start": 1735445612772, "stop": 1735445612810}
\ No newline at end of file
{"uuid": "d6570253-3bb2-4271-997c-d50081fe2ae6", "befores": [{"name": "api", "status": "passed", "start": 1735445613550, "stop": 1735445613550}], "start": 1735445613550, "stop": 1735445613581}
\ No newline at end of file
{"uuid": "96fbd8eb-7312-472b-82e2-84d40fe0422d", "befores": [{"name": "url", "status": "passed", "start": 1735445613794, "stop": 1735445613794}], "start": 1735445613794, "stop": 1735445613858}
\ No newline at end of file
{"uuid": "2cb2f72d-bf46-42a6-983b-58d4c8c646e9", "befores": [{"name": "level", "status": "passed", "start": 1735445613260, "stop": 1735445613260}], "start": 1735445613260, "stop": 1735445613307}
\ No newline at end of file
{"uuid": "5527b4b8-813d-42ba-86c6-a694bdd964c0", "befores": [{"name": "title", "status": "passed", "start": 1735445612772, "stop": 1735445612772}], "start": 1735445612772, "stop": 1735445612812}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
{"uuid": "d0881436-651b-4115-ac8d-b164c988f35b", "befores": [{"name": "level", "status": "passed", "start": 1735445613583, "stop": 1735445613583}], "start": 1735445613583, "stop": 1735445613642}
\ No newline at end of file
{"uuid": "94fdb4c8-dc7b-45ac-a3cf-b48c728c7f8e", "befores": [{"name": "url", "status": "passed", "start": 1735445613689, "stop": 1735445613689}], "start": 1735445613689, "stop": 1735445613735}
\ No newline at end of file
{"uuid": "926c4a4e-c1d7-46b4-972b-fb62737115f1", "befores": [{"name": "case", "status": "passed", "start": 1735445613550, "stop": 1735445613550}], "start": 1735445613550, "stop": 1735445613579}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
\ No newline at end of file
{"uuid": "c6db328d-c472-4013-93a3-514766680f55", "befores": [{"name": "update", "status": "passed", "start": 1735445613112, "stop": 1735445613112}], "start": 1735445613112, "stop": 1735445613149}
\ No newline at end of file
{"uuid": "16047bac-6c64-4a30-95ec-79b65563d2d7", "befores": [{"name": "update", "status": "passed", "start": 1735445612680, "stop": 1735445612680}], "start": 1735445612680, "stop": 1735445612712}
\ No newline at end of file
{"uuid": "47044d35-e1f7-4ec8-bdbb-9570a3c98d29", "befores": [{"name": "expect", "status": "passed", "start": 1735445613064, "stop": 1735445613064}], "start": 1735445613064, "stop": 1735445613105}
\ No newline at end of file
{"uuid": "1ad4b7fa-982e-40b0-b898-024d50a9e856", "befores": [{"name": "level", "status": "passed", "start": 1735445612417, "stop": 1735445612417}], "start": 1735445612417, "stop": 1735445612454}
\ No newline at end of file
{"uuid": "56dd08d5-82ef-4243-9f64-7bdf521d3618", "befores": [{"name": "case", "status": "passed", "start": 1735445613014, "stop": 1735445613014}], "start": 1735445613014, "stop": 1735445613056}
\ No newline at end of file
{"uuid": "207f7891-a946-4748-94ed-68834f4e426a", "befores": [{"name": "title", "status": "passed", "start": 1735445613111, "stop": 1735445613111}], "start": 1735445613111, "stop": 1735445613153}
\ No newline at end of file
{"name": "登陆系统的标题", "status": "passed", "parameters": [{"name": "title", "value": "'反向用例'"}, {"name": "case_data", "value": "{'username': 'admin', 'password': ''}"}, {"name": "expect_data", "value": "{'message': '账号或密码错误'}"}], "start": 1735445612232, "stop": 1735445612258, "uuid": "7f653e0c-77c3-42ef-a07c-64bf1877e1ce", "historyId": "71d61dc3baca8c0d0c9cbcb57f3bf9b5", "testCaseId": "28336c3b0aa94c58bb1d41fee48ea9cb", "fullName": "test_case.test_bpm.test_auth.TestAuth#test_login", "labels": [{"name": "story", "value": "登录系统"}, {"name": "epic", "value": "BPM项目-场景"}, {"name": "severity", "value": "高"}, {"name": "feature", "value": "BPM项目-认证接口"}, {"name": "tag", "value": "dependency(scope='session')"}, {"name": "parentSuite", "value": "test_case.test_bpm"}, {"name": "suite", "value": "test_auth"}, {"name": "subSuite", "value": "TestAuth"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_bpm.test_auth"}]}
\ No newline at end of file
{"uuid": "d22bd1b2-a785-4c50-aa69-07590c81bece", "befores": [{"name": "api", "status": "passed", "start": 1735445613645, "stop": 1735445613645}], "start": 1735445613645, "stop": 1735445613683}
\ No newline at end of file
{"uuid": "be581e77-f61d-4ab3-bd4d-c4892e698965", "befores": [{"name": "update", "status": "passed", "start": 1735445612817, "stop": 1735445612817}], "start": 1735445612817, "stop": 1735445612853}
\ No newline at end of file
{"uuid": "a26ba8f8-4fd3-4823-83e8-97ea2e18aa8e", "befores": [{"name": "req", "status": "passed", "start": 1735445612610, "stop": 1735445612610}], "start": 1735445612610, "stop": 1735445612646}
\ No newline at end of file
{"uuid": "6c89fc9f-e56a-4684-b0e7-e56141d6602d", "befores": [{"name": "sql", "status": "passed", "start": 1735445613494, "stop": 1735445613494}], "start": 1735445613494, "stop": 1735445613544}
\ No newline at end of file
{"uuid": "41088314-1c6c-4d4e-9b59-fcf030feb116", "befores": [{"name": "sql", "status": "passed", "start": 1735445612817, "stop": 1735445612817}], "start": 1735445612817, "stop": 1735445612853}
\ No newline at end of file
{"uuid": "5caa383f-e68c-447d-8262-e8e72b4988b6", "befores": [{"name": "case", "status": "passed", "start": 1735445612680, "stop": 1735445612680}], "start": 1735445612680, "stop": 1735445612715}
\ No newline at end of file
{"uuid": "08219526-a3a5-4993-a21f-b003683e1841", "befores": [{"name": "mime", "status": "passed", "start": 1735445613014, "stop": 1735445613014}], "start": 1735445613014, "stop": 1735445613057}
\ No newline at end of file
INFO  pytest_dependency:pytest_dependency.py:100 skip test_add_dem because it depends on test_bpm/test_auth.py::TestAuth::test_login[\u6b63\u5411\u7528\u4f8b-case_data0-expect_data0]
\ No newline at end of file
{"uuid": "197f9cc0-8f98-4504-98c0-6a4afd026c29", "befores": [{"name": "expect", "status": "passed", "start": 1735445612680, "stop": 1735445612680}], "start": 1735445612680, "stop": 1735445612715}
\ No newline at end of file
{"uuid": "2180805b-9041-4e42-ace8-9830836b00d3", "befores": [{"name": "req", "status": "passed", "start": 1735445613342, "stop": 1735445613342}], "start": 1735445613342, "stop": 1735445613378}
\ No newline at end of file
{"uuid": "20e588d6-880d-4bd5-a73f-c4885ce30ff4", "befores": [{"name": "req", "status": "passed", "start": 1735445612721, "stop": 1735445612721}], "start": 1735445612721, "stop": 1735445612765}
\ No newline at end of file
{"uuid": "677480be-353a-4810-9ce9-ef053b72c13b", "befores": [{"name": "expect", "status": "passed", "start": 1735445613342, "stop": 1735445613342}], "start": 1735445613342, "stop": 1735445613377}
\ No newline at end of file
{"uuid": "1eda1c0b-98cb-4d9a-ae4a-2149b68f32eb", "befores": [{"name": "req", "status": "passed", "start": 1735445612680, "stop": 1735445612680}], "start": 1735445612680, "stop": 1735445612716}
\ No newline at end of file
{"uuid": "6c7c62f6-8d0b-44aa-a271-4dbbc8d86bfa", "befores": [{"name": "module", "status": "passed", "start": 1735445612817, "stop": 1735445612817}], "start": 1735445612816, "stop": 1735445612858}
\ No newline at end of file
{"uuid": "2567a12e-0e10-405e-bc53-a0b3cc575b46", "befores": [{"name": "mime", "status": "passed", "start": 1735445612610, "stop": 1735445612610}], "start": 1735445612610, "stop": 1735445612646}
\ No newline at end of file
{"uuid": "b71323b2-47b3-4742-b19b-8da84fafc74c", "befores": [{"name": "title", "status": "passed", "start": 1735445613742, "stop": 1735445613742}], "start": 1735445613742, "stop": 1735445613790}
\ No newline at end of file
{"uuid": "8ad43b1e-fafe-424e-8ab9-3f50f2dd7001", "befores": [{"name": "module", "status": "passed", "start": 1735445613742, "stop": 1735445613742}], "start": 1735445613742, "stop": 1735445613791}
\ No newline at end of file
{"uuid": "484c4d8b-d206-4b8d-95db-ccd875971697", "befores": [{"name": "url", "status": "passed", "start": 1735445613645, "stop": 1735445613645}], "start": 1735445613645, "stop": 1735445613681}
\ No newline at end of file
{"uuid": "aef1c20a-d15d-434e-8980-76783c4da800", "befores": [{"name": "req", "status": "passed", "start": 1735445613742, "stop": 1735445613742}], "start": 1735445613742, "stop": 1735445613789}
\ No newline at end of file
{"uuid": "166ac94a-6bc7-4ded-beab-053a9cdf9f9f", "befores": [{"name": "level", "status": "passed", "start": 1735445612772, "stop": 1735445612772}], "start": 1735445612772, "stop": 1735445612811}
\ No newline at end of file
{"uuid": "1e8507f7-63da-451b-820a-3af37787653c", "befores": [{"name": "sql", "status": "passed", "start": 1735445612459, "stop": 1735445612459}], "start": 1735445612459, "stop": 1735445612520}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
{"uuid": "44c0a032-7aa3-47fa-94ad-89f14af69fc6", "befores": [{"name": "mime", "status": "passed", "start": 1735445613310, "stop": 1735445613310}], "start": 1735445613310, "stop": 1735445613336}
\ No newline at end of file
{"name": "正向用例", "status": "passed", "attachments": [{"name": "log", "source": "c205186f-8659-443d-a997-1c43726c2a6b-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'组织管理'"}, {"name": "api", "value": "'保存组织参数'"}, {"name": "title", "value": "'正向用例'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/api/org/v1/orgParam/saveOrgParams'"}, {"name": "mime", "value": "'query|json'"}, {"name": "req", "value": "'post'"}, {"name": "case", "value": "{'query': {'orgCode': 'test_org_code'}, 'json': [{'alias': 'sz', 'value': 100000}]}"}, {"name": "expect", "value": "{'message': '保存组织参数成功!'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445613690, "stop": 1735445613731, "uuid": "83bb17bc-0e79-4795-84b2-3ad6d0e7b0cd", "historyId": "b4c0011a74bd423901705e18c31707ea", "testCaseId": "9c935d3786c3b36d2f34fb9b06b5b4fd", "fullName": "test_case.test_user_shy.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "组织管理"}, {"name": "story", "value": "保存组织参数"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-shy"}, {"name": "parentSuite", "value": "test_case.test_user_shy"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_shy.test_bpm"}]}
\ No newline at end of file
{"name": "正向用例-用户名和密码正确", "status": "passed", "attachments": [{"name": "log", "source": "22391316-aa55-4102-b877-0c1b0173367a-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'认证接口'"}, {"name": "api", "value": "'登录系统'"}, {"name": "title", "value": "'正向用例-用户名和密码正确'"}, {"name": "level", "value": "'高'"}, {"name": "url", "value": "'http://36.139.193.99:8088/auth'"}, {"name": "mime", "value": "'application/json'"}, {"name": "req", "value": "'POST'"}, {"name": "case", "value": "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}"}, {"name": "expect", "value": "{'username': '超级管理员', 'account': 'admin', 'userId': '1', 'expiration': 86400}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445612611, "stop": 1735445612644, "uuid": "1ba9328c-441a-433a-a6eb-1165c75426dc", "historyId": "059eaf6d6b5b02f506b3edbce892f866", "testCaseId": "db9486bc3117698c9d60cda9ad909479", "fullName": "test_case.test_user_jack.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "认证接口"}, {"name": "story", "value": "登录系统"}, {"name": "severity", "value": "高"}, {"name": "epic", "value": "BPM-jack"}, {"name": "parentSuite", "value": "test_case.test_user_jack"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_jack.test_bpm"}]}
\ No newline at end of file
{"uuid": "51e63818-dbe0-4ca7-9bcc-21f034d56d29", "befores": [{"name": "title", "status": "passed", "start": 1735445612650, "stop": 1735445612650}], "start": 1735445612650, "stop": 1735445612676}
\ No newline at end of file
{"uuid": "7cb7603b-daa3-413d-9532-e62483708c49", "befores": [{"name": "url", "status": "passed", "start": 1735445612679, "stop": 1735445612679}], "start": 1735445612679, "stop": 1735445612716}
\ No newline at end of file
{"uuid": "b395e89b-2ffc-4c7b-835f-3be7107df538", "befores": [{"name": "title", "status": "passed", "start": 1735445612355, "stop": 1735445612355}], "start": 1735445612355, "stop": 1735445612415}
\ No newline at end of file
{"uuid": "8b35b685-df5a-4740-807f-2e478f5e570d", "befores": [{"name": "expect", "status": "passed", "start": 1735445612773, "stop": 1735445612773}], "start": 1735445612773, "stop": 1735445612809}
\ No newline at end of file
{"uuid": "ef1f81d9-d9dd-4842-96dd-ffb88b72ebe8", "befores": [{"name": "req", "status": "passed", "start": 1735445613112, "stop": 1735445613112}], "start": 1735445613112, "stop": 1735445613152}
\ No newline at end of file
{"uuid": "efcc0ca1-2b5b-4702-9109-6f3497bb78a1", "befores": [{"name": "case", "status": "passed", "start": 1735445613742, "stop": 1735445613742}], "start": 1735445613742, "stop": 1735445613788}
\ No newline at end of file
{"name": "添加维度的标题", "status": "skipped", "statusDetails": {"message": "Skipped: test_add_dem depends on test_bpm/test_auth.py::TestAuth::test_login[\\u6b63\\u5411\\u7528\\u4f8b-case_data0-expect_data0]", "trace": "('C:\\\\Users\\\\32006\\\\Desktop\\\\test_python\\\\python_learning\\\\test\\\\venv\\\\Lib\\\\site-packages\\\\pytest_dependency.py', 101, 'Skipped: test_add_dem depends on test_bpm/test_auth.py::TestAuth::test_login[\\\\u6b63\\\\u5411\\\\u7528\\\\u4f8b-case_data0-expect_data0]')"}, "attachments": [{"name": "log", "source": "33b4e1a3-4223-42b8-bfa9-167a7bdf31bf-attachment.txt", "type": "text/plain"}], "start": 1735445612263, "stop": 1735445612263, "uuid": "6fe412bb-2a2e-4449-af2a-e958736eccdb", "historyId": "47dfc6262edb93463bd12d53e31c5d4e", "testCaseId": "47dfc6262edb93463bd12d53e31c5d4e", "fullName": "test_case.test_bpm.test_dem.TestDem#test_add_dem", "labels": [{"name": "severity", "value": "高"}, {"name": "epic", "value": "BPM项目-场景"}, {"name": "feature", "value": "BPM项目-维度管理"}, {"name": "story", "value": "添加维度"}, {"name": "tag", "value": "dependency(depends=['test_bpm/test_auth.py::TestAuth::test_login[\\\\u6b63\\\\u5411\\\\u7528\\\\u4f8b-case_data0-expect_data0]'], scope='session')"}, {"name": "parentSuite", "value": "test_case.test_bpm"}, {"name": "suite", "value": "test_dem"}, {"name": "subSuite", "value": "TestDem"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_bpm.test_dem"}]}
\ No newline at end of file
{"uuid": "03a7efa2-f572-4e23-8fd4-1f6a8f6254dd", "befores": [{"name": "api", "status": "passed", "start": 1735445613213, "stop": 1735445613213}], "start": 1735445613213, "stop": 1735445613256}
\ No newline at end of file
{"uuid": "2a774aec-b402-445a-bf69-f401a87c6e23", "befores": [{"name": "sql", "status": "passed", "start": 1735445612651, "stop": 1735445612651}], "start": 1735445612651, "stop": 1735445612673}
\ No newline at end of file
{"name": "正向用例", "status": "passed", "attachments": [{"name": "log", "source": "010c204f-0bff-41fe-8cdc-a287dcd1a679-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'维度管理'"}, {"name": "api", "value": "'更新维度'"}, {"name": "title", "value": "'正向用例'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/api/demension/v1/dem/updateDem'"}, {"name": "mime", "value": "'json'"}, {"name": "req", "value": "'put'"}, {"name": "case", "value": "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度-更新'}"}, {"name": "expect", "value": "{'message': '更新维度成功!'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445612418, "stop": 1735445612447, "uuid": "89d14e16-850e-4938-80f7-e0b4cb5ae590", "historyId": "6cdc007ee85e152c40dea6af2e07e202", "testCaseId": "c3a7d197e455a22b5f54ca08e9efb1a6", "fullName": "test_case.test_user_farke.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "维度管理"}, {"name": "story", "value": "更新维度"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-farke"}, {"name": "parentSuite", "value": "test_case.test_user_farke"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_farke.test_bpm"}]}
\ No newline at end of file
{"uuid": "346e3e6e-c4c8-4d87-87fa-3a4262c0284d", "befores": [{"name": "module", "status": "passed", "start": 1735445613310, "stop": 1735445613310}], "start": 1735445613310, "stop": 1735445613339}
\ No newline at end of file
{"uuid": "cb0ef676-4085-43e8-b06b-7ba33e4e0f2b", "befores": [{"name": "mime", "status": "passed", "start": 1735445612355, "stop": 1735445612355}], "start": 1735445612355, "stop": 1735445612413}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_shy\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
{"uuid": "710a9a0a-a574-451d-a5cf-4c6d08545268", "befores": [{"name": "title", "status": "passed", "start": 1735445612459, "stop": 1735445612459}], "start": 1735445612459, "stop": 1735445612525}
\ No newline at end of file
{"uuid": "0829c43b-7012-421e-9055-9aac694d4d05", "befores": [{"name": "module", "status": "passed", "start": 1735445612721, "stop": 1735445612721}], "start": 1735445612721, "stop": 1735445612770}
\ No newline at end of file
{"uuid": "a38d09cc-dd0f-4c3b-9c38-9efdbb5d9cbd", "befores": [{"name": "mime", "status": "passed", "start": 1735445612860, "stop": 1735445612860}], "start": 1735445612860, "stop": 1735445612959}
\ No newline at end of file
{"name": "反向用例-用户名为空,密码正确", "status": "passed", "attachments": [{"name": "log", "source": "41d853ef-443f-41e1-9d3d-3fa38fbb187a-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'认证接口'"}, {"name": "api", "value": "'登录系统'"}, {"name": "title", "value": "'反向用例-用户名为空,密码正确'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/auth'"}, {"name": "mime", "value": "'application/json'"}, {"name": "req", "value": "'POST'"}, {"name": "case", "value": "{'username': '', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}"}, {"name": "expect", "value": "{'message': '账户错误或该租户未启用'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445612651, "stop": 1735445612672, "uuid": "b8d2c5e8-d223-427a-b36c-17807c617c29", "historyId": "9721a3a86a57b5f8f77d34691878bbdc", "testCaseId": "db9486bc3117698c9d60cda9ad909479", "fullName": "test_case.test_user_jack.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "认证接口"}, {"name": "story", "value": "登录系统"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-jack"}, {"name": "parentSuite", "value": "test_case.test_user_jack"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_jack.test_bpm"}]}
\ No newline at end of file
{"uuid": "ca31cf82-cf90-4930-85b2-47cef510a738", "befores": [{"name": "sql", "status": "passed", "start": 1735445613261, "stop": 1735445613261}], "start": 1735445613261, "stop": 1735445613303}
\ No newline at end of file
{"uuid": "1a40942b-599e-495b-ad02-27f042bba93e", "befores": [{"name": "expect", "status": "passed", "start": 1735445613550, "stop": 1735445613550}], "start": 1735445613550, "stop": 1735445613579}
\ No newline at end of file
{"uuid": "d5596d16-549a-4c68-b2b4-d15cac4ce7bb", "befores": [{"name": "module", "status": "passed", "start": 1735445612650, "stop": 1735445612650}], "start": 1735445612650, "stop": 1735445612677}
\ No newline at end of file
{"uuid": "3cd9b6b5-0dca-4056-aae3-a106332cb5df", "befores": [{"name": "req", "status": "passed", "start": 1735445613646, "stop": 1735445613646}], "start": 1735445613646, "stop": 1735445613680}
\ No newline at end of file
{"uuid": "9d9d493a-ff88-4540-9136-968b3daa6d14", "befores": [{"name": "req", "status": "passed", "start": 1735445613584, "stop": 1735445613584}], "start": 1735445613584, "stop": 1735445613641}
\ No newline at end of file
{"uuid": "8369ca9a-0d2e-4bbb-9ceb-97a9b51f956b", "befores": [{"name": "module", "status": "passed", "start": 1735445612772, "stop": 1735445612772}], "start": 1735445612772, "stop": 1735445612813}
\ No newline at end of file
{"uuid": "827993b7-183c-459f-b22a-3c321875e878", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445613342, "stop": 1735445613342}], "start": 1735445613342, "stop": 1735445613377}
\ No newline at end of file
{"uuid": "fc447cb1-3859-4024-9357-9cbc6f6fb003", "children": ["64d1bbb7-5934-43af-806f-04b273de2808", "7f653e0c-77c3-42ef-a07c-64bf1877e1ce", "6fe412bb-2a2e-4449-af2a-e958736eccdb"], "befores": [{"name": "req_fix", "status": "passed", "start": 1735445612176, "stop": 1735445612176}], "afters": [{"name": "req_fix::0", "status": "passed", "start": 1735445613862, "stop": 1735445613862}], "start": 1735445612176, "stop": 1735445613862}
\ No newline at end of file
{"uuid": "061ed688-597a-420b-aedf-ad5ebc9a7f67", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445613646, "stop": 1735445613646}], "start": 1735445613646, "stop": 1735445613678}
\ No newline at end of file
{"uuid": "c7777ac7-274c-4db9-9207-be57caa643df", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445613794, "stop": 1735445613794}], "start": 1735445613794, "stop": 1735445613857}
\ No newline at end of file
{"name": "正向用例", "status": "passed", "attachments": [{"name": "log", "source": "6b322fcc-edea-4637-a974-038cddbdbc4b-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'维度管理'"}, {"name": "api", "value": "'根据维度编码删除维度'"}, {"name": "title", "value": "'正向用例'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds'"}, {"name": "mime", "value": "'query'"}, {"name": "req", "value": "'delete'"}, {"name": "case", "value": "{'ids': '需要更新'}"}, {"name": "expect", "value": "{'message': '删除维度成功!'}"}, {"name": "sql_type", "value": "'select'"}, {"name": "sql", "value": "'select ID_ from uc_demension where CODE_=\"test_dem\";'"}, {"name": "update", "value": "'ids'"}], "start": 1735445612460, "stop": 1735445612518, "uuid": "82481c8a-789d-44df-811d-9ec9c43f6dfc", "historyId": "5e96723d0cec8ad6e36dfbdd0c60ab19", "testCaseId": "c3a7d197e455a22b5f54ca08e9efb1a6", "fullName": "test_case.test_user_farke.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "维度管理"}, {"name": "story", "value": "根据维度编码删除维度"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-farke"}, {"name": "parentSuite", "value": "test_case.test_user_farke"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_farke.test_bpm"}]}
\ No newline at end of file
{"uuid": "a243c780-7fe5-4f2a-a35b-c368c60e502d", "befores": [{"name": "mime", "status": "passed", "start": 1735445613158, "stop": 1735445613158}], "start": 1735445613158, "stop": 1735445613205}
\ No newline at end of file
{"uuid": "5e02588c-939e-473f-aa32-dc67f3a7619c", "befores": [{"name": "update", "status": "passed", "start": 1735445613494, "stop": 1735445613494}], "start": 1735445613494, "stop": 1735445613544}
\ No newline at end of file
{"uuid": "cc492bb0-d66a-4beb-afde-a1eee31279d9", "befores": [{"name": "level", "status": "passed", "start": 1735445612679, "stop": 1735445612679}], "start": 1735445612679, "stop": 1735445612717}
\ No newline at end of file
{"uuid": "3b1e085f-b4fe-48a9-a54c-9a9c472ea2c4", "befores": [{"name": "api", "status": "passed", "start": 1735445612817, "stop": 1735445612817}], "start": 1735445612817, "stop": 1735445612857}
\ No newline at end of file
{"uuid": "24cc2f9b-0c65-49f6-b60f-46274581f7ed", "befores": [{"name": "api", "status": "passed", "start": 1735445613583, "stop": 1735445613583}], "start": 1735445613583, "stop": 1735445613642}
\ No newline at end of file
{"uuid": "5e9ca623-9cdf-470d-bcdd-e020d8ad00ca", "befores": [{"name": "update", "status": "passed", "start": 1735445612459, "stop": 1735445612459}], "start": 1735445612459, "stop": 1735445612519}
\ No newline at end of file
{"uuid": "a2a986e5-d1fa-4a31-94d8-17af328fb3d3", "befores": [{"name": "sql", "status": "passed", "start": 1735445612418, "stop": 1735445612418}], "start": 1735445612418, "stop": 1735445612448}
\ No newline at end of file
{"uuid": "edaf54cd-d54e-458b-87f0-5d734f990867", "befores": [{"name": "req", "status": "passed", "start": 1735445613213, "stop": 1735445613213}], "start": 1735445613213, "stop": 1735445613251}
\ No newline at end of file
{"uuid": "028aa1eb-17b3-40b5-b1b3-356d8c5f0086", "befores": [{"name": "url", "status": "passed", "start": 1735445612417, "stop": 1735445612417}], "start": 1735445612417, "stop": 1735445612453}
\ No newline at end of file
{"uuid": "9e1032da-e6c8-4e87-acab-be7cd552a0f9", "befores": [{"name": "url", "status": "passed", "start": 1735445613583, "stop": 1735445613583}], "start": 1735445613583, "stop": 1735445613641}
\ No newline at end of file
{"uuid": "b286832b-e1e2-4953-9f07-f8dc60880c84", "befores": [{"name": "req", "status": "passed", "start": 1735445613550, "stop": 1735445613550}], "start": 1735445613550, "stop": 1735445613579}
\ No newline at end of file
{"uuid": "13ce75c1-2c85-4a60-a20c-c29efeff0cc8", "befores": [{"name": "update", "status": "passed", "start": 1735445613064, "stop": 1735445613064}], "start": 1735445613064, "stop": 1735445613103}
\ No newline at end of file
{"uuid": "d85676b0-6ee2-4a8a-bca2-8e67040bb355", "befores": [{"name": "mime", "status": "passed", "start": 1735445613260, "stop": 1735445613260}], "start": 1735445613260, "stop": 1735445613306}
\ No newline at end of file
{"uuid": "0b746302-1357-4981-bfdc-968938f19630", "befores": [{"name": "expect", "status": "passed", "start": 1735445613260, "stop": 1735445613260}], "start": 1735445613260, "stop": 1735445613304}
\ No newline at end of file
{"uuid": "a2687f2b-cff8-4982-b4f6-b4f580a23d56", "befores": [{"name": "mime", "status": "passed", "start": 1735445613794, "stop": 1735445613794}], "start": 1735445613794, "stop": 1735445613858}
\ No newline at end of file
{"uuid": "7f633cfd-7225-4c64-83ae-c6d4b23a8e55", "befores": [{"name": "update", "status": "passed", "start": 1735445613158, "stop": 1735445613158}], "start": 1735445613158, "stop": 1735445613200}
\ No newline at end of file
{"uuid": "9dd1a641-921b-4404-ab3c-7ec1ef4fd563", "befores": [{"name": "api", "status": "passed", "start": 1735445612721, "stop": 1735445612721}], "start": 1735445612721, "stop": 1735445612769}
\ No newline at end of file
{"uuid": "13e7d89b-824d-4333-b941-381e87e0d9dd", "befores": [{"name": "update", "status": "passed", "start": 1735445612610, "stop": 1735445612610}], "start": 1735445612610, "stop": 1735445612644}
\ No newline at end of file
{"uuid": "1b2e2023-cb10-47a8-ab18-9592f8dfbb3d", "befores": [{"name": "req", "status": "passed", "start": 1735445612651, "stop": 1735445612651}], "start": 1735445612651, "stop": 1735445612675}
\ No newline at end of file
{"name": "反向用例-用户名正确,密码为空", "status": "broken", "statusDetails": {"message": "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?", "trace": "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError"}, "attachments": [{"name": "log", "source": "15969f40-dd8c-4730-acca-d0395cb38df2-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'认证接口'"}, {"name": "api", "value": "'登录系统'"}, {"name": "title", "value": "'反向用例-用户名正确,密码为空'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/auth'"}, {"name": "mime", "value": "'application/json'"}, {"name": "req", "value": "'POST'"}, {"name": "case", "value": "{'username': 'admin', 'password': ''}"}, {"name": "expect", "value": "{'message': '账号密码错误'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445613159, "stop": 1735445613192, "uuid": "c39ad1f8-e36a-4d6e-bf61-e42de64b15e9", "historyId": "3a19a7c1988bebb35bd7d53f782c4cf7", "testCaseId": "db9486bc3117698c9d60cda9ad909479", "fullName": "test_case.test_user_jack.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "认证接口"}, {"name": "story", "value": "登录系统"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-jack"}, {"name": "parentSuite", "value": "test_case.test_user_jack"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_jack.test_bpm"}]}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_farke\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:select, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:40
\ No newline at end of file
{"uuid": "2316da00-99b6-4c6d-b44a-17671af6f917", "befores": [{"name": "level", "status": "passed", "start": 1735445613493, "stop": 1735445613493}], "start": 1735445613493, "stop": 1735445613547}
\ No newline at end of file
{"uuid": "437b7e9a-5e4d-415e-9f57-73f03bcf8a36", "befores": [{"name": "expect", "status": "passed", "start": 1735445612610, "stop": 1735445612610}], "start": 1735445612610, "stop": 1735445612645}
\ No newline at end of file
{"uuid": "ba7a1ca4-a6b4-42a6-be0b-4b46410997c9", "befores": [{"name": "expect", "status": "passed", "start": 1735445613014, "stop": 1735445613014}], "start": 1735445613014, "stop": 1735445613056}
\ No newline at end of file
{"uuid": "42073c80-2b33-4f21-a05d-2988d04ef399", "befores": [{"name": "api", "status": "passed", "start": 1735445612417, "stop": 1735445612417}], "start": 1735445612417, "stop": 1735445612456}
\ No newline at end of file
{"uuid": "af47c9d1-6e92-48a8-a8d1-43477877ef46", "befores": [{"name": "api", "status": "passed", "start": 1735445612679, "stop": 1735445612679}], "start": 1735445612679, "stop": 1735445612717}
\ No newline at end of file
{"uuid": "9e5a2af9-93ee-4ed5-92dc-1ef3430a8b35", "befores": [{"name": "level", "status": "passed", "start": 1735445613111, "stop": 1735445613111}], "start": 1735445613111, "stop": 1735445613153}
\ No newline at end of file
{"uuid": "c1cc537e-cbbc-463a-8a4a-4db3fd3691ec", "befores": [{"name": "update", "status": "passed", "start": 1735445613646, "stop": 1735445613646}], "start": 1735445613646, "stop": 1735445613677}
\ No newline at end of file
{"uuid": "bad65c30-eade-4373-9728-f72659af8fbf", "befores": [{"name": "update", "status": "passed", "start": 1735445613311, "stop": 1735445613311}], "start": 1735445613311, "stop": 1735445613333}
\ No newline at end of file
{"uuid": "191574be-ec32-42ad-8e19-416891ebd42e", "befores": [{"name": "sql", "status": "passed", "start": 1735445613311, "stop": 1735445613311}], "start": 1735445613311, "stop": 1735445613334}
\ No newline at end of file
{"name": "正向用例", "status": "passed", "attachments": [{"name": "log", "source": "b4534a6c-5bcc-4c39-a21d-a7359ad605b0-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'组织管理'"}, {"name": "api", "value": "'组织加入用户'"}, {"name": "title", "value": "'正向用例'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/api/org/v1/orgUsers/addUsersForOrg'"}, {"name": "mime", "value": "'query'"}, {"name": "req", "value": "'post'"}, {"name": "case", "value": "{'orgCode': 'test_org_code', 'accounts': 'admin'}"}, {"name": "expect", "value": "{'message': '加入成功'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445613646, "stop": 1735445613677, "uuid": "b0cebcbd-09ca-4e2e-ad68-705558b973ed", "historyId": "de9169adb3047aea29cb4975de8561c7", "testCaseId": "9c935d3786c3b36d2f34fb9b06b5b4fd", "fullName": "test_case.test_user_shy.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "组织管理"}, {"name": "story", "value": "组织加入用户"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-shy"}, {"name": "parentSuite", "value": "test_case.test_user_shy"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_shy.test_bpm"}]}
\ No newline at end of file
{"uuid": "9e5260fb-6f95-4f9b-9f8e-6f74e0e2e4f8", "befores": [{"name": "case", "status": "passed", "start": 1735445612721, "stop": 1735445612721}], "start": 1735445612721, "stop": 1735445612763}
\ No newline at end of file
{"uuid": "64e436aa-d14b-45e4-9aaa-659c5dc3d394", "befores": [{"name": "sql", "status": "passed", "start": 1735445612610, "stop": 1735445612610}], "start": 1735445612610, "stop": 1735445612645}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:18
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:17
INFO  root:__init__.py:59 执行的功能为:__init__, 功能的描述为:获取项目下基础配置ini配置文件的路径,创建Configparser对象,读取ini文件, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:17
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\read_basic_ini.py, 所做的行为:17
INFO  root:__init__.py:44 执行的功能为:get_host, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\read_basic_ini.py, 所做的行为:24
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_shy\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:delete, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:35
\ No newline at end of file
{"uuid": "5736a3d0-476d-42ce-801d-a4d160b455e8", "befores": [{"name": "mime", "status": "passed", "start": 1735445613112, "stop": 1735445613112}], "start": 1735445613111, "stop": 1735445613152}
\ No newline at end of file
{"uuid": "755c407f-576d-4f61-b67a-2de6c3480ba2", "befores": [{"name": "api", "status": "passed", "start": 1735445613064, "stop": 1735445613064}], "start": 1735445613064, "stop": 1735445613108}
\ No newline at end of file
{"uuid": "757a967d-1de4-4c13-b773-1279282f5713", "befores": [{"name": "case", "status": "passed", "start": 1735445612860, "stop": 1735445612860}], "start": 1735445612860, "stop": 1735445612959}
\ No newline at end of file
{"uuid": "02a78c23-cab0-4911-ba2c-85e86e5522e6", "befores": [{"name": "update", "status": "passed", "start": 1735445612964, "stop": 1735445612964}], "start": 1735445612964, "stop": 1735445613005}
\ No newline at end of file
{"name": "正向用例", "status": "passed", "attachments": [{"name": "log", "source": "9d509aba-7ed9-4f0e-9763-8eb3cfb05247-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'组织管理'"}, {"name": "api", "value": "'删除组织'"}, {"name": "title", "value": "'正向用例'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/api/org/v1/org/deleteOrg'"}, {"name": "mime", "value": "'form'"}, {"name": "req", "value": "'post'"}, {"name": "case", "value": "'test_org_code'"}, {"name": "expect", "value": "{'message': '删除组织成功!'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445613742, "stop": 1735445613784, "uuid": "8aa382ac-8a96-4a4f-8eb1-81333fd539e7", "historyId": "f42bdf750b6af50c31f0619646ef26c2", "testCaseId": "9c935d3786c3b36d2f34fb9b06b5b4fd", "fullName": "test_case.test_user_shy.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "组织管理"}, {"name": "story", "value": "删除组织"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-shy"}, {"name": "parentSuite", "value": "test_case.test_user_shy"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_shy.test_bpm"}]}
\ No newline at end of file
{"uuid": "2a0d1f2c-cdc2-4c88-b67e-cb72cc7de3f1", "befores": [{"name": "expect", "status": "passed", "start": 1735445612651, "stop": 1735445612651}], "start": 1735445612651, "stop": 1735445612674}
\ No newline at end of file
{"uuid": "6415fb7a-9111-47d8-b04c-3392b337692a", "befores": [{"name": "expect", "status": "passed", "start": 1735445613494, "stop": 1735445613494}], "start": 1735445613494, "stop": 1735445613545}
\ No newline at end of file
{"uuid": "efebc91f-ea04-44f1-87d4-c4f14af58fc1", "befores": [{"name": "title", "status": "passed", "start": 1735445613213, "stop": 1735445613213}], "start": 1735445613213, "stop": 1735445613255}
\ No newline at end of file
{"name": "正向用例", "status": "passed", "attachments": [{"name": "log", "source": "e6122907-0dbc-4206-92dd-a40608724252-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'维度管理'"}, {"name": "api", "value": "'根据维度编码删除维度'"}, {"name": "title", "value": "'正向用例'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds'"}, {"name": "mime", "value": "'query'"}, {"name": "req", "value": "'delete'"}, {"name": "case", "value": "{'ids': '需要更新'}"}, {"name": "expect", "value": "{'message': '删除维度成功!'}"}, {"name": "sql_type", "value": "'select'"}, {"name": "sql", "value": "'select ID_ from uc_demension where CODE_=\"test_dem\";'"}, {"name": "update", "value": "'ids'"}], "start": 1735445613794, "stop": 1735445613855, "uuid": "a7706588-67cd-4809-a911-7d20467a8d4a", "historyId": "004003df845b679380c00f2ed705fe23", "testCaseId": "9c935d3786c3b36d2f34fb9b06b5b4fd", "fullName": "test_case.test_user_shy.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "维度管理"}, {"name": "story", "value": "根据维度编码删除维度"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-shy"}, {"name": "parentSuite", "value": "test_case.test_user_shy"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_shy.test_bpm"}]}
\ No newline at end of file
{"uuid": "df1424d1-4ec3-4f8a-899a-95f9cc9f1b96", "befores": [{"name": "expect", "status": "passed", "start": 1735445613689, "stop": 1735445613689}], "start": 1735445613689, "stop": 1735445613733}
\ No newline at end of file
{"uuid": "7287303c-65ff-4d9f-aa71-be6bf730d3a0", "befores": [{"name": "module", "status": "passed", "start": 1735445613794, "stop": 1735445613794}], "start": 1735445613794, "stop": 1735445613859}
\ No newline at end of file
{"uuid": "e5056f76-9d68-4bc4-a190-0187b8f0d388", "befores": [{"name": "req", "status": "passed", "start": 1735445612772, "stop": 1735445612772}], "start": 1735445612772, "stop": 1735445612809}
\ No newline at end of file
{"uuid": "d5ed2cde-72da-4379-9c32-39a1541d2c33", "befores": [{"name": "level", "status": "passed", "start": 1735445612817, "stop": 1735445612817}], "start": 1735445612817, "stop": 1735445612857}
\ No newline at end of file
{"uuid": "918ab8f0-208c-4ade-b7bd-60f124c58c29", "befores": [{"name": "url", "status": "passed", "start": 1735445612610, "stop": 1735445612610}], "start": 1735445612610, "stop": 1735445612647}
\ No newline at end of file
{"uuid": "5753624f-bbff-4583-96fb-330649320865", "befores": [{"name": "mime", "status": "passed", "start": 1735445613645, "stop": 1735445613645}], "start": 1735445613645, "stop": 1735445613680}
\ No newline at end of file
{"uuid": "df516f86-a496-4590-98b8-43868df5efa3", "befores": [{"name": "update", "status": "passed", "start": 1735445613214, "stop": 1735445613214}], "start": 1735445613214, "stop": 1735445613248}
\ No newline at end of file
{"uuid": "4f10f0b7-7e12-487f-b28b-3a467ddd2736", "befores": [{"name": "expect", "status": "passed", "start": 1735445613794, "stop": 1735445613794}], "start": 1735445613794, "stop": 1735445613857}
\ No newline at end of file
{"uuid": "8d880af4-d4b5-404a-bc5f-db96ac6bdbd0", "befores": [{"name": "expect", "status": "passed", "start": 1735445612860, "stop": 1735445612860}], "start": 1735445612860, "stop": 1735445612958}
\ No newline at end of file
{"uuid": "7cf484f9-a489-4479-b404-d76fdfb55b69", "befores": [{"name": "api", "status": "passed", "start": 1735445613260, "stop": 1735445613260}], "start": 1735445613260, "stop": 1735445613308}
\ No newline at end of file
{"uuid": "28f86351-1dfe-4545-8256-b943e5bef9d7", "befores": [{"name": "title", "status": "passed", "start": 1735445612721, "stop": 1735445612721}], "start": 1735445612721, "stop": 1735445612768}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
{"uuid": "be626dfc-9d9c-47d9-b51a-bffdca73054e", "befores": [{"name": "module", "status": "passed", "start": 1735445612459, "stop": 1735445612459}], "start": 1735445612459, "stop": 1735445612526}
\ No newline at end of file
{"uuid": "64749ee6-30d6-4576-b008-fb785f1990ad", "befores": [{"name": "case", "status": "passed", "start": 1735445613494, "stop": 1735445613494}], "start": 1735445613494, "stop": 1735445613546}
\ No newline at end of file
{"uuid": "955ea054-509c-4a8a-bc7d-8c1bcc397ccf", "befores": [{"name": "url", "status": "passed", "start": 1735445613111, "stop": 1735445613111}], "start": 1735445613111, "stop": 1735445613153}
\ No newline at end of file
{"uuid": "081d4641-c7be-41de-8d97-f1da3f29c658", "befores": [{"name": "title", "status": "passed", "start": 1735445613794, "stop": 1735445613794}], "start": 1735445613794, "stop": 1735445613859}
\ No newline at end of file
{"name": "反向用例-用户名过长,密码正确", "status": "passed", "attachments": [{"name": "log", "source": "1205618e-2690-47cf-8584-91b794d39a88-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'认证接口'"}, {"name": "api", "value": "'登录系统'"}, {"name": "title", "value": "'反向用例-用户名过长,密码正确'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/auth'"}, {"name": "mime", "value": "'application/json'"}, {"name": "req", "value": "'POST'"}, {"name": "case", "value": "{'username': 'adminadminadminadminadminadminadmin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}"}, {"name": "expect", "value": "{'message': '账户错误或该租户未启用'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445612722, "stop": 1735445612761, "uuid": "b5f5a425-1733-4716-859b-c363483cd257", "historyId": "344354ac13d2cf6e490002f0f54c0ace", "testCaseId": "db9486bc3117698c9d60cda9ad909479", "fullName": "test_case.test_user_jack.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "认证接口"}, {"name": "story", "value": "登录系统"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-jack"}, {"name": "parentSuite", "value": "test_case.test_user_jack"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_jack.test_bpm"}]}
\ No newline at end of file
{"uuid": "804dd013-1558-4019-bf63-1de01df8d56f", "befores": [{"name": "level", "status": "passed", "start": 1735445612651, "stop": 1735445612651}], "start": 1735445612651, "stop": 1735445612676}
\ No newline at end of file
{"uuid": "41c0a404-f1b9-4b80-b189-908f0d00b19e", "befores": [{"name": "module", "status": "passed", "start": 1735445612610, "stop": 1735445612610}], "start": 1735445612610, "stop": 1735445612648}
\ No newline at end of file
{"uuid": "033d31b0-3994-4831-94b3-2094244b2eab", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445613158, "stop": 1735445613158}], "start": 1735445613158, "stop": 1735445613203}
\ No newline at end of file
{"uuid": "07140e86-f7b3-4dc8-bd15-afc0ccd49311", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445613689, "stop": 1735445613689}], "start": 1735445613689, "stop": 1735445613733}
\ No newline at end of file
{"uuid": "6d5f53ca-0120-4a1e-b064-561ec2526dae", "children": ["5f49b49c-26a7-4616-bb81-c428d5cefb90", "75a7c424-b100-4da9-8512-0412bae75053", "41a1e7b8-573a-458a-8246-e449004f3836", "b0cebcbd-09ca-4e2e-ad68-705558b973ed", "83bb17bc-0e79-4795-84b2-3ad6d0e7b0cd", "8aa382ac-8a96-4a4f-8eb1-81333fd539e7", "a7706588-67cd-4809-a911-7d20467a8d4a"], "befores": [{"name": "req_fix", "status": "passed", "start": 1735445613383, "stop": 1735445613493}], "afters": [{"name": "req_fix::0", "status": "passed", "start": 1735445613860, "stop": 1735445613860}], "start": 1735445613383, "stop": 1735445613860}
\ No newline at end of file
{"uuid": "d7be225d-8be5-4bcc-aadf-50d03a9a918c", "befores": [{"name": "module", "status": "passed", "start": 1735445613550, "stop": 1735445613550}], "start": 1735445613550, "stop": 1735445613581}
\ No newline at end of file
{"uuid": "22ae564d-c9e5-4e41-ae9e-dfdaadbaa654", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445613014, "stop": 1735445613014}], "start": 1735445613014, "stop": 1735445613055}
\ No newline at end of file
{"uuid": "6ff137b1-b126-499c-ab0c-cf6fabff6f57", "befores": [{"name": "title", "status": "passed", "start": 1735445613550, "stop": 1735445613550}], "start": 1735445613550, "stop": 1735445613581}
\ No newline at end of file
{"uuid": "cccc9a07-d112-4cfc-afe2-4e6bad2527e1", "befores": [{"name": "update", "status": "passed", "start": 1735445613550, "stop": 1735445613550}], "start": 1735445613550, "stop": 1735445613577}
\ No newline at end of file
{"uuid": "c1511ec6-b249-4d91-bd29-b2f7fe11c9e4", "befores": [{"name": "api", "status": "passed", "start": 1735445613342, "stop": 1735445613342}], "start": 1735445613342, "stop": 1735445613379}
\ No newline at end of file
{"uuid": "7ba43382-2624-48aa-80a5-9d5ddf5a8067", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445613064, "stop": 1735445613064}], "start": 1735445613064, "stop": 1735445613104}
\ No newline at end of file
{"uuid": "1588e2c5-c91b-495d-8e70-a58562d076c7", "befores": [{"name": "expect", "status": "passed", "start": 1735445613646, "stop": 1735445613646}], "start": 1735445613646, "stop": 1735445613678}
\ No newline at end of file
{"uuid": "bf097a15-2600-43f3-9e1d-891e17d67fc5", "befores": [{"name": "case", "status": "passed", "start": 1735445613794, "stop": 1735445613794}], "start": 1735445613794, "stop": 1735445613857}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
{"uuid": "71ff176c-4c70-4117-8a31-04bf5b251d8d", "befores": [{"name": "update", "status": "passed", "start": 1735445613689, "stop": 1735445613689}], "start": 1735445613689, "stop": 1735445613732}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
\ No newline at end of file
{"uuid": "8b9fa758-d502-4a35-8946-02ce38e04192", "befores": [{"name": "module", "status": "passed", "start": 1735445613158, "stop": 1735445613158}], "start": 1735445613158, "stop": 1735445613208}
\ No newline at end of file
{"name": "反向用例-用户名正确,密码为空", "status": "broken", "statusDetails": {"message": "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?", "trace": "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError"}, "attachments": [{"name": "log", "source": "b477e20c-0c1f-402e-8b82-972a46a8b77a-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'认证接口'"}, {"name": "api", "value": "'登录系统'"}, {"name": "title", "value": "'反向用例-用户名正确,密码为空'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/auth'"}, {"name": "mime", "value": "'application/json'"}, {"name": "req", "value": "'POST'"}, {"name": "case", "value": "{'username': 'admin', 'password': ''}"}, {"name": "expect", "value": "{'message': '账号密码错误'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445613064, "stop": 1735445613099, "uuid": "572a4c8b-e1b3-4ccf-a507-1625d45f0945", "historyId": "3a19a7c1988bebb35bd7d53f782c4cf7", "testCaseId": "db9486bc3117698c9d60cda9ad909479", "fullName": "test_case.test_user_jack.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "认证接口"}, {"name": "story", "value": "登录系统"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-jack"}, {"name": "parentSuite", "value": "test_case.test_user_jack"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_jack.test_bpm"}]}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
{"uuid": "079686c9-2455-4e58-a628-9c082c69d4a1", "befores": [{"name": "case_data", "status": "passed", "start": 1735445612177, "stop": 1735445612177}], "start": 1735445612177, "stop": 1735445612227}
\ No newline at end of file
{"uuid": "2e2f1beb-fda2-48a1-b56a-0b06aabeeeeb", "befores": [{"name": "case", "status": "passed", "start": 1735445613689, "stop": 1735445613689}], "start": 1735445613689, "stop": 1735445613734}
\ No newline at end of file
{"uuid": "4418545a-aa2b-4241-a82a-c5aa8865fc18", "befores": [{"name": "mime", "status": "passed", "start": 1735445613213, "stop": 1735445613213}], "start": 1735445613213, "stop": 1735445613252}
\ No newline at end of file
{"uuid": "f8c63219-412b-4a7a-a7dc-695fc70af746", "befores": [{"name": "level", "status": "passed", "start": 1735445612610, "stop": 1735445612610}], "start": 1735445612610, "stop": 1735445612647}
\ No newline at end of file
{"uuid": "6af2f6ad-0bc1-4b55-bedc-4ed78847f335", "befores": [{"name": "sql", "status": "passed", "start": 1735445612356, "stop": 1735445612356}], "start": 1735445612356, "stop": 1735445612409}
\ No newline at end of file
{"uuid": "e1cfc6d5-4a2c-4822-84e6-1b90bebf6af6", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445612651, "stop": 1735445612651}], "start": 1735445612651, "stop": 1735445612674}
\ No newline at end of file
{"uuid": "172fb3fd-4800-407b-9cac-4cb4443d8d0e", "befores": [{"name": "level", "status": "passed", "start": 1735445612964, "stop": 1735445612964}], "start": 1735445612964, "stop": 1735445613009}
\ No newline at end of file
{"uuid": "8b0d84ff-72e3-4c1b-a6a3-d64a9a1de539", "children": ["64d1bbb7-5934-43af-806f-04b273de2808", "7f653e0c-77c3-42ef-a07c-64bf1877e1ce", "6fe412bb-2a2e-4449-af2a-e958736eccdb", "add3fa87-a456-4cee-8673-de5ddaffdc4b", "89d14e16-850e-4938-80f7-e0b4cb5ae590", "82481c8a-789d-44df-811d-9ec9c43f6dfc", "1ba9328c-441a-433a-a6eb-1165c75426dc", "b8d2c5e8-d223-427a-b36c-17807c617c29", "a28e9887-085c-4a1d-8e18-9059835eda60", "b5f5a425-1733-4716-859b-c363483cd257", "407a8c6f-b3e6-4a18-aacb-ba3a98b360fe", "ad25d1a9-d5d2-4c3d-87d6-4eae81e46fe5", "f0ff4608-153d-494f-b8ec-6b282f9f00c0", "d0246862-fe88-446c-8d83-c5f63910e229", "ca26324d-1d24-4a1e-8657-f40e0da15440", "572a4c8b-e1b3-4ccf-a507-1625d45f0945", "169ce750-d9c9-4184-8081-7c4e45a82efd", "c39ad1f8-e36a-4d6e-bf61-e42de64b15e9", "ff8f9f74-16cc-43f0-bca5-794e7bf99557", "37a80a36-073e-42f3-a0a7-1e5e89ddeec2", "04a1597f-5c10-479d-96e1-5c52b1d62325", "409627af-cdec-4beb-a631-24032a138a6d", "5f49b49c-26a7-4616-bb81-c428d5cefb90", "75a7c424-b100-4da9-8512-0412bae75053", "41a1e7b8-573a-458a-8246-e449004f3836", "b0cebcbd-09ca-4e2e-ad68-705558b973ed", "83bb17bc-0e79-4795-84b2-3ad6d0e7b0cd", "8aa382ac-8a96-4a4f-8eb1-81333fd539e7", "a7706588-67cd-4809-a911-7d20467a8d4a"], "befores": [{"name": "_session_faker", "status": "passed", "start": 1735445612129, "stop": 1735445612176}], "start": 1735445612129, "stop": 1735445613863}
\ No newline at end of file
{"uuid": "fd961acb-68f3-40ea-a96e-891b8c38f48d", "befores": [{"name": "title", "status": "passed", "start": 1735445613342, "stop": 1735445613342}], "start": 1735445613342, "stop": 1735445613379}
\ No newline at end of file
{"uuid": "63512221-f850-43ca-89c7-053bc8060381", "children": ["1ba9328c-441a-433a-a6eb-1165c75426dc", "b8d2c5e8-d223-427a-b36c-17807c617c29", "a28e9887-085c-4a1d-8e18-9059835eda60", "b5f5a425-1733-4716-859b-c363483cd257", "407a8c6f-b3e6-4a18-aacb-ba3a98b360fe", "ad25d1a9-d5d2-4c3d-87d6-4eae81e46fe5", "f0ff4608-153d-494f-b8ec-6b282f9f00c0", "d0246862-fe88-446c-8d83-c5f63910e229", "ca26324d-1d24-4a1e-8657-f40e0da15440", "572a4c8b-e1b3-4ccf-a507-1625d45f0945", "169ce750-d9c9-4184-8081-7c4e45a82efd", "c39ad1f8-e36a-4d6e-bf61-e42de64b15e9", "ff8f9f74-16cc-43f0-bca5-794e7bf99557", "37a80a36-073e-42f3-a0a7-1e5e89ddeec2", "04a1597f-5c10-479d-96e1-5c52b1d62325", "409627af-cdec-4beb-a631-24032a138a6d"], "befores": [{"name": "req_fix", "status": "passed", "start": 1735445612530, "stop": 1735445612610}], "afters": [{"name": "req_fix::0", "status": "passed", "start": 1735445613861, "stop": 1735445613861}], "start": 1735445612530, "stop": 1735445613861}
\ No newline at end of file
{"uuid": "cbed8702-d2ce-4748-a9f5-c6587f2ec683", "befores": [{"name": "url", "status": "passed", "start": 1735445613342, "stop": 1735445613342}], "start": 1735445613342, "stop": 1735445613378}
\ No newline at end of file
{"uuid": "a02dd761-b9fc-4865-adab-45de1beea91b", "befores": [{"name": "module", "status": "passed", "start": 1735445613493, "stop": 1735445613493}], "start": 1735445613493, "stop": 1735445613548}
\ No newline at end of file
{"uuid": "765b9278-fb01-4ba0-9450-535d2acd3a30", "befores": [{"name": "sql", "status": "passed", "start": 1735445612721, "stop": 1735445612721}], "start": 1735445612721, "stop": 1735445612762}
\ No newline at end of file
{"uuid": "93f5b145-6fe3-4e7a-9c0b-35a467827697", "befores": [{"name": "req", "status": "passed", "start": 1735445612964, "stop": 1735445612964}], "start": 1735445612964, "stop": 1735445613008}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_shy\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
{"uuid": "bf741eff-3f20-457a-9b05-1bb58ad23acf", "befores": [{"name": "url", "status": "passed", "start": 1735445613014, "stop": 1735445613014}], "start": 1735445613014, "stop": 1735445613057}
\ No newline at end of file
{"uuid": "acdb0174-2573-4c9a-a030-1d09a30453ab", "befores": [{"name": "req", "status": "passed", "start": 1735445612355, "stop": 1735445612355}], "start": 1735445612355, "stop": 1735445612412}
\ No newline at end of file
{"name": "反向用例-用户名为特殊字符,密码正确", "status": "passed", "attachments": [{"name": "log", "source": "227fd7f1-a574-47fb-8c34-6076ac7f898a-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'认证接口'"}, {"name": "api", "value": "'登录系统'"}, {"name": "title", "value": "'反向用例-用户名为特殊字符,密码正确'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/auth'"}, {"name": "mime", "value": "'application/json'"}, {"name": "req", "value": "'POST'"}, {"name": "case", "value": "{'username': '▣▤▥▦▩◘◙', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}"}, {"name": "expect", "value": "{'message': '账户错误或该租户未启用'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445612773, "stop": 1735445612807, "uuid": "407a8c6f-b3e6-4a18-aacb-ba3a98b360fe", "historyId": "5e07a2f2ebab76d23f195c11c8f0fb66", "testCaseId": "db9486bc3117698c9d60cda9ad909479", "fullName": "test_case.test_user_jack.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "认证接口"}, {"name": "story", "value": "登录系统"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-jack"}, {"name": "parentSuite", "value": "test_case.test_user_jack"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_jack.test_bpm"}]}
\ No newline at end of file
{"uuid": "f462b64a-cb69-4a40-b672-1d7930cd333e", "befores": [{"name": "url", "status": "passed", "start": 1735445613260, "stop": 1735445613260}], "start": 1735445613260, "stop": 1735445613307}
\ No newline at end of file
{"uuid": "da04130e-3f15-4fd4-8493-0a82f4f82efc", "befores": [{"name": "case", "status": "passed", "start": 1735445613112, "stop": 1735445613112}], "start": 1735445613112, "stop": 1735445613152}
\ No newline at end of file
{"name": "反向用例-用户名过短,密码正确", "status": "passed", "attachments": [{"name": "log", "source": "86960058-7264-40b7-955f-b9980eb16fc8-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'认证接口'"}, {"name": "api", "value": "'登录系统'"}, {"name": "title", "value": "'反向用例-用户名过短,密码正确'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/auth'"}, {"name": "mime", "value": "'application/json'"}, {"name": "req", "value": "'POST'"}, {"name": "case", "value": "{'username': 'a', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}"}, {"name": "expect", "value": "{'message': '账户错误或该租户未启用'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445612680, "stop": 1735445612712, "uuid": "a28e9887-085c-4a1d-8e18-9059835eda60", "historyId": "5b77bd45f8b3a2b7bb68277ddd6b8faa", "testCaseId": "db9486bc3117698c9d60cda9ad909479", "fullName": "test_case.test_user_jack.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "认证接口"}, {"name": "story", "value": "登录系统"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-jack"}, {"name": "parentSuite", "value": "test_case.test_user_jack"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_jack.test_bpm"}]}
\ No newline at end of file
{"uuid": "6039dec9-2262-45a1-b119-26c41cf8a353", "befores": [{"name": "case_data", "status": "passed", "start": 1735445612232, "stop": 1735445612232}], "start": 1735445612232, "stop": 1735445612260}
\ No newline at end of file
{"uuid": "c238ceee-9218-4ccf-8490-28c51af0b31e", "befores": [{"name": "module", "status": "passed", "start": 1735445612679, "stop": 1735445612679}], "start": 1735445612679, "stop": 1735445612718}
\ No newline at end of file
{"uuid": "2ade1b89-a143-48b8-a809-efee5c95516f", "befores": [{"name": "module", "status": "passed", "start": 1735445613064, "stop": 1735445613064}], "start": 1735445613064, "stop": 1735445613108}
\ No newline at end of file
{"uuid": "f72276ee-1aea-4308-9c6e-ceb80a403c1d", "befores": [{"name": "expect", "status": "passed", "start": 1735445612721, "stop": 1735445612721}], "start": 1735445612721, "stop": 1735445612763}
\ No newline at end of file
{"uuid": "52205ea6-72b4-4971-9629-a8f3f3bf2e8e", "befores": [{"name": "module", "status": "passed", "start": 1735445613111, "stop": 1735445613111}], "start": 1735445613111, "stop": 1735445613154}
\ No newline at end of file
{"uuid": "b4a8c859-b01d-4bd6-a829-34b2da9f2910", "befores": [{"name": "api", "status": "passed", "start": 1735445612860, "stop": 1735445612860}], "start": 1735445612860, "stop": 1735445612961}
\ No newline at end of file
{"uuid": "e3ae8946-3d61-48f2-bbd4-24b0c25cdadc", "befores": [{"name": "title", "status": "passed", "start": 1735445612860, "stop": 1735445612860}], "start": 1735445612860, "stop": 1735445612960}
\ No newline at end of file
{"uuid": "be0d33ad-6905-4e43-9418-b5439a8cbe62", "befores": [{"name": "mime", "status": "passed", "start": 1735445613550, "stop": 1735445613550}], "start": 1735445613550, "stop": 1735445613580}
\ No newline at end of file
{"uuid": "20ee05e9-c310-4f99-8c12-cf6a607ee620", "befores": [{"name": "url", "status": "passed", "start": 1735445613493, "stop": 1735445613493}], "start": 1735445613493, "stop": 1735445613547}
\ No newline at end of file
{"uuid": "284f9a4b-8d4f-42bb-aeb2-eee51b3f8c17", "befores": [{"name": "level", "status": "passed", "start": 1735445613064, "stop": 1735445613064}], "start": 1735445613064, "stop": 1735445613107}
\ No newline at end of file
{"name": "正向用例", "status": "passed", "attachments": [{"name": "log", "source": "4cc9a09f-fd61-41f3-ad7f-126fc0f7db37-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'维度管理'"}, {"name": "api", "value": "'更新维度'"}, {"name": "title", "value": "'正向用例'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/api/demension/v1/dem/updateDem'"}, {"name": "mime", "value": "'json'"}, {"name": "req", "value": "'put'"}, {"name": "case", "value": "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度-更新'}"}, {"name": "expect", "value": "{'message': '更新维度成功!'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445613550, "stop": 1735445613577, "uuid": "75a7c424-b100-4da9-8512-0412bae75053", "historyId": "9fcc5b45a482f74501a9f7c005752d90", "testCaseId": "9c935d3786c3b36d2f34fb9b06b5b4fd", "fullName": "test_case.test_user_shy.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "维度管理"}, {"name": "story", "value": "更新维度"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-shy"}, {"name": "parentSuite", "value": "test_case.test_user_shy"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_shy.test_bpm"}]}
\ No newline at end of file
{"uuid": "33f1fabe-53da-46f5-8c04-1991afc4a06d", "befores": [{"name": "mime", "status": "passed", "start": 1735445613584, "stop": 1735445613584}], "start": 1735445613584, "stop": 1735445613641}
\ No newline at end of file
{"uuid": "d720a3cd-6b54-424f-bca6-113272faf9bc", "befores": [{"name": "expect", "status": "passed", "start": 1735445613584, "stop": 1735445613584}], "start": 1735445613584, "stop": 1735445613640}
\ No newline at end of file
{"uuid": "c20868ec-1a0f-4692-ba89-887d04bc569d", "befores": [{"name": "api", "status": "passed", "start": 1735445612610, "stop": 1735445612610}], "start": 1735445612610, "stop": 1735445612648}
\ No newline at end of file
{"uuid": "533ddb06-862e-4122-beba-6deae75a872c", "befores": [{"name": "sql", "status": "passed", "start": 1735445613584, "stop": 1735445613584}], "start": 1735445613584, "stop": 1735445613640}
\ No newline at end of file
{"uuid": "093d5459-2031-46c4-a3fa-f9f148036c03", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445612680, "stop": 1735445612680}], "start": 1735445612680, "stop": 1735445612715}
\ No newline at end of file
{"uuid": "1fe32300-8fef-4ce3-bbf4-13569dc2a812", "befores": [{"name": "expect", "status": "passed", "start": 1735445613112, "stop": 1735445613112}], "start": 1735445613112, "stop": 1735445613150}
\ No newline at end of file
{"uuid": "2a13ad4d-f6c6-4747-a7bd-523ddaab7227", "befores": [{"name": "expect", "status": "passed", "start": 1735445613742, "stop": 1735445613742}], "start": 1735445613742, "stop": 1735445613786}
\ No newline at end of file
{"uuid": "9ed3c320-a61b-46e9-8fee-1fe470075239", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445612355, "stop": 1735445612355}], "start": 1735445612355, "stop": 1735445612410}
\ No newline at end of file
{"uuid": "2a8b24cf-6d06-4c31-8513-ceb08ccbd0e2", "befores": [{"name": "req", "status": "passed", "start": 1735445613158, "stop": 1735445613158}], "start": 1735445613158, "stop": 1735445613205}
\ No newline at end of file
{"uuid": "7d3d83a9-83fd-4d69-8d2c-ac0eabd6457a", "befores": [{"name": "update", "status": "passed", "start": 1735445613342, "stop": 1735445613342}], "start": 1735445613342, "stop": 1735445613376}
\ No newline at end of file
{"uuid": "b457042c-7a54-4774-86ed-a6704d79f767", "befores": [{"name": "expect", "status": "passed", "start": 1735445613214, "stop": 1735445613214}], "start": 1735445613214, "stop": 1735445613250}
\ No newline at end of file
{"uuid": "42e19aa4-3931-42be-a41c-75ee3753356d", "befores": [{"name": "case", "status": "passed", "start": 1735445612817, "stop": 1735445612817}], "start": 1735445612817, "stop": 1735445612854}
\ No newline at end of file
{"uuid": "b4487ca7-7ad1-44b1-b64b-06d7792a2a29", "befores": [{"name": "mime", "status": "passed", "start": 1735445613342, "stop": 1735445613342}], "start": 1735445613342, "stop": 1735445613378}
\ No newline at end of file
{"uuid": "d570a4c5-855c-46f6-9547-1e79589f1733", "befores": [{"name": "url", "status": "passed", "start": 1735445612459, "stop": 1735445612459}], "start": 1735445612459, "stop": 1735445612524}
\ No newline at end of file
{"uuid": "7f3fa6ca-19cc-4e12-8584-abbf156dc5d0", "befores": [{"name": "level", "status": "passed", "start": 1735445612355, "stop": 1735445612355}], "start": 1735445612355, "stop": 1735445612414}
\ No newline at end of file
{"uuid": "1c080fd2-1e5a-4bb6-b696-4c8c157c6284", "befores": [{"name": "update", "status": "passed", "start": 1735445612651, "stop": 1735445612651}], "start": 1735445612651, "stop": 1735445612672}
\ No newline at end of file
{"uuid": "0a0199a5-698a-40c8-aee6-4e68d6841c1b", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445613550, "stop": 1735445613550}], "start": 1735445613550, "stop": 1735445613578}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
{"uuid": "1607bec9-778a-4d50-b44d-7d56def3a714", "befores": [{"name": "title", "status": "passed", "start": 1735445612964, "stop": 1735445612964}], "start": 1735445612964, "stop": 1735445613009}
\ No newline at end of file
{"uuid": "5df17174-fbf0-40a6-a6b0-9458dacc5841", "befores": [{"name": "case", "status": "passed", "start": 1735445612459, "stop": 1735445612459}], "start": 1735445612459, "stop": 1735445612523}
\ No newline at end of file
{"uuid": "e70c36d5-0cde-44f3-b66e-9d3a257f1ebf", "befores": [{"name": "title", "status": "passed", "start": 1735445612232, "stop": 1735445612232}], "start": 1735445612232, "stop": 1735445612261}
\ No newline at end of file
{"uuid": "0f2e6208-2b8f-4230-a3f5-5061c90d0789", "befores": [{"name": "mime", "status": "passed", "start": 1735445613493, "stop": 1735445613493}], "start": 1735445613493, "stop": 1735445613546}
\ No newline at end of file
{"uuid": "f5b3130c-3ba9-4786-adc6-3b876ba95745", "befores": [{"name": "mime", "status": "passed", "start": 1735445612817, "stop": 1735445612817}], "start": 1735445612817, "stop": 1735445612855}
\ No newline at end of file
{"uuid": "dca53242-f1dc-42ab-8cfa-763512e1acd2", "befores": [{"name": "mime", "status": "passed", "start": 1735445612459, "stop": 1735445612459}], "start": 1735445612459, "stop": 1735445612524}
\ No newline at end of file
{"uuid": "6e4cbfa0-fed8-4643-a152-33061ff5a532", "befores": [{"name": "mime", "status": "passed", "start": 1735445612651, "stop": 1735445612651}], "start": 1735445612651, "stop": 1735445612675}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_shy\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
\ No newline at end of file
{"uuid": "aa27345a-e3fb-4544-9cf9-589a24cd1c06", "befores": [{"name": "level", "status": "passed", "start": 1735445612860, "stop": 1735445612860}], "start": 1735445612860, "stop": 1735445612960}
\ No newline at end of file
{"uuid": "e3529436-e0df-444d-a4e9-1f93da482005", "befores": [{"name": "update", "status": "passed", "start": 1735445612860, "stop": 1735445612860}], "start": 1735445612860, "stop": 1735445612957}
\ No newline at end of file
{"uuid": "7f1a0c41-bbee-478e-8714-2060249f4efc", "befores": [{"name": "sql", "status": "passed", "start": 1735445613112, "stop": 1735445613112}], "start": 1735445613112, "stop": 1735445613150}
\ No newline at end of file
{"uuid": "c2c6abf7-2b20-4b6b-b3e3-a60129b58dc7", "befores": [{"name": "mime", "status": "passed", "start": 1735445612964, "stop": 1735445612964}], "start": 1735445612964, "stop": 1735445613008}
\ No newline at end of file
{"uuid": "5b200f22-cef1-4950-91c5-931fe567c25b", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445612610, "stop": 1735445612610}], "start": 1735445612610, "stop": 1735445612645}
\ No newline at end of file
{"uuid": "c6cf9a1e-5a9a-4704-926d-8d90aa85b948", "befores": [{"name": "module", "status": "passed", "start": 1735445612417, "stop": 1735445612417}], "start": 1735445612417, "stop": 1735445612456}
\ No newline at end of file
{"uuid": "c35eeb06-3932-4eea-a782-47c39a07c4dd", "befores": [{"name": "url", "status": "passed", "start": 1735445612651, "stop": 1735445612651}], "start": 1735445612651, "stop": 1735445612676}
\ No newline at end of file
{"name": "反向用例-用户名正确,密码为特殊字符", "status": "passed", "attachments": [{"name": "log", "source": "2b3ac771-ff44-407c-88db-66ed70b375bd-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'认证接口'"}, {"name": "api", "value": "'登录系统'"}, {"name": "title", "value": "'反向用例-用户名正确,密码为特殊字符'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/auth'"}, {"name": "mime", "value": "'application/json'"}, {"name": "req", "value": "'POST'"}, {"name": "case", "value": "{'username': 'admin', 'password': '▣▤▥▦▩◘◙'}"}, {"name": "expect", "value": "{'message': '账号或密码错误'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445613311, "stop": 1735445613333, "uuid": "04a1597f-5c10-479d-96e1-5c52b1d62325", "historyId": "a64f3b1f5715e2f492a002ea2f21ac65", "testCaseId": "db9486bc3117698c9d60cda9ad909479", "fullName": "test_case.test_user_jack.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "认证接口"}, {"name": "story", "value": "登录系统"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-jack"}, {"name": "parentSuite", "value": "test_case.test_user_jack"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_jack.test_bpm"}]}
\ No newline at end of file
{"uuid": "5a5ef011-d414-4626-8cda-a845a9df4f57", "befores": [{"name": "case", "status": "passed", "start": 1735445613213, "stop": 1735445613214}], "start": 1735445613213, "stop": 1735445613251}
\ No newline at end of file
{"uuid": "3ce2d6e9-f45b-4768-822a-54568aa2ed8d", "befores": [{"name": "module", "status": "passed", "start": 1735445613014, "stop": 1735445613014}], "start": 1735445613014, "stop": 1735445613058}
\ No newline at end of file
{"name": "正向用例", "status": "passed", "attachments": [{"name": "log", "source": "748f1698-137a-4f67-89c3-9afde82b7c7b-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'维度管理'"}, {"name": "api", "value": "'添加维度'"}, {"name": "title", "value": "'正向用例'"}, {"name": "level", "value": "'高'"}, {"name": "url", "value": "'http://36.139.193.99:8088/api/demension/v1/dem/addDem'"}, {"name": "mime", "value": "'json'"}, {"name": "req", "value": "'post'"}, {"name": "case", "value": "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度'}"}, {"name": "expect", "value": "{'message': '添加维度成功!'}"}, {"name": "sql_type", "value": "'delete'"}, {"name": "sql", "value": "'delete from uc_demension where CODE_=\"test_dem\";'"}, {"name": "update", "value": "None"}], "start": 1735445613494, "stop": 1735445613544, "uuid": "5f49b49c-26a7-4616-bb81-c428d5cefb90", "historyId": "835bac4a67f4e5d25a5eb7b7d59cc4f6", "testCaseId": "9c935d3786c3b36d2f34fb9b06b5b4fd", "fullName": "test_case.test_user_shy.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "维度管理"}, {"name": "story", "value": "添加维度"}, {"name": "severity", "value": "高"}, {"name": "epic", "value": "BPM-shy"}, {"name": "parentSuite", "value": "test_case.test_user_shy"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_shy.test_bpm"}]}
\ No newline at end of file
{"name": "正向用例", "status": "passed", "attachments": [{"name": "log", "source": "28b98763-da5a-4038-bdc9-e9367ca62cbe-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'认证接口'"}, {"name": "api", "value": "'刷新token'"}, {"name": "title", "value": "'正向用例'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/refresh'"}, {"name": "mime", "value": "None"}, {"name": "req", "value": "'get'"}, {"name": "case", "value": "None"}, {"name": "expect", "value": "{'message': None}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445613342, "stop": 1735445613375, "uuid": "409627af-cdec-4beb-a631-24032a138a6d", "historyId": "008bb596be3cc0672bed7d964ad859fe", "testCaseId": "db9486bc3117698c9d60cda9ad909479", "fullName": "test_case.test_user_jack.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "认证接口"}, {"name": "story", "value": "刷新token"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-jack"}, {"name": "parentSuite", "value": "test_case.test_user_jack"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_jack.test_bpm"}]}
\ No newline at end of file
{"uuid": "039988f5-ef56-4f07-bca3-0dd7a1009f2e", "befores": [{"name": "url", "status": "passed", "start": 1735445613213, "stop": 1735445613213}], "start": 1735445613213, "stop": 1735445613253}
\ No newline at end of file
{"uuid": "73c19409-19a0-4630-b41f-d2445cbbecd9", "befores": [{"name": "case", "status": "passed", "start": 1735445613260, "stop": 1735445613260}], "start": 1735445613260, "stop": 1735445613305}
\ No newline at end of file
{"uuid": "dd409b88-81a8-41c4-9803-dc29fb2788bc", "befores": [{"name": "level", "status": "passed", "start": 1735445613213, "stop": 1735445613213}], "start": 1735445613213, "stop": 1735445613254}
\ No newline at end of file
{"uuid": "1bf4053b-3270-4996-80c7-8e849e20b4c5", "befores": [{"name": "api", "status": "passed", "start": 1735445613014, "stop": 1735445613014}], "start": 1735445613014, "stop": 1735445613058}
\ No newline at end of file
{"uuid": "5c20e2ac-c425-4b61-b990-989599da9845", "befores": [{"name": "req", "status": "passed", "start": 1735445612459, "stop": 1735445612459}], "start": 1735445612459, "stop": 1735445612523}
\ No newline at end of file
{"uuid": "64eb5cf3-5cc3-4a05-a1e5-b98534b855e5", "befores": [{"name": "level", "status": "passed", "start": 1735445613158, "stop": 1735445613158}], "start": 1735445613158, "stop": 1735445613206}
\ No newline at end of file
{"uuid": "a050d9a6-5f80-46db-9f14-3982d66af8da", "befores": [{"name": "case", "status": "passed", "start": 1735445612355, "stop": 1735445612355}], "start": 1735445612355, "stop": 1735445612411}
\ No newline at end of file
{"uuid": "7a305bbf-2c64-4e09-a78a-e29231a9fcb5", "befores": [{"name": "update", "status": "passed", "start": 1735445612721, "stop": 1735445612721}], "start": 1735445612721, "stop": 1735445612762}
\ No newline at end of file
{"uuid": "314c8a5b-6ca4-4fbf-979a-1df38ed29a69", "befores": [{"name": "api", "status": "passed", "start": 1735445613493, "stop": 1735445613493}], "start": 1735445613493, "stop": 1735445613547}
\ No newline at end of file
{"uuid": "c869d481-35f6-4ebd-b868-793b13d8efa8", "befores": [{"name": "level", "status": "passed", "start": 1735445613689, "stop": 1735445613689}], "start": 1735445613689, "stop": 1735445613735}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_shy\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
\ No newline at end of file
{"uuid": "002919fb-05bd-400e-9f48-08a7cd9df867", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445613112, "stop": 1735445613112}], "start": 1735445613112, "stop": 1735445613150}
\ No newline at end of file
{"uuid": "01a17376-50c1-447a-925b-6b6cd48b27e0", "befores": [{"name": "title", "status": "passed", "start": 1735445613064, "stop": 1735445613064}], "start": 1735445613064, "stop": 1735445613108}
\ No newline at end of file
{"name": "正向用例", "status": "passed", "attachments": [{"name": "log", "source": "e3e2fd84-8921-40a3-8895-b032019cf2cb-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'维度管理'"}, {"name": "api", "value": "'添加维度'"}, {"name": "title", "value": "'正向用例'"}, {"name": "level", "value": "'高'"}, {"name": "url", "value": "'http://36.139.193.99:8088/api/demension/v1/dem/addDem'"}, {"name": "mime", "value": "'json'"}, {"name": "req", "value": "'post'"}, {"name": "case", "value": "{'code': 'test_dem', 'description': '测试添加的维度', 'isDefault': 1, 'name': '测试维度'}"}, {"name": "expect", "value": "{'message': '添加维度成功!'}"}, {"name": "sql_type", "value": "'delete'"}, {"name": "sql", "value": "'delete from uc_demension where CODE_=\"test_dem\";'"}, {"name": "update", "value": "None"}], "start": 1735445612356, "stop": 1735445612408, "uuid": "add3fa87-a456-4cee-8673-de5ddaffdc4b", "historyId": "baf1911dd5183d0c379dc7d232b2835c", "testCaseId": "c3a7d197e455a22b5f54ca08e9efb1a6", "fullName": "test_case.test_user_farke.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "维度管理"}, {"name": "story", "value": "添加维度"}, {"name": "severity", "value": "高"}, {"name": "epic", "value": "BPM-farke"}, {"name": "parentSuite", "value": "test_case.test_user_farke"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_farke.test_bpm"}]}
\ No newline at end of file
{"name": "登陆系统的标题", "status": "passed", "parameters": [{"name": "title", "value": "'正向用例'"}, {"name": "case_data", "value": "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}"}, {"name": "expect_data", "value": "{'username': '超级管理员', 'account': 'admin', 'userId': '1', 'expiration': 86400}"}], "start": 1735445612177, "stop": 1735445612226, "uuid": "64d1bbb7-5934-43af-806f-04b273de2808", "historyId": "4048ba52b7bcd499ff8b6aa43370076d", "testCaseId": "28336c3b0aa94c58bb1d41fee48ea9cb", "fullName": "test_case.test_bpm.test_auth.TestAuth#test_login", "labels": [{"name": "story", "value": "登录系统"}, {"name": "epic", "value": "BPM项目-场景"}, {"name": "severity", "value": "高"}, {"name": "feature", "value": "BPM项目-认证接口"}, {"name": "tag", "value": "dependency(scope='session')"}, {"name": "parentSuite", "value": "test_case.test_bpm"}, {"name": "suite", "value": "test_auth"}, {"name": "subSuite", "value": "TestAuth"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_bpm.test_auth"}]}
\ No newline at end of file
{"uuid": "88bdc220-2553-4c15-aa62-fd1bd10e5ff1", "befores": [{"name": "module", "status": "passed", "start": 1735445612355, "stop": 1735445612355}], "start": 1735445612355, "stop": 1735445612415}
\ No newline at end of file
{"uuid": "0a9306e1-e000-4452-b3d4-1047d691ae5f", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445613494, "stop": 1735445613494}], "start": 1735445613494, "stop": 1735445613545}
\ No newline at end of file
{"uuid": "167d8192-6e69-4f78-a555-cf3aed43ed44", "befores": [{"name": "api", "status": "passed", "start": 1735445613111, "stop": 1735445613111}], "start": 1735445613111, "stop": 1735445613154}
\ No newline at end of file
{"uuid": "7c95f13b-4ec9-42a8-95f6-a95375ede0b8", "befores": [{"name": "api", "status": "passed", "start": 1735445612772, "stop": 1735445612772}], "start": 1735445612772, "stop": 1735445612813}
\ No newline at end of file
{"uuid": "5eb1c84e-b0fd-420e-8d5a-f76783fbcee5", "befores": [{"name": "api", "status": "passed", "start": 1735445612964, "stop": 1735445612964}], "start": 1735445612964, "stop": 1735445613010}
\ No newline at end of file
{"uuid": "4436f823-289c-4ee7-8be0-89aa89a1b385", "befores": [{"name": "req", "status": "passed", "start": 1735445613794, "stop": 1735445613794}], "start": 1735445613794, "stop": 1735445613858}
\ No newline at end of file
{"uuid": "99c3875d-3600-499b-9658-aac428f94fd4", "befores": [{"name": "req", "status": "passed", "start": 1735445613014, "stop": 1735445613014}], "start": 1735445613014, "stop": 1735445613056}
\ No newline at end of file
{"uuid": "fe97a5dc-6a1a-4675-b661-8803dc4e12d7", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445613214, "stop": 1735445613214}], "start": 1735445613214, "stop": 1735445613250}
\ No newline at end of file
{"uuid": "dbd213ab-dca1-4870-a670-d09518bb17a1", "befores": [{"name": "level", "status": "passed", "start": 1735445613742, "stop": 1735445613742}], "start": 1735445613742, "stop": 1735445613790}
\ No newline at end of file
{"uuid": "b86f4177-c835-4719-a509-baa8764d9a00", "befores": [{"name": "title", "status": "passed", "start": 1735445613493, "stop": 1735445613493}], "start": 1735445613493, "stop": 1735445613547}
\ No newline at end of file
{"uuid": "332d62c8-44d3-4cd2-a146-a7400b7f345d", "befores": [{"name": "expect", "status": "passed", "start": 1735445612355, "stop": 1735445612355}], "start": 1735445612355, "stop": 1735445612410}
\ No newline at end of file
{"uuid": "4fe1beda-168d-46f6-ae20-19c0173c01ed", "befores": [{"name": "req", "status": "passed", "start": 1735445612860, "stop": 1735445612860}], "start": 1735445612860, "stop": 1735445612959}
\ No newline at end of file
{"uuid": "f5a1b778-0984-4f22-a54d-9891e2db78fb", "befores": [{"name": "update", "status": "passed", "start": 1735445613584, "stop": 1735445613584}], "start": 1735445613584, "stop": 1735445613638}
\ No newline at end of file
{"uuid": "6beeaa13-31a1-45c0-92f7-868905c6f294", "befores": [{"name": "api", "status": "passed", "start": 1735445613688, "stop": 1735445613688}], "start": 1735445613688, "stop": 1735445613737}
\ No newline at end of file
{"uuid": "a5e0d585-2fa3-49c3-aa8f-e9fc73ff552b", "befores": [{"name": "module", "status": "passed", "start": 1735445612859, "stop": 1735445612860}], "start": 1735445612859, "stop": 1735445612961}
\ No newline at end of file
{"uuid": "e5c258f3-5a51-48fc-bad8-50d0b9379142", "befores": [{"name": "api", "status": "passed", "start": 1735445612355, "stop": 1735445612355}], "start": 1735445612355, "stop": 1735445612415}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
ERROR  root:__init__.py:47 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_jack\test_bpm.py, 所做的行为:20, 产生错误,错误的类型为:<class 'AttributeError'>, 错误的描述为:'Response' object has no attribute 'txt'
\ No newline at end of file
{"uuid": "a8b8b2d6-fd2b-4bd8-8a6b-a40f784326d0", "befores": [{"name": "level", "status": "passed", "start": 1735445612721, "stop": 1735445612721}], "start": 1735445612721, "stop": 1735445612768}
\ No newline at end of file
{"uuid": "f9ff2553-af68-4c6a-b55a-126a37e337c6", "befores": [{"name": "expect", "status": "passed", "start": 1735445612817, "stop": 1735445612817}], "start": 1735445612817, "stop": 1735445612854}
\ No newline at end of file
{"uuid": "a43d49c7-0d0c-44f5-b909-7b42e7c65517", "befores": [{"name": "sql", "status": "passed", "start": 1735445612680, "stop": 1735445612680}], "start": 1735445612680, "stop": 1735445612714}
\ No newline at end of file
{"uuid": "fdf9868e-b1a1-44e3-99bf-2a3dcf971f90", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445612817, "stop": 1735445612817}], "start": 1735445612817, "stop": 1735445612853}
\ No newline at end of file
{"uuid": "d860b110-b973-4e98-bfe1-a99ac1583cb3", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445612721, "stop": 1735445612721}], "start": 1735445612721, "stop": 1735445612763}
\ No newline at end of file
{"uuid": "309de35e-1747-4ebc-99d4-223af81f8e01", "befores": [{"name": "update", "status": "passed", "start": 1735445613742, "stop": 1735445613742}], "start": 1735445613742, "stop": 1735445613784}
\ No newline at end of file
{"uuid": "3c81387c-3ec8-453d-a74e-aa1e18f96fb5", "befores": [{"name": "level", "status": "passed", "start": 1735445613645, "stop": 1735445613645}], "start": 1735445613645, "stop": 1735445613682}
\ No newline at end of file
{"uuid": "02bde8ef-c78f-4d48-af22-ba73f0ac947e", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445612964, "stop": 1735445612964}], "start": 1735445612964, "stop": 1735445613006}
\ No newline at end of file
{"uuid": "208311bb-aa6d-4f1a-80bc-fabf6eabdc0a", "befores": [{"name": "update", "status": "passed", "start": 1735445612773, "stop": 1735445612773}], "start": 1735445612773, "stop": 1735445612808}
\ No newline at end of file
{"uuid": "27285e61-356f-451c-ad0f-5659eadc70a7", "befores": [{"name": "url", "status": "passed", "start": 1735445612964, "stop": 1735445612964}], "start": 1735445612964, "stop": 1735445613009}
\ No newline at end of file
{"uuid": "8d53c309-153a-4b90-8ba6-ac89091b4269", "befores": [{"name": "case", "status": "passed", "start": 1735445612651, "stop": 1735445612651}], "start": 1735445612651, "stop": 1735445612674}
\ No newline at end of file
{"uuid": "a8aa89c4-1a50-430f-8233-9758c7e53558", "befores": [{"name": "mime", "status": "passed", "start": 1735445612721, "stop": 1735445612721}], "start": 1735445612721, "stop": 1735445612766}
\ No newline at end of file
{"uuid": "08ea7d9e-b8c6-4f55-8cec-3221b52dfc1c", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445612860, "stop": 1735445612860}], "start": 1735445612860, "stop": 1735445612958}
\ No newline at end of file
{"uuid": "1ad0413e-3804-47d3-ad2f-cc076041784e", "befores": [{"name": "expect", "status": "passed", "start": 1735445612964, "stop": 1735445612964}], "start": 1735445612964, "stop": 1735445613008}
\ No newline at end of file
{"uuid": "ee95cf58-7902-430d-9f06-db21c8c288e2", "befores": [{"name": "sql", "status": "passed", "start": 1735445613689, "stop": 1735445613689}], "start": 1735445613689, "stop": 1735445613732}
\ No newline at end of file
{"uuid": "82be9809-da3d-4617-a4bb-5981330bb17d", "befores": [{"name": "url", "status": "passed", "start": 1735445613742, "stop": 1735445613742}], "start": 1735445613742, "stop": 1735445613789}
\ No newline at end of file
{"name": "反向用例-用户名正确,密码为空", "status": "broken", "statusDetails": {"message": "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?", "trace": "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError"}, "attachments": [{"name": "log", "source": "91c2ee08-af52-4606-9dd2-567e4ab2c6a7-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'认证接口'"}, {"name": "api", "value": "'登录系统'"}, {"name": "title", "value": "'反向用例-用户名正确,密码为空'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/auth'"}, {"name": "mime", "value": "'application/json'"}, {"name": "req", "value": "'POST'"}, {"name": "case", "value": "{'username': 'admin', 'password': ''}"}, {"name": "expect", "value": "{'message': '账号密码错误'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445612860, "stop": 1735445612896, "uuid": "f0ff4608-153d-494f-b8ec-6b282f9f00c0", "historyId": "3a19a7c1988bebb35bd7d53f782c4cf7", "testCaseId": "db9486bc3117698c9d60cda9ad909479", "fullName": "test_case.test_user_jack.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "认证接口"}, {"name": "story", "value": "登录系统"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-jack"}, {"name": "parentSuite", "value": "test_case.test_user_jack"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_jack.test_bpm"}]}
\ No newline at end of file
{"uuid": "bb82c487-5e5d-491f-b750-ff06ed5b9b55", "befores": [{"name": "title", "status": "passed", "start": 1735445613689, "stop": 1735445613689}], "start": 1735445613689, "stop": 1735445613736}
\ No newline at end of file
{"uuid": "055f795d-c427-4812-b077-ea1f2acd51e6", "befores": [{"name": "module", "status": "passed", "start": 1735445613645, "stop": 1735445613645}], "start": 1735445613645, "stop": 1735445613684}
\ No newline at end of file
{"uuid": "997b23ee-018b-422e-8004-7befb8d0bf82", "befores": [{"name": "update", "status": "passed", "start": 1735445613261, "stop": 1735445613261}], "start": 1735445613261, "stop": 1735445613302}
\ No newline at end of file
{"uuid": "88fb558d-e6ff-4d54-a200-4efee65ae4b9", "befores": [{"name": "url", "status": "passed", "start": 1735445613550, "stop": 1735445613550}], "start": 1735445613550, "stop": 1735445613580}
\ No newline at end of file
{"uuid": "627fa6c2-5421-4e97-8f4d-0efa6ac76a0e", "children": ["add3fa87-a456-4cee-8673-de5ddaffdc4b", "89d14e16-850e-4938-80f7-e0b4cb5ae590", "82481c8a-789d-44df-811d-9ec9c43f6dfc"], "befores": [{"name": "req_fix", "status": "passed", "start": 1735445612267, "stop": 1735445612355}], "afters": [{"name": "req_fix::0", "status": "passed", "start": 1735445613861, "stop": 1735445613862}], "start": 1735445612267, "stop": 1735445613862}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:18
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:17
INFO  root:__init__.py:59 执行的功能为:__init__, 功能的描述为:获取项目下基础配置ini配置文件的路径,创建Configparser对象,读取ini文件, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:17
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:59 执行的功能为:get_database_conn_msg, 功能的描述为:根据key,获取sql节点下数据库的连接信息, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_v3\common\read_basic_ini.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:__init__, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\read_basic_ini.py, 所做的行为:17
INFO  root:__init__.py:44 执行的功能为:get_host, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\read_basic_ini.py, 所做的行为:24
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_farke\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:delete, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:35
\ No newline at end of file
{"uuid": "7d4ceb98-2ee2-4762-a90b-302ed3e42916", "befores": [{"name": "case", "status": "passed", "start": 1735445612610, "stop": 1735445612610}], "start": 1735445612610, "stop": 1735445612646}
\ No newline at end of file
{"uuid": "d1c4f36a-43dc-402d-9b04-dbe6404cda40", "befores": [{"name": "module", "status": "passed", "start": 1735445613342, "stop": 1735445613342}], "start": 1735445613342, "stop": 1735445613379}
\ No newline at end of file
INFO  root:__init__.py:44 执行的功能为:test_bpm, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\test_case\test_user_shy\test_bpm.py, 所做的行为:20
INFO  root:__init__.py:44 执行的功能为:request_all, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:select, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:40
INFO  root:__init__.py:44 执行的功能为:close, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:26
INFO  root:__init__.py:44 执行的功能为:close, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:close, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:26
INFO  root:__init__.py:44 执行的功能为:close, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:30
INFO  root:__init__.py:44 执行的功能为:close, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\requests_method\requests_method.py, 所做的行为:26
INFO  root:__init__.py:44 执行的功能为:close, 功能的描述为:None, 所在的文件路径为:C:\Users\32006\Desktop\test_python\python_learning\test\APIAutoTest_3\common\db.py, 所做的行为:30
\ No newline at end of file
{"uuid": "ec85b1d2-d241-4c72-88cd-4064058bd7a3", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445612418, "stop": 1735445612418}], "start": 1735445612418, "stop": 1735445612449}
\ No newline at end of file
{"uuid": "6360456d-96bb-495a-bcd2-3c176d6ab10e", "befores": [{"name": "expect", "status": "passed", "start": 1735445612459, "stop": 1735445612459}], "start": 1735445612459, "stop": 1735445612521}
\ No newline at end of file
{"uuid": "0139e94f-c3e8-480f-956d-319ac8e95292", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445612459, "stop": 1735445612459}], "start": 1735445612459, "stop": 1735445612520}
\ No newline at end of file
{"uuid": "b539fcd9-cdd9-4065-b1ab-68dc690da489", "befores": [{"name": "level", "status": "passed", "start": 1735445613342, "stop": 1735445613342}], "start": 1735445613342, "stop": 1735445613378}
\ No newline at end of file
{"uuid": "da34dab1-799d-48af-8969-a01a9a56f6c8", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445613584, "stop": 1735445613584}], "start": 1735445613584, "stop": 1735445613640}
\ No newline at end of file
{"uuid": "6071bc3d-663d-4002-b708-c6365c71f825", "befores": [{"name": "module", "status": "passed", "start": 1735445613688, "stop": 1735445613688}], "start": 1735445613688, "stop": 1735445613737}
\ No newline at end of file
{"uuid": "ed7e00ad-7447-4a8c-87fd-1e8c23ab344e", "befores": [{"name": "module", "status": "passed", "start": 1735445613213, "stop": 1735445613213}], "start": 1735445613213, "stop": 1735445613257}
\ No newline at end of file
{"name": "反向用例-用户名正确,密码为空", "status": "broken", "statusDetails": {"message": "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?", "trace": "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError"}, "attachments": [{"name": "log", "source": "d02204c0-61dd-41f3-b971-f261639f1ab4-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'认证接口'"}, {"name": "api", "value": "'登录系统'"}, {"name": "title", "value": "'反向用例-用户名正确,密码为空'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/auth'"}, {"name": "mime", "value": "'application/json'"}, {"name": "req", "value": "'POST'"}, {"name": "case", "value": "{'username': 'admin', 'password': ''}"}, {"name": "expect", "value": "{'message': '账号密码错误'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445613112, "stop": 1735445613145, "uuid": "169ce750-d9c9-4184-8081-7c4e45a82efd", "historyId": "3a19a7c1988bebb35bd7d53f782c4cf7", "testCaseId": "db9486bc3117698c9d60cda9ad909479", "fullName": "test_case.test_user_jack.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "认证接口"}, {"name": "story", "value": "登录系统"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-jack"}, {"name": "parentSuite", "value": "test_case.test_user_jack"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_jack.test_bpm"}]}
\ No newline at end of file
{"uuid": "ac8ed712-a6b3-49b6-a5b8-e3be4cdcca55", "befores": [{"name": "title", "status": "passed", "start": 1735445612176, "stop": 1735445612177}], "start": 1735445612176, "stop": 1735445612228}
\ No newline at end of file
{"uuid": "a9048e70-f4df-4672-9f38-f1cc2a5a91ee", "befores": [{"name": "req", "status": "passed", "start": 1735445612817, "stop": 1735445612817}], "start": 1735445612817, "stop": 1735445612855}
\ No newline at end of file
{"name": "反向用例-用户名正确,密码过长", "status": "passed", "attachments": [{"name": "log", "source": "ad337d5e-556b-42be-aede-4fd7ebf2a298-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'认证接口'"}, {"name": "api", "value": "'登录系统'"}, {"name": "title", "value": "'反向用例-用户名正确,密码过长'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/auth'"}, {"name": "mime", "value": "'application/json'"}, {"name": "req", "value": "'POST'"}, {"name": "case", "value": "{'username': 'admin', 'password': 'WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I=WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I='}"}, {"name": "expect", "value": "{'message': None}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445613261, "stop": 1735445613302, "uuid": "37a80a36-073e-42f3-a0a7-1e5e89ddeec2", "historyId": "f1ae6dd610bf49307c204bc6499be403", "testCaseId": "db9486bc3117698c9d60cda9ad909479", "fullName": "test_case.test_user_jack.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "认证接口"}, {"name": "story", "value": "登录系统"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-jack"}, {"name": "parentSuite", "value": "test_case.test_user_jack"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_jack.test_bpm"}]}
\ No newline at end of file
{"uuid": "c55396ac-b9be-4c7f-bd22-26432fa30d29", "befores": [{"name": "title", "status": "passed", "start": 1735445613260, "stop": 1735445613260}], "start": 1735445613260, "stop": 1735445613307}
\ No newline at end of file
{"uuid": "9d65af72-ffd4-4c84-a966-5e0af361e1cc", "befores": [{"name": "update", "status": "passed", "start": 1735445613015, "stop": 1735445613015}], "start": 1735445613015, "stop": 1735445613054}
\ No newline at end of file
{"uuid": "caa2a420-dcb6-4192-a43a-39d0193f47c2", "befores": [{"name": "url", "status": "passed", "start": 1735445613310, "stop": 1735445613310}], "start": 1735445613310, "stop": 1735445613337}
\ No newline at end of file
{"uuid": "73e968fa-e7b8-44d8-ad35-7297f815c1f3", "befores": [{"name": "mime", "status": "passed", "start": 1735445613064, "stop": 1735445613064}], "start": 1735445613064, "stop": 1735445613106}
\ No newline at end of file
{"uuid": "7764b72f-4386-4252-b08d-686bb423408e", "befores": [{"name": "level", "status": "passed", "start": 1735445613014, "stop": 1735445613014}], "start": 1735445613014, "stop": 1735445613057}
\ No newline at end of file
{"uuid": "e8f7aaac-75b7-4746-b08f-34872c6dd59f", "befores": [{"name": "case", "status": "passed", "start": 1735445612964, "stop": 1735445612964}], "start": 1735445612964, "stop": 1735445613008}
\ No newline at end of file
{"uuid": "f58a17b2-814c-41f7-bc76-cce11a162d96", "befores": [{"name": "expect", "status": "passed", "start": 1735445612418, "stop": 1735445612418}], "start": 1735445612418, "stop": 1735445612450}
\ No newline at end of file
{"uuid": "573662b1-9a7f-435f-b1f4-becae6255895", "befores": [{"name": "update", "status": "passed", "start": 1735445612418, "stop": 1735445612418}], "start": 1735445612418, "stop": 1735445612447}
\ No newline at end of file
{"uuid": "e3a3bc8a-3059-43a9-b487-e308b75be89c", "befores": [{"name": "mime", "status": "passed", "start": 1735445612680, "stop": 1735445612680}], "start": 1735445612680, "stop": 1735445612716}
\ No newline at end of file
{"uuid": "d89218d3-37b6-4cfe-a2c7-858dddf914f4", "befores": [{"name": "level", "status": "passed", "start": 1735445613794, "stop": 1735445613794}], "start": 1735445613794, "stop": 1735445613859}
\ No newline at end of file
{"uuid": "323648e1-e76b-4dfe-bcce-f2c07500821b", "befores": [{"name": "title", "status": "passed", "start": 1735445613645, "stop": 1735445613645}], "start": 1735445613645, "stop": 1735445613682}
\ No newline at end of file
{"name": "反向用例-用户名正确,密码为空", "status": "broken", "statusDetails": {"message": "AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?", "trace": "self = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n> assert res.json().get(key) == expect[key]\nE AssertionError: assert '账号或密码错误' == '账号密码错误'\nE \nE - 账号密码错误\nE + 账号或密码错误\nE ? +\n\ntest_case\\test_user_jack\\test_bpm.py:33: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_3.test_case.test_user_jack.test_bpm.TestBpm object at 0x000001DCDD0156A0>, module = '认证接口', api = '登录系统', title = '反向用例-用户名正确,密码为空', level = '中'\nurl = 'http://36.139.193.99:8088/auth', mime = 'application/json', req = 'POST', case = {'password': '', 'username': 'admin'}, expect = {'message': '账号密码错误'}, sql_type = None\nsql = None, update = None, req_fix = <APIAutoTest_3.requests_method.requests_method.RequestsMethod object at 0x000001DCDD0F6E10>\n\n @allure.epic(\"BPM-jack\")\n @log_decorator\n @pytest.mark.parametrize(\"module, api, title, level, url, mime, req, case, expect, sql_type, sql, update\", case_datas)\n def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)\n \n try:\n for key in expect:\n assert res.json().get(key) == expect[key]\n except AssertionError as e:\n> raise AssertionError(f\"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}\")\nE AttributeError: 'Response' object has no attribute 'txt'. Did you mean: 'text'?\n\ntest_case\\test_user_jack\\test_bpm.py:35: AttributeError"}, "attachments": [{"name": "log", "source": "2b67fb45-ed46-40b1-94fd-6a1a83709ce2-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'认证接口'"}, {"name": "api", "value": "'登录系统'"}, {"name": "title", "value": "'反向用例-用户名正确,密码为空'"}, {"name": "level", "value": "'中'"}, {"name": "url", "value": "'http://36.139.193.99:8088/auth'"}, {"name": "mime", "value": "'application/json'"}, {"name": "req", "value": "'POST'"}, {"name": "case", "value": "{'username': 'admin', 'password': ''}"}, {"name": "expect", "value": "{'message': '账号密码错误'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql", "value": "None"}, {"name": "update", "value": "None"}], "start": 1735445612964, "stop": 1735445613000, "uuid": "d0246862-fe88-446c-8d83-c5f63910e229", "historyId": "3a19a7c1988bebb35bd7d53f782c4cf7", "testCaseId": "db9486bc3117698c9d60cda9ad909479", "fullName": "test_case.test_user_jack.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "认证接口"}, {"name": "story", "value": "登录系统"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM-jack"}, {"name": "parentSuite", "value": "test_case.test_user_jack"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_jack.test_bpm"}]}
\ No newline at end of file
{"uuid": "140f8196-b648-4315-a384-43262c814a2d", "befores": [{"name": "mime", "status": "passed", "start": 1735445613742, "stop": 1735445613742}], "start": 1735445613742, "stop": 1735445613789}
\ No newline at end of file
{"uuid": "7b091280-b680-44b5-be71-7695ac8c9b28", "befores": [{"name": "req", "status": "passed", "start": 1735445613689, "stop": 1735445613689}], "start": 1735445613689, "stop": 1735445613734}
\ No newline at end of file
{"uuid": "04764cca-a615-4c4d-a41e-3545fcb75033", "befores": [{"name": "url", "status": "passed", "start": 1735445612817, "stop": 1735445612817}], "start": 1735445612817, "stop": 1735445612856}
\ No newline at end of file
{"uuid": "f9147fb0-1dfc-4c8b-9f0f-f0bcb040ab3b", "befores": [{"name": "sql", "status": "passed", "start": 1735445613158, "stop": 1735445613158}], "start": 1735445613158, "stop": 1735445613202}
\ No newline at end of file
{"uuid": "f79e71ba-8e30-4c08-9788-043a257ebf7a", "befores": [{"name": "update", "status": "passed", "start": 1735445613794, "stop": 1735445613794}], "start": 1735445613794, "stop": 1735445613855}
\ No newline at end of file
{"uuid": "ef3104c8-bbc4-45f1-b421-d34e4af78eb4", "befores": [{"name": "title", "status": "passed", "start": 1735445613583, "stop": 1735445613583}], "start": 1735445613583, "stop": 1735445613642}
\ No newline at end of file
{"uuid": "7e8c73cd-0132-4c04-8ac9-3cc0e8dd500a", "befores": [{"name": "mime", "status": "passed", "start": 1735445613689, "stop": 1735445613689}], "start": 1735445613689, "stop": 1735445613734}
\ No newline at end of file
{"name": "正向用例", "status": "passed", "attachments": [{"name": "log", "source": "0632f1e2-d21b-490f-a8c0-1904655c5115-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'组织管理'"}, {"name": "api", "value": "'添加组织'"}, {"name": "title", "value": "'正向用例'"}, {"name": "level", "value": "'高'"}, {"name": "url", "value": "'http://36.139.193.99:8088/api/org/v1/org/addOrg'"}, {"name": "mime", "value": "'json'"}, {"name": "req", "value": "'post'"}, {"name": "case", "value": "{'code': 'test_org_code', 'demId': '需要更新', 'exceedLimitNum': 0, 'grade': '', 'limitNum': 0, 'name': '测试组织', 'nowNum': 0, 'orderNo': 0, 'parentId': '0'}"}, {"name": "expect", "value": "{'message': '添加组织成功!'}"}, {"name": "sql_type", "value": "'delete|select'"}, {"name": "sql", "value": "{'select': 'select ID_ from uc_demension where CODE_=\"test_dem\";', 'delete': 'delete from uc_org where CODE_=\"test_org_code\";'}"}, {"name": "update", "value": "'demId'"}], "start": 1735445613584, "stop": 1735445613638, "uuid": "41a1e7b8-573a-458a-8246-e449004f3836", "historyId": "a69903ef4d247999e0c971681208aa80", "testCaseId": "9c935d3786c3b36d2f34fb9b06b5b4fd", "fullName": "test_case.test_user_shy.test_bpm.TestBpm#test_bpm", "labels": [{"name": "feature", "value": "组织管理"}, {"name": "story", "value": "添加组织"}, {"name": "severity", "value": "高"}, {"name": "epic", "value": "BPM-shy"}, {"name": "parentSuite", "value": "test_case.test_user_shy"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBpm"}, {"name": "host", "value": "syf"}, {"name": "thread", "value": "6680-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_user_shy.test_bpm"}]}
\ No newline at end of file
{"uuid": "7c7b5a21-db34-47b4-886d-05b85b25d8e0", "befores": [{"name": "api", "status": "passed", "start": 1735445612459, "stop": 1735445612459}], "start": 1735445612459, "stop": 1735445612526}
\ No newline at end of file
{"uuid": "52d2a397-8e6f-41b8-8ebe-0ab763aa60af", "befores": [{"name": "url", "status": "passed", "start": 1735445612355, "stop": 1735445612355}], "start": 1735445612355, "stop": 1735445612414}
\ No newline at end of file
{"uuid": "a6025ee9-5a11-47a6-ac83-a30e3ccc0225", "befores": [{"name": "title", "status": "passed", "start": 1735445612610, "stop": 1735445612610}], "start": 1735445612610, "stop": 1735445612647}
\ No newline at end of file
{"uuid": "15f9ebd9-84af-4d07-a6fe-e21fd6182208", "befores": [{"name": "sql_type", "status": "passed", "start": 1735445613742, "stop": 1735445613742}], "start": 1735445613742, "stop": 1735445613785}
\ No newline at end of file
{"uuid": "fe14235c-9877-49ab-ad0d-00ac3637ad8e", "befores": [{"name": "url", "status": "passed", "start": 1735445612721, "stop": 1735445612721}], "start": 1735445612721, "stop": 1735445612767}
\ No newline at end of file
{"uuid": "be858b01-ec0f-462d-acfd-aa2dfb84f792", "befores": [{"name": "case", "status": "passed", "start": 1735445612418, "stop": 1735445612418}], "start": 1735445612418, "stop": 1735445612451}
\ No newline at end of file
{"uuid": "99c26ac4-b28a-4b4e-b7b2-6317298e50a6", "befores": [{"name": "module", "status": "passed", "start": 1735445612964, "stop": 1735445612964}], "start": 1735445612964, "stop": 1735445613010}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: __init__.py
# Author: xxxxx
# Datetime: 2024/12/26 16:41
# Description:
#
# ---------------------------------------------------------------------------
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: requests_method.py
# Author: xxxxx
# Datetime: 2024/12/27 09:28
# Description:
#
# ---------------------------------------------------------------------------
import requests
from APIAutoTest_3 import log_decorator
from APIAutoTest_3.common.db import DB
from APIAutoTest_3.common.read_basic_ini import ReadBasicIni
class RequestsMethod:
@log_decorator
def __init__(self):
self.db = DB()
self.bpm_session = requests.sessions.Session()
login_url = ReadBasicIni().get_host("bpm") + "/auth"
login_data = {"username": "admin","password": "WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="}
self.bpm_session.headers["Authorization"] = "Bearer " + self.bpm_session.post(url=login_url,json=login_data).json().get("token")
@log_decorator
def close(self):
self.db.close()
@log_decorator
def request_all(self,req_url,req_mime,req_method,case_data,sql_type,sql_data,update_key):
if sql_type == "select":
select_result = self.db.select(sql_data)
case_data[update_key] = select_result
elif sql_type == "delete":
self.db.delete(sql_data)
elif sql_type == "delete|select" or sql_type == "select|delete":
self.db.delete(sql_data["delete"])#执行删除
select_result = self.db.select(sql_data["select"])#将查询结果更新
case_data[update_key] = select_result
# 发送请求
# requests关心的是传参的关键字,不关心请求方法
# 判断媒体类型是否为query|json或者json|query表示请求体使用json传参,同时也在地址栏传参
if req_mime == "query|json" or req_mime == "json|query":
return self.bpm_session.request(req_method,req_url,json=case_data["json"],params=case_data["query"])
elif req_mime == "application/json" or req_mime == "json":
return self.bpm_session.request(req_method,req_url,json=case_data)
elif req_mime == "application/x-www-form-urlencoded" or req_mime == "form":
return self.bpm_session.request(req_method,req_url,data=case_data)
elif req_mime == "query":
return self.bpm_session.request(req_method,req_url,params=case_data)
elif req_mime == "multipart/form-data" or req_mime == "form-data":
return self.bpm_session.request(req_method,req_url,files=case_data)
elif req_mime is None:
return self.bpm_session.request(req_method, url=req_url)
else:
raise ValueError("请求媒体类型错误,请检查!")
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: __init__.py
# Author: xxxxx
# Datetime: 2024/12/26 16:41
# Description:
#
# ---------------------------------------------------------------------------
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: conftest.py
# Author: xxxxx
# Datetime: 2024/12/29 12:07
# Description:
#
# ---------------------------------------------------------------------------
def pytest_collection_modifyitems(items):
# item表示每个测试用例,解决用例名称中文显示问题
for item in items:
item.name = item.name.encode("utf-8").decode("unicode-escape")
item._nodeid = item._nodeid.encode("utf-8").decode("unicode-escape")
\ No newline at end of file
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test64
# FileName: __init__.py
# Author: lao_zhao
# Datetime: 2024/12/25 10:50
# Description:
#
# ---------------------------------------------------------------------------
import pytest
import requests
@pytest.fixture(scope="session")
def req_fix():
# 创建Session对象
req = requests.sessions.Session()
yield req
req.close()
\ No newline at end of file
import allure
import pytest
login_case_data = [
["正向用例", {"username":"admin","password":"WuHRoZXGrg1LHOix8EVOhqGcu3CEEd0hOWNPRENTScZMb2ekrEtBGGBJweUxGKi36k346+OrS5mD3nnjyrocZOfzo4UqoshNoqJgx09u81LV2vc53Sy83DsBWKGoZZZRUhsDrpRj8feUlakJMCpgqswG0y9jm95Lk9auWpI146I="}, {"username":"超级管理员","account":"admin","userId":"1","expiration":86400}],
["反向用例", {"username":"admin","password":""}, {"message": "账号或密码错误"}]
]
class TestAuth:
@allure.epic("BPM项目-场景")
@allure.feature("BPM项目-认证接口")
@allure.story("登录系统")
@allure.title("登陆系统的标题")
@allure.severity("高")
@pytest.mark.dependency(scope="session")
@pytest.mark.parametrize("title, case_data, expect_data", login_case_data)
def test_login(self, req_fix, title, case_data, expect_data):
res = req_fix.request(method="post", url="http://36.139.193.99:8088/auth", json=case_data)
for key in expect_data:
assert res.json().get(key) == expect_data[key]
else:
if title == "正向用例":
req_fix.headers.update({"Authorization": "Bearer "+res.json().get("token")})
import allure
import pytest
from faker import Faker
class TestDem:
@allure.epic("BPM项目-场景")
@allure.feature("BPM项目-维度管理")
@allure.story("添加维度")
@allure.title("添加维度的标题")
@allure.severity("高")
@pytest.mark.dependency(depends=[r"test_bpm/test_auth.py::TestAuth::test_login[\u6b63\u5411\u7528\u4f8b-case_data0-expect_data0]"], scope="session")
def test_add_dem(self, req_fix):
add_dem_url = "http://36.139.193.99:8088/api/demension/v1/dem/addDem"
data = Faker(locale="zh_cn")
add_dem_data = {
"code": f"{data.phone_number()}",
"description": "",
"isDefault": 0,
"name": f"{data.company()}"
}
res = req_fix.request(method="post", url=add_dem_url, json=add_dem_data)
assert "成功" in res.text
\ No newline at end of file
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: __init__.py
# Author: xxxxx
# Datetime: 2024/12/28 11:17
# Description:
#
# ---------------------------------------------------------------------------
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: conftest.py
# Author: xxxxx
# Datetime: 2024/12/28 10:05
# Description:
#
# ---------------------------------------------------------------------------
import pytest
from APIAutoTest_3 import log_decorator
from APIAutoTest_3.requests_method.requests_method import RequestsMethod
@log_decorator
@pytest.fixture(scope="session")
def req_fix():
req = RequestsMethod()
yield req
req.close()
\ No newline at end of file
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: test_bpm.py
# Author: xxxxx
# Datetime: 2024/12/28 10:16
# Description:
#
# ---------------------------------------------------------------------------
import allure
import pytest
from APIAutoTest_3 import log_decorator
from APIAutoTest_3.common.read_excel import ReadExcel
case_datas = ReadExcel("farke").get_data()
class TestBpm:
@allure.epic("BPM-farke")
@log_decorator
@pytest.mark.parametrize("module, api, title, level, url, mime, req, case, expect, sql_type, sql, update", case_datas)
def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):
allure.dynamic.feature(module)
allure.dynamic.story(api)
allure.dynamic.title(title)
allure.dynamic.severity(level)
res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)
try:
for key in expect:
assert res.json().get(key) == expect[key]
except AssertionError as e:
raise AssertionError(f"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}")
except Exception as e:
raise e
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: __init__.py
# Author: xxxxx
# Datetime: 2024/12/28 10:04
# Description:
#
# ---------------------------------------------------------------------------
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: conftest.py
# Author: xxxxx
# Datetime: 2024/12/28 10:05
# Description:
#
# ---------------------------------------------------------------------------
import pytest
from APIAutoTest_3 import log_decorator
from APIAutoTest_3.requests_method.requests_method import RequestsMethod
@log_decorator
@pytest.fixture(scope="session")
def req_fix():
req = RequestsMethod()
yield req
req.close()
\ No newline at end of file
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: test_bpm.py
# Author: xxxxx
# Datetime: 2024/12/28 10:16
# Description:
#
# ---------------------------------------------------------------------------
import allure
import pytest
from APIAutoTest_3 import log_decorator
from APIAutoTest_3.common.read_excel import ReadExcel
case_datas = ReadExcel("jack").get_data()
print(case_datas,"--------------")
class TestBpm:
@allure.epic("BPM-jack")
@log_decorator
@pytest.mark.parametrize("module, api, title, level, url, mime, req, case, expect, sql_type, sql, update", case_datas)
def test_bpm(self, module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):
allure.dynamic.feature(module)
allure.dynamic.story(api)
allure.dynamic.title(title)
allure.dynamic.severity(level)
res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)
try:
for key in expect:
assert res.json().get(key) == expect[key]
except AssertionError as e:
raise AssertionError(f"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}")
except Exception as e:
raise e
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: __init__.py
# Author: xxxxx
# Datetime: 2024/12/28 11:14
# Description:
#
# ---------------------------------------------------------------------------
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: conftest.py
# Author: xxxxx
# Datetime: 2024/12/28 10:05
# Description:
#
# ---------------------------------------------------------------------------
import pytest
from APIAutoTest_3 import log_decorator
from APIAutoTest_3.requests_method.requests_method import RequestsMethod
@log_decorator
@pytest.fixture(scope="session")
def req_fix():
req = RequestsMethod()
yield req
req.close()
\ No newline at end of file
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test
# FileName: test_bpm.py
# Author: xxxxx
# Datetime: 2024/12/28 10:16
# Description:
#
# ---------------------------------------------------------------------------
import allure
import pytest
from APIAutoTest_3 import log_decorator
from APIAutoTest_3.common.read_excel import ReadExcel
case_datas = ReadExcel("shy").get_data()
class TestBpm:
@allure.epic("BPM-shy")
@log_decorator
@pytest.mark.parametrize("module, api, title, level, url, mime, req, case, expect, sql_type, sql, update", case_datas)
def test_bpm(self,module, api, title, level, url, mime, req, case, expect, sql_type, sql, update,req_fix):
allure.dynamic.feature(module)
allure.dynamic.story(api)
allure.dynamic.title(title)
allure.dynamic.severity(level)
res = req_fix.request_all(req_url=url, req_mime=mime, req_method=req, case_data=case, sql_type=sql_type,sql_data=sql, update_key=update)
try:
for key in expect:
assert res.json().get(key) == expect[key]
except AssertionError as e:
raise AssertionError(f"用例{case}执行失败,预期结果与实际结果不一致,期望数据为{expect},服务器返回数据为{res.txt},错误信息为:{e}")
except Exception as e:
raise e
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment