Commit 63146c26 by keytol

apiautotest-v1

parent 77d5e908
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test61
# FileName: __init__.py
# Author: lao_zhao
# Datetime: 2024/7/12 17:33
# Description:
#
# ---------------------------------------------------------------------------
import functools
import logging
import os
import time
# from APIAutoTest_v3_1.common.log import get_log
#
# log = get_log()
"""
pip install pytest-html 用例生成html报告
pytest -vv 用例层目录 --html=报告路径 --self-contained-html
先安装3.2.0的版本,卸载掉,再安装3.1.0版本
"""
"""
失败重跑:pip install pytest-rerunfailures
pytest 用例层目录 --reruns 失败重跑的次数 --reruns-delay 失败重跑的间隔时间
"""
"""
allure生成测试报告的步骤:
1: 生成测试结果的json文件---json非常多
pytest 测试模块 --alluredir=存放json文件的目录 --clean-alluredir
2:根据第一步生成的json文件来生成测试报告:
a): 生成web服务
allure serve 第一步存放的json文件目录
b): 生成静态报告
allure generate 第一步存放的json文件目录 -o 存放静态报告的目录
打开静态报告:allure open 静态报告存放的目录
"""
def get_logs():
# 将日志写入到文件中---流程
# 创建logger
logger = logging.getLogger()
# 设置日志文件中写入的级别
logger.setLevel(level=logging.DEBUG)
# 需要设置日志的名称
log_name = time.strftime("%Y_%m_%d_%H_%M_%S", time.localtime(time.time())) + ".log"
# 获取日志的目录
log_dir = os.path.join(os.path.join(os.path.dirname(__file__), "report"), "result_log")
# 日志路径拼接
log_path = os.path.join(log_dir, log_name)
# 设置日志文件
file_handler = logging.FileHandler(log_path, mode="a", encoding="utf-8")
# 设置日志在文件中显示的格式
log_format = logging.Formatter('%(asctime)s - %(levelname)s: %(message)s')
# 将日志设置格式添加到日志文件中
file_handler.setFormatter(log_format)
# 将日志文件的handler添加到logger对象中
logger.addHandler(file_handler)
return logger
log = get_logs()
# 装饰器
def log_decorator(func_name):
@functools.wraps(func_name) # 让被装饰对象使用它原来的名称,不要使用inner
def inner(*arg, **kwargs):
try:
log.info(f"执行的功能名称为:{func_name.__name__}, 功能所在的文件为:{func_name.__code__.co_filename}, 所在的行为:{func_name.__code__.co_firstlineno}")
value = func_name(*arg, **kwargs)
except Exception as e:
log.error(f"执行的功能名称为:{func_name.__name__}, 功能所在的文件为:{func_name.__code__.co_filename}, 所在的行为:{func_name.__code__.co_firstlineno}报错,错误为:{e}")
raise e
else:
return value
return inner
\ No newline at end of file
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test61
# FileName: db.py
# Author: lao_zhao
# Datetime: 2024/7/12 14:10
# Description:
#
# ---------------------------------------------------------------------------
import pymysql
from APIAutoTest_v3_1.common.read_basic_ini import ReadBasicIni
class DB:
def __init__(self):
"""链接数据库,获取链接对象,再获取游标对象"""
ini = ReadBasicIni()
self.conn = pymysql.connect(
host=ini.sql_connect_msg("host"),
port=int(ini.sql_connect_msg("port")),
user=ini.sql_connect_msg("user"),
password=ini.sql_connect_msg("pwd"),
database=ini.sql_connect_msg("database"),
charset="utf8"
)
self.cursor = self.conn.cursor()
def close(self):
self.cursor.close()
self.conn.close()
def delete(self, sql):
"""执行删除的sql语句"""
try:
self.cursor.execute(sql)
except Exception as e:
raise e
else:
self.conn.commit()
def select(self, sql):
"""执行查询的sql语句,并返回查询的结果"""
try:
self.cursor.execute(sql)
except Exception as e:
raise e
else:
select_result = self.cursor.fetchall()
if select_result:
return select_result[0][0]
\ No newline at end of file
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test61
# FileName: log.py
# Author: lao_zhao
# Datetime: 2024/7/12 17:20
# Description:
#
# ---------------------------------------------------------------------------
import logging
import os
import time
from APIAutoTest_v3_1.common.read_basic_ini import ReadBasicIni
def get_log():
# 将日志写入到文件中---流程
# 创建logger
logger = logging.getLogger()
# 设置日志文件中写入的级别
logger.setLevel(level=logging.DEBUG)
# 需要设置日志的名称
log_name = time.strftime("%Y_%m_%d_%H_%M_%S", time.localtime(time.time())) + ".log"
# 获取日志的目录
log_dir = ReadBasicIni().get_log_dir("log")
# 日志路径拼接
log_path = os.path.join(log_dir, log_name)
# 设置日志文件
file_handler = logging.FileHandler(log_path, mode="a", encoding="utf-8")
# 设置日志在文件中显示的格式
log_format = logging.Formatter('%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s')
# 将日志设置格式添加到日志文件中
file_handler.setFormatter(log_format)
# 将日志文件的handler添加到logger对象中
logger.addHandler(file_handler)
return logger
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test61
# FileName: read_basic_ini.py
# Author: lao_zhao
# Datetime: 2024/7/12 16:48
# Description:
#
# ---------------------------------------------------------------------------
import os, configparser
class ReadBasicIni:
def __init__(self):
"""获取ini文件的路径,并读取"""
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, "basic_config.ini")
self.conf = configparser.ConfigParser()
self.conf.read(ini_path, encoding="utf-8")
def get_url(self, key):
"""根据key,获取被测系统的域名"""
try:
return self.conf.get("host", key)
except Exception as e:
raise e
def sql_connect_msg(self, key):
"""根据key,获取数据库的链接信息"""
try:
return self.conf.get("sql", key)
except Exception as e:
raise e
def get_log_dir(self, key):
"""根据key获取日志存放的目录"""
try:
# 获取日志存放的目录名称
dir_name = self.conf.get("report", key)
except Exception as e:
raise e
else:
# 获取report目录路径
report_path = os.path.join(os.path.dirname(os.path.dirname(__file__)), "report")
# 拼接日志文件的目录路径,再返回
return os.path.join(report_path, dir_name)
\ No newline at end of file
ss# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test61
# FileName: read_excel.py
# Author: lao_zhao
# Datetime: 2024/7/12 14:15
# Description:
#
# ---------------------------------------------------------------------------
import openpyxl
from APIAutoTest_v3_1 import log_decorator
from APIAutoTest_v3_1.common.read_basic_ini import ReadBasicIni
from APIAutoTest_v3_1.common.read_ini import ReadIni
from APIAutoTest_v3_1.common.read_json import read_json
from APIAutoTest_v3_1.data_config.settings import *
class ReadExcel:
@log_decorator
def __init__(self, username):
"""获取数据配置层中,除了ini文件以外所有文件的路径"""
self.ini = ReadIni(username)
case_data_path = self.ini.get_file_path(CASE_FILE)
expect_data_path = self.ini.get_file_path(EXPECT_FILE)
sql_data_path = self.ini.get_file_path(SQL_FILE)
excel_path = self.ini.get_file_path(EXCEL_FILE)
table_name = self.ini.get_table_name(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)
try:
wb = openpyxl.load_workbook(excel_path)
self.ws = wb[table_name]
except Exception as e:
# log.error(f"获取excel工作簿或工作表时报错,错误为:{e}")
raise e
@log_decorator
def __get_cell_value(self, column: str, row: int) -> str:
"""获取指定单元格数据"""
try:
value = self.ws[column+str(row)].value
except Exception as e:
raise e
else:
if value is None:
return None
elif value.strip():
return value.strip()
@log_decorator
def module_name(self, row):
"""根据行,获取模块名称"""
return self.__get_cell_value(MODULE, row)
@log_decorator
def api_name(self, row):
"""根据行,获取接口名称"""
return self.__get_cell_value(API, row)
@log_decorator
def req_method(self, row):
"""根据行,获取请求方法"""
return self.__get_cell_value(METHOD, row)
@log_decorator
def req_url(self, row):
"""根据行,获取请求的url"""
host = ReadBasicIni().get_url(HOST)
path = self.__get_cell_value(PATH, row)
if path:
return host + path
@log_decorator
def case_mime(self, row):
"""根据行,获取用例的媒体类型"""
value = self.__get_cell_value(MIME, row)
if value:
return value.lower()
@log_decorator
def case_data(self, row):
"""根据行,获取用例数据"""
case_data_key = self.__get_cell_value(CASE, row)
if case_data_key:
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(EXPECT, row)
if expect_data_key:
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_type(self, row):
"""根据行,获取sql语句的类型"""
value = self.__get_cell_value(SQLTYPE, row)
if value:
return value.lower()
@log_decorator
def sql_data(self, row):
"""根据行,获取期望数据"""
sql_data_key = self.__get_cell_value(SQLDATA, row)
if sql_data_key:
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 update_key(self, row):
"""根据行,获取更新的key"""
return self.__get_cell_value(UPDATEKEY, row)
@log_decorator
def case_title(self, row):
"""根据行,获取用例的标题"""
return self.__get_cell_value(TITLE, row)
@log_decorator
def case_level(self, row):
"""根据行,获取用例的标题"""
return self.__get_cell_value(LEVEL, row)
@log_decorator
def get_data(self):
"""将测试使用的数据存放在一个二维列表中"""
data_list = []
for row in range(2, self.ws.max_row+1):
module_name = self.module_name(row)
api_name = self.api_name(row)
case_title = self.case_title(row)
level = self.case_level(row)
case_method = self.req_method(row)
case_url = self.req_url(row)
case_mime = self.case_mime(row)
case_data = self.case_data(row)
expect_data = self.expect_data(row)
sql_type = self.sql_type(row)
sql_data = self.sql_data(row)
update_key = self.update_key(row)
if case_method is not None and case_url is not None:
data_list.append([module_name, api_name, level, case_title, case_method, case_url, case_mime, case_data, expect_data, sql_type, sql_data, update_key])
else:
return data_list
if __name__ == '__main__':
excel = ReadExcel("lao_zhang")
print(excel.get_data())
\ No newline at end of file
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test61
# FileName: read_ini.py
# Author: lao_zhao
# Datetime: 2024/7/12 14:03
# Description:
#
# ---------------------------------------------------------------------------
import configparser
import os.path
class ReadIni:
def __init__(self, username):
"""获取ini文件的路径,并读取"""
self.username_data_config_path = os.path.join(os.path.join(os.path.dirname(os.path.dirname(__file__)), "data_config"), username)
ini_path = os.path.join(self.username_data_config_path, "config.ini")
self.conf = configparser.ConfigParser()
self.conf.read(ini_path, encoding="utf-8")
def get_file_path(self, key):
"""根据key,获取file节点下文件的路径"""
try:
file_name = self.conf.get("file", key)
except Exception as e:
raise e
else:
return os.path.join(self.username_data_config_path, file_name)
# def get_url(self, key):
# """根据key,获取被测系统的域名"""
# try:
# return self.conf.get("host", key)
# except Exception as e:
# raise e
def get_table_name(self, key):
"""根据key获取工作表的名称"""
try:
return self.conf.get("table_name", key)
except Exception as e:
raise e
#
# def sql_connect_msg(self, key):
# """根据key,获取数据库的链接信息"""
# try:
# return self.conf.get("sql", key)
# except Exception as e:
# raise e
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test61
# FileName: read_json.py
# Author: lao_zhao
# Datetime: 2024/7/12 14:08
# Description:
#
# ---------------------------------------------------------------------------
import json
import os
def read_json(file_path):
"""读取json文件,并将json文件的内容序列化为python对象,再返回"""
if os.path.isfile(file_path) and file_path.endswith(".json"):
try:
with open(file_path, mode="r", encoding="utf-8") as f:
return json.loads(f.read())
except Exception as e:
raise e
else:
raise FileNotFoundError("文件路径错误")
\ No newline at end of file
{
"认证接口":{
"登录系统":{
"LoginSuccess":{"username":"admin","password":"F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8="},
"LoginFailUsernameIsNone":{"username":"","password":"F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8="},
"LoginFailUsernameIsShort":{"username":"a","password":"F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8="},
"LoginFailUsernameIsLong":{"username":"adminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadmin","password":"F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8="},
"LoginFailUsernameIsSpecial":{"username":"♡♣♤♥♦♧♨♩ε","password":"F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8="},
"LoginFailPwdIsNone":{"username":"admin","password":""},
"LoginFailPwdIsShort":{"username":"admin","password":"1"},
"LoginFailPwdIsLong":{"username":"admin","password":"F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8=F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8="}
}
},
"维度管理": {
"添加维度": {
"AddDemSuccess": {"code": "test_dem_xyz_123","description": "测试维度","isDefault": 0, "name": "xyz测试维度"}
},
"设置默认维度": {
"SetDefaultDemSuccess": {"code": "test_dem_xyz_123"}
},
"根据维度编码删除维度": {
"DeleteDemSuccess": {"ids": "需要更新"}
}
},
"组织管理": {
"添加组织": {
"AddOrgSuccess": {
"code": "test_org",
"demId": "需要更新",
"exceedLimitNum": 0,
"grade": "",
"limitNum": 0,
"name": "测试组织",
"nowNum": 0,
"orderNo": 0,
"parentId": "0"
}
},
"保存组织参数": {
"SaveOrgParamSuccess": {
"query": {"orgCode": "test_org"},
"body": [{"alias":"sr","value":"dog"}]
}
},
"删除组织": {
"DeleteOrgSuccess": "test_org"
}
}
}
\ No newline at end of file
[节点名称]
键=值
# 配置数据层中文件的节点
[file]
# 用例管理文件
excel=APIAutoTest.xlsx
# 用例数据文件
case=case_data.json
# 期望数据文件
expect=expect.json
# sql语句文件
sql=sql_data.json
# 配置excel中工作表的名称
[table_name]
table=BPM
{
"认证接口":{
"登录系统":{
"LoginSuccess": {"username":"超级管理员","account":"admin","userId":"1","expiration":86400},
"LoginFailUsernameIsNone":{"state":false,"message":"账户错误或该租户未启用"},
"LoginFailUsernameIsShort":{"state":false,"message":"账户错误或该租户未启用"},
"LoginFailUsernameIsLong":{"state":false,"message":"账户错误或该租户未启用"},
"LoginFailUsernameIsSpecial":{"state":false,"message":"账户错误或该租户未启用"},
"LoginFailPwdIsNone":{"state":false,"message":"账户错误或该租户未启用"},
"LoginFailPwdIsShort":{"state":false,"message":"账户错误或该租户未启用"},
"LoginFailPwdIsLong":{"state":false,"message":"账户错误或该租户未启用"}
},
"刷新token": {
"RefreshSuccess": {"message": "刷新成功"}
}
},
"维度管理": {
"添加维度": {
"AddDemSuccess": {"message": "添加维度成功!"}
},
"设置默认维度": {
"SetDefaultDemSuccess": {"message": "设置默认维度成功!"}
},
"根据维度编码删除维度": {
"DeleteDemSuccess": {"message": "删除维度成功"}
}
},
"组织管理": {
"添加组织": {
"AddOrgSuccess": {"message": "添加组织成功!"}
},
"保存组织参数": {
"SaveOrgParamSuccess": {"state":true,"message":"保存组织参数成功!"}
},
"删除组织": {
"DeleteOrgSuccess": {"state":true,"message":"删除组织成功!"}
}
}
}
\ No newline at end of file
{
"维度管理": {
"添加维度": {
"AddDemSuccess": "DELETE FROM uc_demension WHERE `CODE_`=\"test_dem_xyz_123\";"
},
"根据维度编码删除维度": {
"DeleteDemSuccess": "SELECT ID_ FROM uc_demension WHERE `CODE_`=\"test_dem_xyz_123\";"
}
},
"组织管理": {
"添加组织": {
"AddOrgSuccess": {
"select": "SELECT ID_ FROM uc_demension WHERE `CODE_`=\"test_dem_xyz_123\";",
"delete": "delete from uc_org where CODE_=\"test_org\";"
}
}
}
}
# 配置被测系统的域名
[host]
test_host=http://36.139.193.99:8088
[sql]
host=36.139.193.99
port=3306
user=root
pwd=Rhrc@2024
database=eip8
[report]
log=result_log
\ No newline at end of file
{
"认证接口":{
"登录系统":{
"LoginSuccess":{"username":"admin","password":"F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8="},
"LoginFailUsernameIsNone":{"username":"","password":"F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8="},
"LoginFailUsernameIsShort":{"username":"a","password":"F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8="},
"LoginFailUsernameIsLong":{"username":"adminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadmin","password":"F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8="},
"LoginFailUsernameIsSpecial":{"username":"♡♣♤♥♦♧♨♩ε","password":"F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8="},
"LoginFailPwdIsNone":{"username":"admin","password":""},
"LoginFailPwdIsShort":{"username":"admin","password":"1"},
"LoginFailPwdIsLong":{"username":"admin","password":"F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8=F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8="}
}
},
"维度管理": {
"添加维度": {
"AddDemSuccess": {"code": "test_dem_xyz_123","description": "测试维度","isDefault": 0, "name": "xyz测试维度"}
},
"设置默认维度": {
"SetDefaultDemSuccess": {"code": "test_dem_xyz_123"}
},
"根据维度编码删除维度": {
"DeleteDemSuccess": {"ids": "需要更新"}
}
},
"组织管理": {
"添加组织": {
"AddOrgSuccess": {
"code": "test_org",
"demId": "需要更新",
"exceedLimitNum": 0,
"grade": "",
"limitNum": 0,
"name": "测试组织",
"nowNum": 0,
"orderNo": 0,
"parentId": "0"
}
},
"保存组织参数": {
"SaveOrgParamSuccess": {
"query": {"orgCode": "test_org"},
"body": [{"alias":"sr","value":"dog"}]
}
},
"删除组织": {
"DeleteOrgSuccess": "test_org"
}
}
}
\ No newline at end of file
[节点名称]
键=值
# 配置数据层中文件的节点
[file]
# 用例管理文件
excel=张三.xlsx
# 用例数据文件
case=case_data.json
# 期望数据文件
expect=expect.json
# sql语句文件
sql=sql_data.json
# 配置excel中工作表的名称
[table_name]
table=BPM
{
"认证接口":{
"登录系统":{
"LoginSuccess": {"username":"超级管理员","account":"admin","userId":"1","expiration":86400},
"LoginFailUsernameIsNone":{"state":false,"message":"账户错误或该租户未启用"},
"LoginFailUsernameIsShort":{"state":false,"message":"账户错误或该租户未启用"},
"LoginFailUsernameIsLong":{"state":false,"message":"账户错误或该租户未启用"},
"LoginFailUsernameIsSpecial":{"state":false,"message":"账户错误或该租户未启用"},
"LoginFailPwdIsNone":{"state":false,"message":"账户错误或该租户未启用"},
"LoginFailPwdIsShort":{"state":false,"message":"账户错误或该租户未启用"},
"LoginFailPwdIsLong":{"state":false,"message":"账户错误或该租户未启用"}
},
"刷新token": {
"RefreshSuccess": {"message": "刷新成功"}
}
},
"维度管理": {
"添加维度": {
"AddDemSuccess": {"message": "添加维度成功!"}
},
"设置默认维度": {
"SetDefaultDemSuccess": {"message": "设置默认维度成功!"}
},
"根据维度编码删除维度": {
"DeleteDemSuccess": {"message": "删除维度成功"}
}
},
"组织管理": {
"添加组织": {
"AddOrgSuccess": {"message": "添加组织成功!"}
},
"保存组织参数": {
"SaveOrgParamSuccess": {"state":true,"message":"保存组织参数成功!"}
},
"删除组织": {
"DeleteOrgSuccess": {"state":true,"message":"删除组织成功!"}
}
}
}
\ No newline at end of file
{
"维度管理": {
"添加维度": {
"AddDemSuccess": "DELETE FROM uc_demension WHERE `CODE_`=\"test_dem_xyz_123\";"
},
"根据维度编码删除维度": {
"DeleteDemSuccess": "SELECT ID_ FROM uc_demension WHERE `CODE_`=\"test_dem_xyz_123\";"
}
},
"组织管理": {
"添加组织": {
"AddOrgSuccess": {
"select": "SELECT ID_ FROM uc_demension WHERE `CODE_`=\"test_dem_xyz_123\";",
"delete": "delete from uc_org where CODE_=\"test_org\";"
}
}
}
}
# -*-coding:utf-8 -*- #
# ---------------------------------------------------------------------------
# ProjectName: test61
# FileName: settings.py
# Author: lao_zhao
# Datetime: 2024/7/15 17:14
# Description:
#
# ---------------------------------------------------------------------------
# ===excel中列的配置项================================
NUMBER = "A"
MODULE = "B"
API = "C"
TITLE = "D"
LEVEL = "E"
METHOD = "F"
PATH = "G"
MIME = "H"
CASE = "I"
EXPECT = "J"
SQLTYPE = "K"
SQLDATA = "L"
UPDATEKEY = "M"
# file节点下键的名称============================
EXCEL_FILE = "excel"
CASE_FILE = "case"
EXPECT_FILE = "expect"
SQL_FILE = "sql"
# table_name节点下key的名称========================
TABLE_NAME = "table"
# host节点下key的名称========================
HOST = "test_host"
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
GET http://36.139.193.99:8088/refresh None None {'message': '刷新成功'} None None None
{"token":"eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJhZG1pbiIsInRlbmFudElkIjoiLTEiLCJleHAiOjE3MjExMjA0NjQsImlhdCI6MTcyMTAzNDA2NH0.335tiaLWB02xaEGtn5hp_3mLfG4F7Ihw5STnS-SeF8Xex7IRs2N5Zo47MWIDvUTHu2lbWlpHzZ3YoShyBpWmLw","username":"admin","account":"admin","userId":"","expiration":86400,"loginStatus":true}
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "GET /refresh HTTP/11" 200 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
\ No newline at end of file
post http://36.139.193.99:8088/api/org/v1/org/deleteOrg form test_org {'state': True, 'message': '删除组织成功!'} None None None
{"state":true,"message":"删除组织成功!","value":"","code":200}
断言成功
DELETE http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds query {'ids': '需要更新'} {'message': '删除维度成功'} select SELECT ID_ FROM uc_demension WHERE `CODE_`="test_dem_xyz_123"; ids
{"state":true,"message":"删除维度成功!","value":"","code":200}
DELETE http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds query {'ids': '1812774401151180800'} {'message': '删除维度成功'} select SELECT ID_ FROM uc_demension WHERE `CODE_`="test_dem_xyz_123"; ids
{"state":false,"message":"","code":200,"logId":"1812774406603776000"}
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_lao_zhang\test_case.py, 所在的行为:19
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "DELETE /api/demension/v1/dem/deleteDemByIds?ids=1812774401151180800 HTTP/11" 200 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_lao_zhang\test_case.py, 所在的行为:19报错,错误为:断言失败, 用例数据为:{'ids': '1812774401151180800'}, 期望数据为:{'message': '删除维度成功'}, 服务器返回的数据为:{"state":true,"message":"删除维度成功!","value":"","code":200}
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_lao_zhang\test_case.py, 所在的行为:19
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "DELETE /api/demension/v1/dem/deleteDemByIds?ids=1812774401151180800 HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_lao_zhang\test_case.py, 所在的行为:19报错,错误为:断言失败, 用例数据为:{'ids': '1812774401151180800'}, 期望数据为:{'message': '删除维度成功'}, 服务器返回的数据为:{"state":false,"message":"","code":200,"logId":"1812774406603776000"}
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_lao_zhang\test_case.py, 所在的行为:19
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "DELETE /api/demension/v1/dem/deleteDemByIds?ids=1812774401151180800 HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_lao_zhang\test_case.py, 所在的行为:19报错,错误为:断言失败, 用例数据为:{'ids': '1812774401151180800'}, 期望数据为:{'message': '删除维度成功'}, 服务器返回的数据为:{"state":false,"message":"","code":200,"logId":"1812774411037155328"}
\ No newline at end of file
post http://36.139.193.99:8088/api/org/v1/org/deleteOrg form test_org {'state': True, 'message': '删除组织成功!'} None None None
{"state":true,"message":"删除组织成功!","value":"","code":200}
断言成功
DEBUG  pytest_dependency:pytest_dependency.py:87 check dependencies of test_get_dem_msg[case_data0-expect_data0-\u6b63\u5411\u7528\u4f8b] in module scope ...
DEBUG  pytest_dependency:pytest_dependency.py:92 ... TestBPM::test_add_dem succeeded
DEBUG  urllib3.connectionpool:connectionpool.py:243 Starting new HTTP connection (1): 36.139.193.99:8088
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "GET /api/demension/v1/dem/getDem?code=bspDAYiuFkKO HTTP/11" 200 None
\ No newline at end of file
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "PUT /api/demension/v1/dem/setDefaultDem?code=test_dem_xyz_123 HTTP/11" 200 None
\ No newline at end of file
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_lao_zhang\test_case.py, 所在的行为:19
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /api/org/v1/orgParam/saveOrgParams?orgCode=test_org HTTP/11" 200 None
\ No newline at end of file
POST http://36.139.193.99:8088/auth application/json {'username': 'admin', 'password': 'F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8=F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8='} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"token":"eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJhZG1pbiIsInRlbmFudElkIjoiLTEiLCJleHAiOjE3MjExMjA0NjEsImlhdCI6MTcyMTAzNDA2MX0.e3KNfX4AN2jfxAPmepY3RWbnM3B0bz-aag7amH4m3xoYYf-wgO8oer2HL-uKpAcbXnt_hDftWGJrNlErbDdGHQ","username":"超级管理员","account":"admin","userId":"1","expiration":86400,"loginStatus":true,"userAttrs":{"tenantId":"-1"}}
POST http://36.139.193.99:8088/auth application/json {'username': 'admin', 'password': 'F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8=F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8='} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"token":"eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJhZG1pbiIsInRlbmFudElkIjoiLTEiLCJleHAiOjE3MjExMjA0NjIsImlhdCI6MTcyMTAzNDA2Mn0.GRH4JZts93pgf8nB_eU48JCfarD-T47aBURZmQUrTAVNuiRtmyPhmVxfBnCWzzvF1hPbx_ymueHRQgDgHSB9AA","username":"超级管理员","account":"admin","userId":"1","expiration":86400,"loginStatus":true,"userAttrs":{"tenantId":"-1"}}
POST http://36.139.193.99:8088/auth application/json {'username': 'admin', 'password': 'F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8=F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8='} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"token":"eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJhZG1pbiIsInRlbmFudElkIjoiLTEiLCJleHAiOjE3MjExMjA0NjMsImlhdCI6MTcyMTAzNDA2M30.aeFMFItlVrgPOpp05-HBjDuYPixfkDS6EAp_X4hETINjS2yuN8JYEFCG4lsQLCyNWQ0tYP7iX8qSjViDL8I6TA","username":"超级管理员","account":"admin","userId":"1","expiration":86400,"loginStatus":true,"userAttrs":{"tenantId":"-1"}}
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_lao_zhang\test_case.py, 所在的行为:19
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "DELETE /api/demension/v1/dem/deleteDemByIds?ids=1812774401151180800 HTTP/11" 200 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_lao_zhang\test_case.py, 所在的行为:19报错,错误为:断言失败, 用例数据为:{'ids': '1812774401151180800'}, 期望数据为:{'message': '删除维度成功'}, 服务器返回的数据为:{"state":true,"message":"删除维度成功!","value":"","code":200}
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_lao_zhang\test_case.py, 所在的行为:19
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "DELETE /api/demension/v1/dem/deleteDemByIds?ids=1812774401151180800 HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_lao_zhang\test_case.py, 所在的行为:19报错,错误为:断言失败, 用例数据为:{'ids': '1812774401151180800'}, 期望数据为:{'message': '删除维度成功'}, 服务器返回的数据为:{"state":false,"message":"","code":200,"logId":"1812774406603776000"}
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_lao_zhang\test_case.py, 所在的行为:19
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "DELETE /api/demension/v1/dem/deleteDemByIds?ids=1812774401151180800 HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_lao_zhang\test_case.py, 所在的行为:19报错,错误为:断言失败, 用例数据为:{'ids': '1812774401151180800'}, 期望数据为:{'message': '删除维度成功'}, 服务器返回的数据为:{"state":false,"message":"","code":200,"logId":"1812774411037155328"}
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_lao_zhang\test_case.py, 所在的行为:19
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "DELETE /api/demension/v1/dem/deleteDemByIds?ids=1812774401151180800 HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_lao_zhang\test_case.py, 所在的行为:19报错,错误为:断言失败, 用例数据为:{'ids': '1812774401151180800'}, 期望数据为:{'message': '删除维度成功'}, 服务器返回的数据为:{"state":false,"message":"","code":200,"logId":"1812774415470534656"}
\ No newline at end of file
POST http://36.139.193.99:8088/auth application/json {'username': 'admin', 'password': '1'} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"state":false,"message":"账号或密码错误","code":200,"logId":"1812774344196726784"}
POST http://36.139.193.99:8088/auth application/json {'username': 'admin', 'password': '1'} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"state":false,"message":"账号或密码错误","code":200,"logId":"1812774348655271936"}
POST http://36.139.193.99:8088/auth application/json {'username': 'admin', 'password': '1'} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"state":false,"message":"账号或密码错误","code":200,"logId":"1812774353130594304"}
POST http://36.139.193.99:8088/auth application/json {'username': 'admin', 'password': '1'} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"state":false,"message":"账号或密码错误","code":200,"logId":"1812774357614305280"}
DELETE http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds query {'ids': '需要更新'} {'message': '删除维度成功'} select SELECT ID_ FROM uc_demension WHERE `CODE_`="test_dem_xyz_123"; ids
{"state":true,"message":"删除维度成功!","value":"","code":200}
DELETE http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds query {'ids': '1812774385271545856'} {'message': '删除维度成功'} select SELECT ID_ FROM uc_demension WHERE `CODE_`="test_dem_xyz_123"; ids
{"state":false,"message":"","code":200,"logId":"1812774390887718912"}
DELETE http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds query {'ids': '1812774385271545856'} {'message': '删除维度成功'} select SELECT ID_ FROM uc_demension WHERE `CODE_`="test_dem_xyz_123"; ids
{"state":false,"message":"","code":200,"logId":"1812774395333681152"}
POST http://36.139.193.99:8088/auth application/json {'username': 'adminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadmin', 'password': 'F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8='} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"state":false,"message":"账户错误或该租户未启用","code":200,"logId":"1812774329629908992"}
断言成功
POST http://36.139.193.99:8088/auth application/json {'username': 'admin', 'password': 'F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8='} {'username': '超级管理员', 'account': 'admin', 'userId': '1', 'expiration': 86400} None None None
{"token":"eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJhZG1pbiIsInRlbmFudElkIjoiLTEiLCJleHAiOjE3MjExMjA0NTQsImlhdCI6MTcyMTAzNDA1NH0.c-wb9LuJOLxJGNcZ-A1cgQbK-YSFJePH1z7kkD7TT6rbi3NqFolHxR15FOR_nDdH8Bm8gybe0H4Xauhik_Kiag","username":"超级管理员","account":"admin","userId":"1","expiration":86400,"loginStatus":true,"userAttrs":{"tenantId":"-1"}}
断言成功
post http://36.139.193.99:8088/api/org/v1/org/addOrg json {'code': 'test_org', 'demId': '需要更新', 'exceedLimitNum': 0, 'grade': '', 'limitNum': 0, 'name': '测试组织', 'nowNum': 0, 'orderNo': 0, 'parentId': '0'} {'message': '添加组织成功!'} select|delete {'select': 'SELECT ID_ FROM uc_demension WHERE `CODE_`="test_dem_xyz_123";', 'delete': 'delete from uc_org where CODE_="test_org";'} demId
{"state":true,"message":"添加组织成功!","value":"","code":200}
断言成功
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_lao_zhang\test_case.py, 所在的行为:19
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /api/org/v1/org/addOrg HTTP/11" 200 None
\ No newline at end of file
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
\ No newline at end of file
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "GET /refresh HTTP/11" 200 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "GET /refresh HTTP/11" 200 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
\ No newline at end of file
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
\ No newline at end of file
POST http://36.139.193.99:8088/auth application/json {'username': '♡♣♤♥♦♧♨♩ε', 'password': 'F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8='} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"state":false,"message":"账户错误或该租户未启用","code":200,"logId":"1812774329814458368"}
断言成功
POST http://36.139.193.99:8088/auth application/json {'username': 'admin', 'password': ''} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"state":false,"message":"账号或密码错误","code":200,"logId":"1812774329999007744"}
POST http://36.139.193.99:8088/auth application/json {'username': 'admin', 'password': ''} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"state":false,"message":"账号或密码错误","code":200,"logId":"1812774335053144064"}
POST http://36.139.193.99:8088/auth application/json {'username': 'admin', 'password': ''} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"state":false,"message":"账号或密码错误","code":200,"logId":"1812774339528466432"}
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
\ No newline at end of file
DEBUG  urllib3.connectionpool:connectionpool.py:243 Starting new HTTP connection (1): 36.139.193.99:8088
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 200 None
\ No newline at end of file
POST http://36.139.193.99:8088/auth application/json {'username': 'admin', 'password': ''} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"state":false,"message":"账号或密码错误","code":200,"logId":"1812774329999007744"}
POST http://36.139.193.99:8088/auth application/json {'username': 'admin', 'password': ''} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"state":false,"message":"账号或密码错误","code":200,"logId":"1812774335053144064"}
POST http://36.139.193.99:8088/auth application/json {'username': 'admin', 'password': ''} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"state":false,"message":"账号或密码错误","code":200,"logId":"1812774339528466432"}
POST http://36.139.193.99:8088/auth application/json {'username': 'admin', 'password': ''} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"state":false,"message":"账号或密码错误","code":200,"logId":"1812774343991205888"}
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
\ No newline at end of file
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /api/org/v1/org/deleteOrg HTTP/11" 200 None
\ No newline at end of file
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
\ No newline at end of file
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
\ No newline at end of file
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /api/org/v1/orgParam/saveOrgParams?orgCode=test_org HTTP/11" 200 None
\ No newline at end of file
DELETE http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds query {'ids': '需要更新'} {'message': '删除维度成功'} select SELECT ID_ FROM uc_demension WHERE `CODE_`="test_dem_xyz_123"; ids
{"state":true,"message":"删除维度成功!","value":"","code":200}
DELETE http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds query {'ids': '1812774385271545856'} {'message': '删除维度成功'} select SELECT ID_ FROM uc_demension WHERE `CODE_`="test_dem_xyz_123"; ids
{"state":false,"message":"","code":200,"logId":"1812774390887718912"}
DELETE http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds query {'ids': '1812774385271545856'} {'message': '删除维度成功'} select SELECT ID_ FROM uc_demension WHERE `CODE_`="test_dem_xyz_123"; ids
{"state":false,"message":"","code":200,"logId":"1812774395333681152"}
DELETE http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds query {'ids': '1812774385271545856'} {'message': '删除维度成功'} select SELECT ID_ FROM uc_demension WHERE `CODE_`="test_dem_xyz_123"; ids
{"state":false,"message":"","code":200,"logId":"1812774399876112384"}
post http://36.139.193.99:8088/api/demension/v1/dem/addDem json {'code': 'test_dem_xyz_123', 'description': '测试维度', 'isDefault': 0, 'name': 'xyz测试维度'} {'message': '添加维度成功!'} delete DELETE FROM uc_demension WHERE `CODE_`="test_dem_xyz_123"; None
{"state":true,"message":"添加维度成功!","value":"","code":200}
断言成功
DELETE http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds query {'ids': '需要更新'} {'message': '删除维度成功'} select SELECT ID_ FROM uc_demension WHERE `CODE_`="test_dem_xyz_123"; ids
{"state":true,"message":"删除维度成功!","value":"","code":200}
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
\ No newline at end of file
post http://36.139.193.99:8088/api/org/v1/orgParam/saveOrgParams query|json {'query': {'orgCode': 'test_org'}, 'body': [{'alias': 'sr', 'value': 'dog'}]} {'state': True, 'message': '保存组织参数成功!'} None None None
{"state":true,"message":"保存组织参数成功!","value":"","code":200}
断言成功
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "DELETE /api/demension/v1/dem/deleteDemByIds?ids=1812774385271545856 HTTP/11" 200 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
\ No newline at end of file
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 200 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 200 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
\ No newline at end of file
POST http://36.139.193.99:8088/auth application/json {'username': 'admin', 'password': 'F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8=F4/DVgPS/NEruLxVVRqHktsb1R2fVpw81t5VuGfFjwp0G7U4k6spHPr/ejPlw8XxIVilJ+SyIH0G5FbQStFEd/94mmI7+2Dw2c7MXXIERYKjd3XNe4gZR4ANJclCJHNGfE+mtnX5voprYwEo9m6ponCdmmXTMx9cWVEJ4K/nbR8='} {'state': False, 'message': '账户错误或该租户未启用'} None None None
{"token":"eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJhZG1pbiIsInRlbmFudElkIjoiLTEiLCJleHAiOjE3MjExMjA0NjEsImlhdCI6MTcyMTAzNDA2MX0.e3KNfX4AN2jfxAPmepY3RWbnM3B0bz-aag7amH4m3xoYYf-wgO8oer2HL-uKpAcbXnt_hDftWGJrNlErbDdGHQ","username":"超级管理员","account":"admin","userId":"1","expiration":86400,"loginStatus":true,"userAttrs":{"tenantId":"-1"}}
DELETE http://36.139.193.99:8088/api/demension/v1/dem/deleteDemByIds query {'ids': '需要更新'} {'message': '删除维度成功'} select SELECT ID_ FROM uc_demension WHERE `CODE_`="test_dem_xyz_123"; ids
{"state":true,"message":"删除维度成功!","value":"","code":200}
PUT http://36.139.193.99:8088/api/demension/v1/dem/setDefaultDem query {'code': 'test_dem_xyz_123'} {'message': '设置默认维度成功!'} None None None
{"state":true,"message":"设置默认维度成功!","value":"","code":200}
断言成功
post http://36.139.193.99:8088/api/org/v1/org/addOrg json {'code': 'test_org', 'demId': '需要更新', 'exceedLimitNum': 0, 'grade': '', 'limitNum': 0, 'name': '测试组织', 'nowNum': 0, 'orderNo': 0, 'parentId': '0'} {'message': '添加组织成功!'} select|delete {'select': 'SELECT ID_ FROM uc_demension WHERE `CODE_`="test_dem_xyz_123";', 'delete': 'delete from uc_org where CODE_="test_org";'} demId
{"state":true,"message":"添加组织成功!","value":"","code":200}
断言成功
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 500 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
\ No newline at end of file
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18
DEBUG  urllib3.connectionpool:connectionpool.py:291 Resetting dropped connection: 36.139.193.99
DEBUG  urllib3.connectionpool:connectionpool.py:546 http://36.139.193.99:8088 "POST /auth HTTP/11" 200 None
ERROR  root:__init__.py:82 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18报错,错误为:断言失败,描述失败的原因
INFO  root:__init__.py:79 执行的功能名称为:test_bpm, 功能所在的文件为:D:\Project\PythonDoc\test61\test61\APIAutoTest_v3_1\test_case\test_basic\test_case.py, 所在的行为:18