feat,fix(): 优化项目

- 优化yaml_processor(优化文件类型转换逻辑)
- 修复bug
This commit is contained in:
2025-03-07 17:28:41 +08:00
parent a6996ed500
commit 914b0301ba
9 changed files with 419 additions and 109 deletions

View File

@@ -27,7 +27,8 @@ class CaseValidator:
@classmethod
def assert_all(cls, validate: dict):
if not validate:
return
for assert_type, cases in validate.items():
logger.info(f"键:{assert_type},值:{cases}")
validator = cls.VALIDATORS.get(assert_type)

View File

@@ -37,62 +37,62 @@ class DataDriver:
if __name__ == '__main__':
from commons.file_processors.yaml_processor import YamlFile
from commons.file_processors.yaml_processor import YamlProcessor
file_path = Path(r"E:\PyP\InterfaceAutoTest\TestCases\test_1_user.yaml")
file_path = Path(r"D:\CNWei\CNW\InterfaceAutoTest\TestCases\test_1_user.yaml")
file_obj = YamlFile(file_path)
# print(file_path.stem)
file_obj = YamlProcessor(file_path)
print(file_path.stem)
file_name = file_path.stem
mock_case_info = {
"case_info0": {
"feature": "页面状态",
"story": "状态",
"title": "查询状态信息",
"request": "",
"extract": "",
"validate": "",
"parametrize": [["title", "username", "password", "msg"], ["测试1", "user1", "pass1", "200"],
["测试2", "user2", "pass2", "300"]]
},
"case_info1": {
"feature": "页面状态",
"story": "状态",
"title": "查询状态信息",
"request": "",
"extract": "",
"validate": "",
"parametrize": [1, 2, 3]
},
"case_info2": {
"feature": "页面状态",
"story": "状态",
"title": "查询状态信息",
"request": "",
"extract": "",
"validate": "",
"parametrize": [1, 2, 3]
}
}
# mock_case_info = {
# "case_info0": {
# "feature": "页面状态",
# "story": "状态",
# "title": "查询状态信息",
# "request": "",
# "extract": "",
# "validate": "",
# "parametrize": [["title", "username", "password", "msg"], ["测试1", "user1", "pass1", "200"],
# ["测试2", "user2", "pass2", "300"]]
# },
# "case_info1": {
# "feature": "页面状态",
# "story": "状态",
# "title": "查询状态信息",
# "request": "",
# "extract": "",
# "validate": "",
# "parametrize": [1, 2, 3]
# },
# "case_info2": {
# "feature": "页面状态",
# "story": "状态",
# "title": "查询状态信息",
# "request": "",
# "extract": "",
# "validate": "",
# "parametrize": [1, 2, 3]
# }
#
# }
dd = DataDriver()
# cases = dd.generate_cases(mock_case_info.get("case_info0"))
cases = dd.generate_cases(file_name, file_obj)
# print(cases)
print(cases)
# print(len(cases))
keys_list = []
titles = []
for item in cases:
print(item)
# print(item)
# 遍历列表中的每个字典
for key, value in item.items():
print(f"key:{key}")
# print(f"key:{key}")
keys_list.append(key)
print(f"value:{value}")
# print(f"value:{value}")
# # 遍历内层字典(这里内层字典其实只有一个键值对)
titles.append(value['title'])
print(item)
# print(item)
print(keys_list)
print(titles)