{"name": "正向用例", "status": "failed", "statusDetails": {"message": "AssertionError: 断言失败", "trace": "self = <APIAutoTest_v3_1.test_case.test_demo.test_bpm.TestBPM object at 0x000001912EFE5880>\nreq_fix = <APIAutoTest_v3_1.requests_method.requests_method.RequestsMethod object at 0x000001912F03E250>, module = '组织管理', api = '保存组织参数'\ntitle = '正向用例', level = '中', method = 'post', url = 'http://36.139.193.99:8088/api/org/v1/orgParam/saveOrgParams', mime = 'query|json'\ncase_data = {'body': [{'alias': 'sz', 'value': 1}], 'query': {'orgCode': 'testAddOrg'}}, expect_data = {'message': '保存组织参数成功!', 'state': True}\nsql_type = None, sql_data = None, update_key = None\n\n @allure.epic(\"BPM_DEMO\")\n # @allure.feature(\"模块名称\")\n # @allure.story(\"接口名称\")\n # @allure.title(\"用例标题\")\n # @allure.severity(\"用例等级\")\n @pytest.mark.parametrize(\"module, api, title, level, method, url, mime, case_data, expect_data, sql_type, sql_data, update_key\", ReadExcel(USERNAME).get_data())\n def test_bpm(self, req_fix, module, api, title, level, method, url, mime, case_data, expect_data, sql_type, sql_data, update_key):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n # 使用RequestsMethod类对象调用request_all方法发送请求。自定义固件就是RequestsMethod类对象\n res = req_fix.request_all(req_method=method, req_url=url, req_mime=mime, req_case_data=case_data, sql_type=sql_type, sql_data=sql_data, update_key=update_key)\n \n # 断言\n try:\n for key in expect_data.keys():\n> assert res.json().get(key) == expect_data[key]\nE AssertionError: assert False == True\nE + where False = <built-in method get of dict object at 0x000001912F1BF040>('state')\nE + where <built-in method get of dict object at 0x000001912F1BF040> = {'code': 200, 'message': '保存失败,请将参数填写完整', 'state': False, 'value': '根据输入的组织编码没有找到对应的组织信息!'}.get\nE + where {'code': 200, 'message': '保存失败,请将参数填写完整', 'state': False, 'value': '根据输入的组织编码没有找到对应的组织信息!'} = json()\nE + where json = <Response [200]>.json\n\ntest_case\\test_demo\\test_bpm.py:37: AssertionError\n\nDuring handling of the above exception, another exception occurred:\n\nself = <APIAutoTest_v3_1.test_case.test_demo.test_bpm.TestBPM object at 0x000001912EFE5880>\nreq_fix = <APIAutoTest_v3_1.requests_method.requests_method.RequestsMethod object at 0x000001912F03E250>, module = '组织管理', api = '保存组织参数'\ntitle = '正向用例', level = '中', method = 'post', url = 'http://36.139.193.99:8088/api/org/v1/orgParam/saveOrgParams', mime = 'query|json'\ncase_data = {'body': [{'alias': 'sz', 'value': 1}], 'query': {'orgCode': 'testAddOrg'}}, expect_data = {'message': '保存组织参数成功!', 'state': True}\nsql_type = None, sql_data = None, update_key = None\n\n @allure.epic(\"BPM_DEMO\")\n # @allure.feature(\"模块名称\")\n # @allure.story(\"接口名称\")\n # @allure.title(\"用例标题\")\n # @allure.severity(\"用例等级\")\n @pytest.mark.parametrize(\"module, api, title, level, method, url, mime, case_data, expect_data, sql_type, sql_data, update_key\", ReadExcel(USERNAME).get_data())\n def test_bpm(self, req_fix, module, api, title, level, method, url, mime, case_data, expect_data, sql_type, sql_data, update_key):\n allure.dynamic.feature(module)\n allure.dynamic.story(api)\n allure.dynamic.title(title)\n allure.dynamic.severity(level)\n \n # 使用RequestsMethod类对象调用request_all方法发送请求。自定义固件就是RequestsMethod类对象\n res = req_fix.request_all(req_method=method, req_url=url, req_mime=mime, req_case_data=case_data, sql_type=sql_type, sql_data=sql_data, update_key=update_key)\n \n # 断言\n try:\n for key in expect_data.keys():\n assert res.json().get(key) == expect_data[key]\n except AssertionError:\n log.error(f\"断言失败,用例数据为:{case_data},期望数据为:{expect_data}, 服务器返回的数据为:{res.text}\")\n> raise AssertionError(\"断言失败\")\nE AssertionError: 断言失败\n\ntest_case\\test_demo\\test_bpm.py:40: AssertionError"}, "attachments": [{"name": "log", "source": "ea160a1d-e91c-4b1d-812d-6ed666c90552-attachment.txt", "type": "text/plain"}], "parameters": [{"name": "module", "value": "'组织管理'"}, {"name": "api", "value": "'保存组织参数'"}, {"name": "title", "value": "'正向用例'"}, {"name": "level", "value": "'中'"}, {"name": "method", "value": "'post'"}, {"name": "url", "value": "'http://36.139.193.99:8088/api/org/v1/orgParam/saveOrgParams'"}, {"name": "mime", "value": "'query|json'"}, {"name": "case_data", "value": "{'query': {'orgCode': 'testAddOrg'}, 'body': [{'alias': 'sz', 'value': 1}]}"}, {"name": "expect_data", "value": "{'state': True, 'message': '保存组织参数成功!'}"}, {"name": "sql_type", "value": "None"}, {"name": "sql_data", "value": "None"}, {"name": "update_key", "value": "None"}], "start": 1730879252124, "stop": 1730879252138, "uuid": "daa74390-7bc0-4963-a79b-a1c70790f630", "historyId": "96ef3dbc5c6001007695eb08a02d5162", "testCaseId": "2de48645219de93dc51c83a53a42f952", "fullName": "test_case.test_demo.test_bpm.TestBPM#test_bpm", "labels": [{"name": "feature", "value": "组织管理"}, {"name": "story", "value": "保存组织参数"}, {"name": "severity", "value": "中"}, {"name": "epic", "value": "BPM_DEMO"}, {"name": "parentSuite", "value": "test_case.test_demo"}, {"name": "suite", "value": "test_bpm"}, {"name": "subSuite", "value": "TestBPM"}, {"name": "host", "value": "LAPTOP-O09782E1"}, {"name": "thread", "value": "17520-MainThread"}, {"name": "framework", "value": "pytest"}, {"name": "language", "value": "cpython3"}, {"name": "package", "value": "test_case.test_demo.test_bpm"}]}