├── README.md ├── conf └── unique_num.txt ├── log ├── interface_auto_test.2021-08-28.log └── interface_auto_test.log ├── test_case ├── __init__.py ├── test_edit_module.py └── test_login_module.py ├── test_data └── test_case_data.xlsx ├── test_report ├── app.js ├── data │ ├── attachments │ │ ├── 190ba6dba1231ffa.txt │ │ ├── 1a226aaf9e2633e3.txt │ │ ├── 36d9e2c92188f1e9.txt │ │ ├── 3c673d881dc90af0.txt │ │ ├── 4f2134c8077dabae.txt │ │ ├── 51773fc339bb5a2a.txt │ │ ├── 5956dfac7c2affd7.txt │ │ ├── 64bd365b2e8f3782.txt │ │ ├── 6f16054c149ca0c6.txt │ │ ├── 78a5a9af66623c8.txt │ │ ├── 9e9d05a5f24f79b6.txt │ │ ├── b16ec22e593aaf0e.txt │ │ ├── b5a35f93905e72b0.txt │ │ ├── c8099de3a3431c20.txt │ │ ├── c9a059184ea54b42.txt │ │ ├── cb2bc316e7ced127.txt │ │ ├── f2f22c3f1f11b219.txt │ │ └── f7e0ac24db6df31.txt │ ├── behaviors.csv │ ├── behaviors.json │ ├── categories.csv │ ├── categories.json │ ├── packages.json │ ├── suites.csv │ ├── suites.json │ ├── test-cases │ │ ├── 150f129aaf81c31f.json │ │ ├── 2287eec54c7f212.json │ │ ├── 41e8e6e95b7c75b5.json │ │ ├── 43dc24eab8dcd7ee.json │ │ ├── 4ca6ce593a277005.json │ │ ├── 5847db81c22255cc.json │ │ ├── 59a0b2d61cf702a6.json │ │ ├── 5e792b44457ea9aa.json │ │ ├── 77bac1a9be6aa799.json │ │ ├── 8db162b0c1a180aa.json │ │ ├── 8f972462257f4377.json │ │ ├── 928fd66149be506e.json │ │ ├── 93000324a8016c7a.json │ │ ├── 9c7fb473d7fc68f0.json │ │ ├── a9e063ba23abac18.json │ │ ├── bfa1537d2e1423a0.json │ │ ├── c2f39569f374b874.json │ │ └── d08fac4ece00ec22.json │ └── timeline.json ├── export │ ├── influxDbData.txt │ ├── mail.html │ └── prometheusData.txt ├── favicon.ico ├── history │ ├── categories-trend.json │ ├── duration-trend.json │ ├── history-trend.json │ ├── history.json │ └── retry-trend.json ├── index.html ├── plugins │ ├── behaviors │ │ └── index.js │ ├── packages │ │ └── index.js │ └── screen-diff │ │ ├── index.js │ │ └── styles.css ├── styles.css └── widgets │ ├── behaviors.json │ ├── categories-trend.json │ ├── categories.json │ ├── duration-trend.json │ ├── duration.json │ ├── environment.json │ ├── executors.json │ ├── history-trend.json │ ├── launch.json │ ├── retry-trend.json │ ├── severity.json │ ├── status-chart.json │ ├── suites.json │ └── summary.json ├── test_result ├── 0f682578-f740-4a3b-8099-34a043764e54-attachment.txt ├── 12f4fb24-a6db-4a86-85e1-4abbab26ac59-container.json ├── 18ffd22c-7027-4d6b-b968-fc2eb6ea73fe-result.json ├── 1af97849-47b3-43d3-8658-e0e399e88a23-result.json ├── 234db551-0932-4a9c-9737-3b21c6deaa9d-container.json ├── 2e20e98a-12c9-4e9b-b007-f7d318f88b9b-result.json ├── 32739062-f736-40a4-9b9b-c6cf9d72c2c6-attachment.txt ├── 33d478e7-5aaa-44f8-957f-82cda50aea61-result.json ├── 37a51e63-6a8e-4c63-9878-b30fec947a80-container.json ├── 3976adb9-505e-46c1-9a17-b47a440a8a22-container.json ├── 3be4cec9-15a5-4c36-8c59-4edd9b052e23-container.json ├── 40b7906a-05e2-46e9-81bc-92a686ade2e4-container.json ├── 4a1983e7-ae32-4e18-be9b-91228266e00d-container.json ├── 4edc4e07-d6b2-4e47-b4f4-d121edc8c159-result.json ├── 4fda2be0-77ae-4703-9a4b-dbe6191c7fc7-container.json ├── 51f064bd-353f-49f8-82c2-94b97c4b1fbf-attachment.txt ├── 524c61e9-0a42-4299-b2a3-3a48df8f01df-container.json ├── 58091a4c-be35-4024-a892-40942a6dea6b-container.json ├── 5c473561-2d3a-45a5-862e-ba9840bb0d2f-attachment.txt ├── 5e066ce1-14d2-4338-8dbc-565889502298-attachment.txt ├── 5fe4b510-4b93-4317-96a5-b46121ba6245-result.json ├── 69bd538e-a44f-46a0-8ceb-3d99ae3f4267-result.json ├── 6cd025bd-323f-443b-b8ff-7160565623ae-result.json ├── 715ba18e-39e6-4200-9412-25a935241914-container.json ├── 779b2e16-28b5-4ee4-a5ec-9ffd1cb9fdb0-attachment.txt ├── 7dc69f04-0038-4564-909d-cba1d69dfe64-result.json ├── 8ffaeddc-e78e-4a60-b543-8fe35ec9dac7-result.json ├── 94984d21-224e-43cf-9bb8-41ff30447914-attachment.txt ├── 978d6878-f432-4bca-be8f-294eae0af00b-result.json ├── 9a60667f-33f3-4fff-a023-0567b2ca4aa3-result.json ├── 9a8f1331-6175-4f3b-9811-e8594b233fd6-attachment.txt ├── 9b968bd8-6146-41ad-8259-248d87536899-attachment.txt ├── 9c228662-32f1-4b68-9dc7-0bab62f80428-attachment.txt ├── 9e30fa4d-3ca8-427e-b073-36692594b847-container.json ├── 9f46f864-c347-4654-8dd0-40cb238d8437-attachment.txt ├── a2a9f264-282a-4ee6-a127-3fdebd51f8d0-result.json ├── a8ec81ed-e814-40af-9e19-d30af4515340-attachment.txt ├── b3199980-1cd3-4175-af33-a8fa5e020aa7-attachment.txt ├── b77e1f77-57b6-4a22-a3c6-0af74b777c4c-result.json ├── c2736481-ce73-47f6-aa78-052dd17c6526-attachment.txt ├── ce12d212-8dc3-42a7-9d11-d9c989477190-container.json ├── d52db718-67af-4bce-a8ea-19bcf7673999-attachment.txt ├── d5937f42-3ff8-40d0-b2c3-011f28adfc09-result.json ├── d6ed73fc-d53e-4c50-9f7f-82fbe72a6800-attachment.txt ├── db5d2c79-1193-4cfe-be2b-f0a2645c2578-attachment.txt ├── de5763a9-6dd1-4a17-aa62-0171b0ce1d97-container.json ├── e4b40619-7281-4ba9-8d49-55419690e526-container.json ├── e77e2185-78c7-4fd2-8238-3f43c11948bd-result.json ├── e7db5765-059d-414c-947c-11a4a8845fdd-container.json ├── e876952e-1082-4c46-af1e-17ec42587d64-result.json ├── e8a8c5d1-131b-4724-9a7a-4fcc08c6ee95-container.json ├── f07a7ae1-d797-4139-9a19-17e2940e6cc8-attachment.txt ├── f1f0997f-f2ca-427f-8b72-d0b4a86d5b7c-result.json └── f32a694f-543d-490f-897f-7bfd8524deb2-container.json └── util ├── __init__.py ├── assert_util.py ├── excel_util.py ├── global_var.py ├── json_util.py ├── keyword_function.py ├── log_util.py └── request_util.py /README.md: -------------------------------------------------------------------------------- 1 | # InterfaceAutoTestWithPytest 2 | 接口自动化测试框架:Pytest+Allure+Excel数据驱动 3 | 4 | 博客详解:https://www.cnblogs.com/juno3550/p/15165332.html 5 | -------------------------------------------------------------------------------- /conf/unique_num.txt: -------------------------------------------------------------------------------- 1 | 30309 -------------------------------------------------------------------------------- /test_case/__init__.py: -------------------------------------------------------------------------------- 1 | from util.log_util import log_config_ini 2 | 3 | log_config_ini() -------------------------------------------------------------------------------- /test_case/test_edit_module.py: -------------------------------------------------------------------------------- 1 | import pytest 2 | import allure 3 | import logging 4 | from util.assert_util import assert_keyword 5 | from util.request_util import api_request 6 | from util.global_var import * 7 | from util.excel_util import excel_util 8 | 9 | 10 | create_test_data = excel_util.get_sheet_data("创建博文") 11 | user_blog_search_test_data = excel_util.get_sheet_data("查看用户博文") 12 | blog_content_test_data = excel_util.get_sheet_data("查看博文内容") 13 | blog_update_test_data = excel_util.get_sheet_data("更新博文内容") 14 | blog_batch_search_test_data = excel_util.get_sheet_data("批量查询博文") 15 | delete_test_data = excel_util.get_sheet_data("删除博文") 16 | 17 | 18 | @allure.feature("编辑模块") 19 | @pytest.mark.dependency(name="TestEditModule", depends=["TestLoginModule"], scope='package') 20 | class TestEditModule: 21 | 22 | # def setup_class(self): 23 | # 初始化调用注册和登录接口,获取userid和token供后续接口关联 24 | # 使用该初始化则可不依赖test_login_module.py的TestLoginModule 25 | # get_userid_and_token() 26 | 27 | @allure.story("博文创建功能") 28 | @allure.title('创建博文') # 指定测试用例标题,默认是函数名 29 | @allure.description('通过接口创建博文') # 添加测试用例描述 30 | @allure.severity(allure.severity_level.CRITICAL) # 阻塞级别 31 | @pytest.mark.run(order=3) 32 | @pytest.mark.parametrize('case_data', create_test_data) 33 | def test_create(self, case_data): 34 | with allure.step("读取请求数据,调用接口"): 35 | logging.info("接口用例数据:%s" % case_data) 36 | response = api_request(case_data[API_IP], case_data[API_URI], case_data[REQUEST_METHOD], 37 | case_data[API_REQUEST_DATA], case_data[RESPONSE_EXTRACT_VAR], 38 | case_data[REQUEST_HEADER], case_data[REQUEST_COOKIE]) 39 | with allure.step("获取响应数据,进行断言"): 40 | assert_keyword(response, case_data[RESPONSE_ASSERT_KEYWORD]) 41 | 42 | @allure.story("用户博文查询功能") 43 | @allure.title('查看用户博文') # 指定测试用例标题,默认是函数名 44 | @allure.description('通过接口查看用户所有博文') # 添加测试用例描述 45 | @allure.severity(allure.severity_level.CRITICAL) # 严重级别 46 | @pytest.mark.run(order=4) 47 | @pytest.mark.parametrize('case_data', user_blog_search_test_data) 48 | def test_user_blog_search(self, case_data): 49 | with allure.step("读取请求数据,调用接口"): 50 | logging.info("接口用例数据:%s" % case_data) 51 | response = api_request(case_data[API_IP], case_data[API_URI], case_data[REQUEST_METHOD], 52 | case_data[API_REQUEST_DATA], case_data[RESPONSE_EXTRACT_VAR], 53 | case_data[REQUEST_HEADER], case_data[REQUEST_COOKIE]) 54 | with allure.step("获取响应数据,进行断言"): 55 | assert_keyword(response, case_data[RESPONSE_ASSERT_KEYWORD]) 56 | 57 | @allure.story("博文内容查询功能") 58 | @allure.title('查看博文内容') # 指定测试用例标题,默认是函数名 59 | @allure.description('通过接口查看博文内容') # 添加测试用例描述 60 | @allure.severity(allure.severity_level.CRITICAL) # 严重级别 61 | @pytest.mark.run(order=5) 62 | @pytest.mark.parametrize('case_data', blog_content_test_data) 63 | def test_blog_content_search(self, case_data): 64 | with allure.step("读取请求数据,调用接口"): 65 | logging.info("接口用例数据:%s" % case_data) 66 | response = api_request(case_data[API_IP], case_data[API_URI], case_data[REQUEST_METHOD], 67 | case_data[API_REQUEST_DATA], case_data[RESPONSE_EXTRACT_VAR], 68 | case_data[REQUEST_HEADER], case_data[REQUEST_COOKIE]) 69 | with allure.step("获取响应数据,进行断言"): 70 | assert_keyword(response, case_data[RESPONSE_ASSERT_KEYWORD]) 71 | 72 | @allure.story("博文内容更新功能") 73 | @allure.title('更新博文内容') # 指定测试用例标题,默认是函数名 74 | @allure.description('通过接口更新博文内容') # 添加测试用例描述 75 | @allure.severity(allure.severity_level.CRITICAL) # 严重级别 76 | @pytest.mark.run(order=6) 77 | @pytest.mark.parametrize('case_data', blog_update_test_data) 78 | def test_blog_content_update(self, case_data): 79 | with allure.step("读取请求数据,调用接口"): 80 | logging.info("接口用例数据:%s" % case_data) 81 | response = api_request(case_data[API_IP], case_data[API_URI], case_data[REQUEST_METHOD], 82 | case_data[API_REQUEST_DATA], case_data[RESPONSE_EXTRACT_VAR], 83 | case_data[REQUEST_HEADER], case_data[REQUEST_COOKIE]) 84 | with allure.step("获取响应数据,进行断言"): 85 | assert_keyword(response, case_data[RESPONSE_ASSERT_KEYWORD]) 86 | 87 | @allure.story("批量查询博文功能") 88 | @allure.title('批量查询博文') # 指定测试用例标题,默认是函数名 89 | @allure.description('通过接口批量查询博文') # 添加测试用例描述 90 | @allure.severity(allure.severity_level.CRITICAL) # 严重级别 91 | @pytest.mark.run(order=7) 92 | @pytest.mark.parametrize('case_data', blog_batch_search_test_data) 93 | def test_blog_batch_search(self, case_data): 94 | with allure.step("读取请求数据,调用接口"): 95 | logging.info("接口用例数据:%s" % case_data) 96 | response = api_request(case_data[API_IP], case_data[API_URI], case_data[REQUEST_METHOD], 97 | case_data[API_REQUEST_DATA], case_data[RESPONSE_EXTRACT_VAR], 98 | case_data[REQUEST_HEADER], case_data[REQUEST_COOKIE]) 99 | with allure.step("获取响应数据,进行断言"): 100 | assert_keyword(response, case_data[RESPONSE_ASSERT_KEYWORD]) 101 | 102 | @allure.story("博文删除功能") 103 | @allure.title('删除博文') # 指定测试用例标题,默认是函数名 104 | @allure.description('通过接口删除博文') # 添加测试用例描述 105 | @allure.severity(allure.severity_level.CRITICAL) # 严重级别 106 | @pytest.mark.run(order=8) 107 | @pytest.mark.parametrize('case_data', delete_test_data) 108 | def test_delete(self, case_data): 109 | with allure.step("读取请求数据,调用接口"): 110 | logging.info("接口用例数据:%s" % case_data) 111 | response = api_request(case_data[API_IP], case_data[API_URI], case_data[REQUEST_METHOD], 112 | case_data[API_REQUEST_DATA], case_data[RESPONSE_EXTRACT_VAR], 113 | case_data[REQUEST_HEADER], case_data[REQUEST_COOKIE]) 114 | with allure.step("获取响应数据,进行断言"): 115 | assert_keyword(response, case_data[RESPONSE_ASSERT_KEYWORD]) 116 | 117 | 118 | if __name__ == "__main__": 119 | test_dir = os.path.dirname(__file__) 120 | pytest.main(['-s', '-q', test_dir, '--alluredir', '../test_result/', "--clean-alluredir"]) 121 | os.system('allure generate ../test_result/ -o ../test_report/ --clean') 122 | os.system('allure open -h 127.0.0.1 -p 8881 ../test_report/') -------------------------------------------------------------------------------- /test_case/test_login_module.py: -------------------------------------------------------------------------------- 1 | import pytest 2 | import allure 3 | import logging 4 | from util.assert_util import assert_keyword 5 | from util.request_util import api_request 6 | from util.global_var import * 7 | from util.excel_util import excel_util 8 | 9 | 10 | register_test_data = excel_util.get_sheet_data("注册") 11 | login_test_data = excel_util.get_sheet_data("登录") 12 | 13 | 14 | @allure.feature("登录模块") 15 | @pytest.mark.dependency(name="TestLoginModule") 16 | class TestLoginModule: 17 | 18 | @allure.story("注册功能") 19 | @allure.title('用户注册') # 指定测试用例标题,默认是函数名 20 | @allure.description('通过接口进行用户注册') # 添加测试用例描述 21 | @allure.severity(allure.severity_level.BLOCKER) # 阻塞级别 22 | @pytest.mark.run(order=1) 23 | @pytest.mark.parametrize('case_data', register_test_data) 24 | def test_register(self, case_data): 25 | with allure.step("读取请求数据,调用接口"): 26 | logging.info("接口用例数据:%s" % case_data) 27 | response = api_request(case_data[API_IP], case_data[API_URI], case_data[REQUEST_METHOD], 28 | case_data[API_REQUEST_DATA], case_data[RESPONSE_EXTRACT_VAR], 29 | case_data[REQUEST_HEADER], case_data[REQUEST_COOKIE]) 30 | with allure.step("获取响应数据,进行断言"): 31 | assert_keyword(response, case_data[RESPONSE_ASSERT_KEYWORD]) 32 | 33 | @allure.story("登录功能") 34 | @allure.title('用户登录') # 指定测试用例标题,默认是函数名 35 | @allure.description('通过接口进行用户登录') # 添加测试用例描述 36 | @allure.severity(allure.severity_level.BLOCKER) # 阻塞级别 37 | @pytest.mark.run(order=2) 38 | @pytest.mark.parametrize('case_data', login_test_data) 39 | def test_login(self, case_data): 40 | with allure.step("读取请求数据,调用接口"): 41 | logging.info("接口用例数据:%s" % case_data) 42 | response = api_request(case_data[API_IP], case_data[API_URI], case_data[REQUEST_METHOD], 43 | case_data[API_REQUEST_DATA], case_data[RESPONSE_EXTRACT_VAR], 44 | case_data[REQUEST_HEADER], case_data[REQUEST_COOKIE]) 45 | with allure.step("获取响应数据,进行断言"): 46 | assert_keyword(response, case_data[RESPONSE_ASSERT_KEYWORD]) 47 | 48 | 49 | if __name__ == "__main__": 50 | test_dir = os.path.dirname(__file__) 51 | pytest.main(['-s', '-q', test_dir, '--alluredir', '../test_result/', "--clean-alluredir"]) 52 | os.system('allure generate ../test_result/ -o ../test_report/ --clean') 53 | os.system('allure open -h 127.0.0.1 -p 8881 ../test_report/') -------------------------------------------------------------------------------- /test_data/test_case_data.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/juno3550/InterfaceAutoTestWithPytest/f050e71a9f7cf5e3ee3697d3d1b47b83e6bd442a/test_data/test_case_data.xlsx -------------------------------------------------------------------------------- /test_report/data/attachments/190ba6dba1231ffa.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[3.0, '密码错误,登录成功', 'http://39.100.104.214:8080', '/login/', 'post', '{"username":"juno${unique_num2}","password":"juno999999"}', '"code": "03"', '', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:{"username":"juno${unique_num2}","password":"juno999999"} 3 | INFO root:log_util.py:16 请求数据预处理结果:{"username":"juno30302","password":"juno999999"} 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"code": "03", "params": {"username": "juno30302", "password": "juno999999"}} 6 | INFO root:log_util.py:16 无关联参数提取.. 7 | INFO root:log_util.py:16 【"code": "03"】关键字断言成功【{"code": "03", "params": {"username": "juno30302", "password": "juno999999"}}】 -------------------------------------------------------------------------------- /test_report/data/attachments/1a226aaf9e2633e3.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[2.0, 'articleId有误,博文批量查询失败', 'http://39.100.104.214:8080', '/getBlogsContent/articleIds=null', 'get', '', '"code": "999"', '', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:/getBlogsContent/articleIds=null 3 | INFO root:log_util.py:16 请求数据预处理结果:/getBlogsContent/articleIds=null 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"code": "999"} 6 | INFO root:log_util.py:16 无关联参数提取.. 7 | INFO root:log_util.py:16 【"code": "999"】关键字断言成功【{"code": "999"}】 -------------------------------------------------------------------------------- /test_report/data/attachments/36d9e2c92188f1e9.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[2.0, '创建博文失败', 'http://39.100.104.214:8080', '/create/', 'post', '{"userid":${userid}, "token":"123", "title":"title test", "content":"content test"}', '"code": "03"', '', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:{"userid":${userid}, "token":"123", "title":"title test", "content":"content test"} 3 | INFO root:log_util.py:16 请求数据预处理结果:{"userid":337, "token":"123", "title":"title test", "content":"content test"} 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"code": "03", "userid": 337} 6 | INFO root:log_util.py:16 无关联参数提取.. 7 | INFO root:log_util.py:16 【"code": "03"】关键字断言成功【{"code": "03", "userid": 337}】 -------------------------------------------------------------------------------- /test_report/data/attachments/3c673d881dc90af0.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[1.0, '博文内容更新成功', 'http://39.100.104.214:8080', '/update/', 'put', '{"userid":${userid}, "token": "${token}", "articleId":${articleId}, "title":"python", "content":"test test"}', '"update_time":', '', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:{"userid":${userid}, "token": "${token}", "articleId":${articleId}, "title":"python", "content":"test test"} 3 | INFO root:log_util.py:16 请求数据预处理结果:{"userid":337, "token": "e951750fd86bfe9d643d46b42fa2f1c7", "articleId":142, "title":"python", "content":"test test"} 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"articleId": 142, "update_time": "2021-08-26 00:07:58", "code": "00", "userid": 337} 6 | INFO root:log_util.py:16 无关联参数提取.. 7 | INFO root:log_util.py:16 【"update_time":】关键字断言成功【{"articleId": 142, "update_time": "2021-08-26 00:07:58", "code": "00", "userid": 337}】 -------------------------------------------------------------------------------- /test_report/data/attachments/4f2134c8077dabae.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[1.0, '用户存在博文,查询成功', 'http://39.100.104.214:8080', '/getBlogsOfUser/', 'post', '{"userid":${userid}, "token":"${token}"}', '"title"', 'articleId', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:{"userid":${userid}, "token":"${token}"} 3 | INFO root:log_util.py:16 请求数据预处理结果:{"userid":337, "token":"e951750fd86bfe9d643d46b42fa2f1c7"} 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"data": [{"update_time": null, "title": "title test", "content": "content test", "articleId": 142, "owner": 337, "posted_on": "2021-08-26 00:07:57"}], "code": "00", "userid": 337} 6 | INFO root:log_util.py:16 关联参数提取成功:【articleId: 142】 7 | INFO root:log_util.py:16 【"title"】关键字断言成功【{"data": [{"update_time": null, "title": "title test", "content": "content test", "articleId": 142, "owner": 337, "posted_on": "2021-08-26 00:07:57"}], "code": "00", "userid": 337}】 -------------------------------------------------------------------------------- /test_report/data/attachments/51773fc339bb5a2a.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[1.0, '博文内容查询成功', 'http://39.100.104.214:8080', '/getBlogContent/${articleId}', 'get', '', '"content": "content test"', '', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:/getBlogContent/${articleId} 3 | INFO root:log_util.py:16 请求数据预处理结果:/getBlogContent/142 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"code": "00", "data": [{"update_time": null, "title": "title test", "content": "content test", "articleId": 142, "owner": 337, "posted_on": "2021-08-26 00:07:57"}]} 6 | INFO root:log_util.py:16 无关联参数提取.. 7 | INFO root:log_util.py:16 【"content": "content test"】关键字断言成功【{"code": "00", "data": [{"update_time": null, "title": "title test", "content": "content test", "articleId": 142, "owner": 337, "posted_on": "2021-08-26 00:07:57"}]}】 -------------------------------------------------------------------------------- /test_report/data/attachments/5956dfac7c2affd7.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[2.0, 'token有误,更新失败', 'http://39.100.104.214:8080', '/delete/', 'post', '{"userid":${userid}, "token": "123", "articleId":[]}', '"code": "03"', '', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:{"userid":${userid}, "token": "123", "articleId":[]} 3 | INFO root:log_util.py:16 请求数据预处理结果:{"userid":337, "token": "123", "articleId":[]} 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"code": "03", "userid": 337} 6 | INFO root:log_util.py:16 无关联参数提取.. 7 | INFO root:log_util.py:16 【"code": "03"】关键字断言成功【{"code": "03", "userid": 337}】 -------------------------------------------------------------------------------- /test_report/data/attachments/64bd365b2e8f3782.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[2.0, '用户名重复,注册失败', 'http://39.100.104.214:8080', '/register/', 'post', '{"username":"juno${unique_num1}","password":"juno999999","email":"juno123@qq.com"}', '"code": "01"', '', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:{"username":"juno${unique_num1}","password":"juno999999","email":"juno123@qq.com"} 3 | INFO root:log_util.py:16 请求数据预处理结果:{"username":"juno30301","password":"juno999999","email":"juno123@qq.com"} 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"username": "juno30301", "code": "01"} 6 | INFO root:log_util.py:16 无关联参数提取.. 7 | INFO root:log_util.py:16 【"code": "01"】关键字断言成功【{"username": "juno30301", "code": "01"}】 -------------------------------------------------------------------------------- /test_report/data/attachments/6f16054c149ca0c6.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[1.0, '登录成功', 'http://39.100.104.214:8080', '/login/', 'post', '{"username":"juno${unique_num1}","password":"${md5(\'juno999999\')}"}', '"token"', 'token', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:{"username":"juno${unique_num1}","password":"${md5('juno999999')}"} 3 | INFO root:log_util.py:16 请求数据预处理结果:{"username":"juno30301","password":"4c1c1924ad2ba4d1136acee44a1b39a2"} 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"token": "68b467791cedc1dd4d9b83712a4e3d58", "code": "00", "userid": 336, "login_time": "2021-08-26 00:07:55"} 6 | INFO root:log_util.py:16 关联参数提取成功:【token: 68b467791cedc1dd4d9b83712a4e3d58】 7 | INFO root:log_util.py:16 【"token"】关键字断言成功【{"token": "68b467791cedc1dd4d9b83712a4e3d58", "code": "00", "userid": 336, "login_time": "2021-08-26 00:07:55"}】 -------------------------------------------------------------------------------- /test_report/data/attachments/78a5a9af66623c8.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[2.0, 'articleId有误,更新失败', 'http://39.100.104.214:8080', '/update/', 'put', '{"userid":${userid}, "token": "${token}", "articleId":1234, "title":"python", "content":"test test"}', '"code": "03"', '', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:{"userid":${userid}, "token": "${token}", "articleId":1234, "title":"python", "content":"test test"} 3 | INFO root:log_util.py:16 请求数据预处理结果:{"userid":337, "token": "e951750fd86bfe9d643d46b42fa2f1c7", "articleId":1234, "title":"python", "content":"test test"} 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"articleId": 1234, "code": "03", "userid": 337} 6 | INFO root:log_util.py:16 无关联参数提取.. 7 | INFO root:log_util.py:16 【"code": "03"】关键字断言成功【{"articleId": 1234, "code": "03", "userid": 337}】 -------------------------------------------------------------------------------- /test_report/data/attachments/9e9d05a5f24f79b6.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[2.0, '注册成功', 'http://39.100.104.214:8080', '/register/', 'post', '{"username":"juno${get_unique_num2}","password":"juno999999","email":"juno123@qq.com"}', '"code": "00"', 'userid', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:{"username":"juno${get_unique_num2}","password":"juno999999","email":"juno123@qq.com"} 3 | INFO root:log_util.py:16 请求数据预处理结果:{"username":"juno30302","password":"juno999999","email":"juno123@qq.com"} 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"code": "00", "userid": 337} 6 | INFO root:log_util.py:16 关联参数提取成功:【userid: 337】 7 | INFO root:log_util.py:16 【"code": "00"】关键字断言成功【{"code": "00", "userid": 337}】 -------------------------------------------------------------------------------- /test_report/data/attachments/b16ec22e593aaf0e.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[2.0, 'articleId有误,查询失败', 'http://39.100.104.214:8080', '/getBlogContent/1234', 'get', '', '"code": "03"', '', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:/getBlogContent/1234 3 | INFO root:log_util.py:16 请求数据预处理结果:/getBlogContent/1234 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"code": "03", "articleId": "1234"} 6 | INFO root:log_util.py:16 无关联参数提取.. 7 | INFO root:log_util.py:16 【"code": "03"】关键字断言成功【{"code": "03", "articleId": "1234"}】 -------------------------------------------------------------------------------- /test_report/data/attachments/b5a35f93905e72b0.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[1.0, '注册成功', 'http://39.100.104.214:8080', '/register/', 'post', '{"username":"juno${get_unique_num1}","password":"juno999999","email":"juno123@qq.com"}', '"code": "00"', 'userid', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:{"username":"juno${get_unique_num1}","password":"juno999999","email":"juno123@qq.com"} 3 | INFO root:log_util.py:16 请求数据预处理结果:{"username":"juno30301","password":"juno999999","email":"juno123@qq.com"} 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"code": "00", "userid": 336} 6 | INFO root:log_util.py:16 关联参数提取成功:【userid: 336】 7 | INFO root:log_util.py:16 【"code": "00"】关键字断言成功【{"code": "00", "userid": 336}】 -------------------------------------------------------------------------------- /test_report/data/attachments/c8099de3a3431c20.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[2.0, '登录成功', 'http://39.100.104.214:8080', '/login/', 'post', '{"username":"juno${unique_num2}","password":"${md5(\'juno999999\')}"}', '"token"', 'token', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:{"username":"juno${unique_num2}","password":"${md5('juno999999')}"} 3 | INFO root:log_util.py:16 请求数据预处理结果:{"username":"juno30302","password":"4c1c1924ad2ba4d1136acee44a1b39a2"} 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"token": "e951750fd86bfe9d643d46b42fa2f1c7", "code": "00", "userid": 337, "login_time": "2021-08-26 00:07:56"} 6 | INFO root:log_util.py:16 关联参数提取成功:【token: e951750fd86bfe9d643d46b42fa2f1c7】 7 | INFO root:log_util.py:16 【"token"】关键字断言成功【{"token": "e951750fd86bfe9d643d46b42fa2f1c7", "code": "00", "userid": 337, "login_time": "2021-08-26 00:07:56"}】 -------------------------------------------------------------------------------- /test_report/data/attachments/c9a059184ea54b42.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[1.0, '博文删除成功', 'http://39.100.104.214:8080', '/delete/', 'post', '{"userid":${userid}, "token": "${token}", "articleId":[${articleId}]}', '"code": "00"', '', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:{"userid":${userid}, "token": "${token}", "articleId":[${articleId}]} 3 | INFO root:log_util.py:16 请求数据预处理结果:{"userid":337, "token": "e951750fd86bfe9d643d46b42fa2f1c7", "articleId":[142]} 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"articleId": [142], "code": "00", "userid": 337} 6 | INFO root:log_util.py:16 无关联参数提取.. 7 | INFO root:log_util.py:16 【"code": "00"】关键字断言成功【{"articleId": [142], "code": "00", "userid": 337}】 -------------------------------------------------------------------------------- /test_report/data/attachments/cb2bc316e7ced127.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[1.0, '创建博文成功', 'http://39.100.104.214:8080', '/create/', 'post', '{"userid":${userid}, "token":"${token}", "title":"title test", "content":"content test"}', '"code": "00"', '', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:{"userid":${userid}, "token":"${token}", "title":"title test", "content":"content test"} 3 | INFO root:log_util.py:16 请求数据预处理结果:{"userid":337, "token":"e951750fd86bfe9d643d46b42fa2f1c7", "title":"title test", "content":"content test"} 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"data": [{"content": "content test", "title": "title test"}], "code": "00", "userid": 337} 6 | INFO root:log_util.py:16 无关联参数提取.. 7 | INFO root:log_util.py:16 【"code": "00"】关键字断言成功【{"data": [{"content": "content test", "title": "title test"}], "code": "00", "userid": 337}】 -------------------------------------------------------------------------------- /test_report/data/attachments/f2f22c3f1f11b219.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[2.0, '用户token有误,查询失败', 'http://39.100.104.214:8080', '/getBlogsOfUser/', 'post', '{"userid":${userid}, "token":"123"}', '"code": "03"', '', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:{"userid":${userid}, "token":"123"} 3 | INFO root:log_util.py:16 请求数据预处理结果:{"userid":337, "token":"123"} 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"code": "03", "userid": 337} 6 | INFO root:log_util.py:16 无关联参数提取.. 7 | INFO root:log_util.py:16 【"code": "03"】关键字断言成功【{"code": "03", "userid": 337}】 -------------------------------------------------------------------------------- /test_report/data/attachments/f7e0ac24db6df31.txt: -------------------------------------------------------------------------------- 1 | INFO root:log_util.py:16 接口用例数据:[1.0, '博文批量查询成功', 'http://39.100.104.214:8080', '/getBlogsContent/articleIds=${articleId}', 'get', '', '"code": "00"', '', '', ''] 2 | INFO root:log_util.py:16 请求原始数据:/getBlogsContent/articleIds=${articleId} 3 | INFO root:log_util.py:16 请求数据预处理结果:/getBlogsContent/articleIds=142 4 | INFO root:log_util.py:16 接口调用成功! 5 | INFO root:log_util.py:16 响应数据:{"code": "00", "data": [{"update_time": "2021-08-26 00:07:58", "title": "python", "content": "test test", "articleId": 142, "owner": 337, "posted_on": "2021-08-26 00:07:57"}]} 6 | INFO root:log_util.py:16 无关联参数提取.. 7 | INFO root:log_util.py:16 【"code": "00"】关键字断言成功【{"code": "00", "data": [{"update_time": "2021-08-26 00:07:58", "title": "python", "content": "test test", "articleId": 142, "owner": 337, "posted_on": "2021-08-26 00:07:57"}]}】 -------------------------------------------------------------------------------- /test_report/data/behaviors.csv: -------------------------------------------------------------------------------- 1 | "Epic","Feature","Story","FAILED","BROKEN","PASSED","SKIPPED","UNKNOWN" 2 | "","编辑模块","博文删除功能","0","0","2","0","0" 3 | "","编辑模块","博文创建功能","0","0","2","0","0" 4 | "","登录模块","注册功能","0","0","3","0","0" 5 | "","编辑模块","博文内容更新功能","0","0","2","0","0" 6 | "","编辑模块","批量查询博文功能","0","0","2","0","0" 7 | "","登录模块","登录功能","0","0","3","0","0" 8 | "","编辑模块","博文内容查询功能","0","0","2","0","0" 9 | "","编辑模块","用户博文查询功能","0","0","2","0","0" 10 | -------------------------------------------------------------------------------- /test_report/data/categories.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/juno3550/InterfaceAutoTestWithPytest/f050e71a9f7cf5e3ee3697d3d1b47b83e6bd442a/test_report/data/categories.csv -------------------------------------------------------------------------------- /test_report/data/categories.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "4b4757e66a1912dae1a509f688f20b0f", 3 | "name" : "categories", 4 | "children" : [ ] 5 | } -------------------------------------------------------------------------------- /test_report/data/packages.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "83edc06c07f9ae9e47eb6dd1b683e4e2", 3 | "name" : "packages", 4 | "children" : [ { 5 | "name" : "test_case", 6 | "children" : [ { 7 | "name" : "test_login_module", 8 | "children" : [ { 9 | "name" : "用户注册", 10 | "uid" : "bfa1537d2e1423a0", 11 | "parentUid" : "091d0ef08c8711394b9f668495b005a3", 12 | "status" : "passed", 13 | "time" : { 14 | "start" : 1629907674132, 15 | "stop" : 1629907674338, 16 | "duration" : 206 17 | }, 18 | "flaky" : false, 19 | "newFailed" : false, 20 | "parameters" : [ "[1.0, '注册成功', 'http://39.100.104.214:8080', '/register/', 'post', '{\"username\":\"juno${get_unique_num1}\",\"password\":\"juno999999\",\"email\":\"juno123@qq.com\"}', '\"code\": \"00\"', 'userid', '', '']" ] 21 | }, { 22 | "name" : "用户注册", 23 | "uid" : "41e8e6e95b7c75b5", 24 | "parentUid" : "091d0ef08c8711394b9f668495b005a3", 25 | "status" : "passed", 26 | "time" : { 27 | "start" : 1629907674351, 28 | "stop" : 1629907674530, 29 | "duration" : 179 30 | }, 31 | "flaky" : false, 32 | "newFailed" : false, 33 | "parameters" : [ "[2.0, '用户名重复,注册失败', 'http://39.100.104.214:8080', '/register/', 'post', '{\"username\":\"juno${unique_num1}\",\"password\":\"juno999999\",\"email\":\"juno123@qq.com\"}', '\"code\": \"01\"', '', '', '']" ] 34 | }, { 35 | "name" : "用户注册", 36 | "uid" : "59a0b2d61cf702a6", 37 | "parentUid" : "091d0ef08c8711394b9f668495b005a3", 38 | "status" : "passed", 39 | "time" : { 40 | "start" : 1629907674544, 41 | "stop" : 1629907675012, 42 | "duration" : 468 43 | }, 44 | "flaky" : false, 45 | "newFailed" : false, 46 | "parameters" : [ "[2.0, '注册成功', 'http://39.100.104.214:8080', '/register/', 'post', '{\"username\":\"juno${get_unique_num2}\",\"password\":\"juno999999\",\"email\":\"juno123@qq.com\"}', '\"code\": \"00\"', 'userid', '', '']" ] 47 | }, { 48 | "name" : "用户登录", 49 | "uid" : "150f129aaf81c31f", 50 | "parentUid" : "091d0ef08c8711394b9f668495b005a3", 51 | "status" : "passed", 52 | "time" : { 53 | "start" : 1629907675025, 54 | "stop" : 1629907675628, 55 | "duration" : 603 56 | }, 57 | "flaky" : false, 58 | "newFailed" : false, 59 | "parameters" : [ "[1.0, '登录成功', 'http://39.100.104.214:8080', '/login/', 'post', '{\"username\":\"juno${unique_num1}\",\"password\":\"${md5(\\'juno999999\\')}\"}', '\"token\"', 'token', '', '']" ] 60 | }, { 61 | "name" : "用户登录", 62 | "uid" : "77bac1a9be6aa799", 63 | "parentUid" : "091d0ef08c8711394b9f668495b005a3", 64 | "status" : "passed", 65 | "time" : { 66 | "start" : 1629907675639, 67 | "stop" : 1629907676260, 68 | "duration" : 621 69 | }, 70 | "flaky" : false, 71 | "newFailed" : false, 72 | "parameters" : [ "[2.0, '登录成功', 'http://39.100.104.214:8080', '/login/', 'post', '{\"username\":\"juno${unique_num2}\",\"password\":\"${md5(\\'juno999999\\')}\"}', '\"token\"', 'token', '', '']" ] 73 | }, { 74 | "name" : "用户登录", 75 | "uid" : "5847db81c22255cc", 76 | "parentUid" : "091d0ef08c8711394b9f668495b005a3", 77 | "status" : "passed", 78 | "time" : { 79 | "start" : 1629907676274, 80 | "stop" : 1629907677322, 81 | "duration" : 1048 82 | }, 83 | "flaky" : false, 84 | "newFailed" : false, 85 | "parameters" : [ "[3.0, '密码错误,登录成功', 'http://39.100.104.214:8080', '/login/', 'post', '{\"username\":\"juno${unique_num2}\",\"password\":\"juno999999\"}', '\"code\": \"03\"', '', '', '']" ] 86 | } ], 87 | "uid" : "091d0ef08c8711394b9f668495b005a3" 88 | }, { 89 | "name" : "test_edit_module", 90 | "children" : [ { 91 | "name" : "创建博文", 92 | "uid" : "43dc24eab8dcd7ee", 93 | "parentUid" : "1117d61e2bd931c47a920db3e828767a", 94 | "status" : "passed", 95 | "time" : { 96 | "start" : 1629907677334, 97 | "stop" : 1629907677497, 98 | "duration" : 163 99 | }, 100 | "flaky" : false, 101 | "newFailed" : false, 102 | "parameters" : [ "[1.0, '创建博文成功', 'http://39.100.104.214:8080', '/create/', 'post', '{\"userid\":${userid}, \"token\":\"${token}\", \"title\":\"title test\", \"content\":\"content test\"}', '\"code\": \"00\"', '', '', '']" ] 103 | }, { 104 | "name" : "创建博文", 105 | "uid" : "4ca6ce593a277005", 106 | "parentUid" : "1117d61e2bd931c47a920db3e828767a", 107 | "status" : "passed", 108 | "time" : { 109 | "start" : 1629907677512, 110 | "stop" : 1629907677712, 111 | "duration" : 200 112 | }, 113 | "flaky" : false, 114 | "newFailed" : false, 115 | "parameters" : [ "[2.0, '创建博文失败', 'http://39.100.104.214:8080', '/create/', 'post', '{\"userid\":${userid}, \"token\":\"123\", \"title\":\"title test\", \"content\":\"content test\"}', '\"code\": \"03\"', '', '', '']" ] 116 | }, { 117 | "name" : "查看用户博文", 118 | "uid" : "d08fac4ece00ec22", 119 | "parentUid" : "1117d61e2bd931c47a920db3e828767a", 120 | "status" : "passed", 121 | "time" : { 122 | "start" : 1629907677725, 123 | "stop" : 1629907677919, 124 | "duration" : 194 125 | }, 126 | "flaky" : false, 127 | "newFailed" : false, 128 | "parameters" : [ "[1.0, '用户存在博文,查询成功', 'http://39.100.104.214:8080', '/getBlogsOfUser/', 'post', '{\"userid\":${userid}, \"token\":\"${token}\"}', '\"title\"', 'articleId', '', '']" ] 129 | }, { 130 | "name" : "查看用户博文", 131 | "uid" : "8db162b0c1a180aa", 132 | "parentUid" : "1117d61e2bd931c47a920db3e828767a", 133 | "status" : "passed", 134 | "time" : { 135 | "start" : 1629907677933, 136 | "stop" : 1629907678147, 137 | "duration" : 214 138 | }, 139 | "flaky" : false, 140 | "newFailed" : false, 141 | "parameters" : [ "[2.0, '用户token有误,查询失败', 'http://39.100.104.214:8080', '/getBlogsOfUser/', 'post', '{\"userid\":${userid}, \"token\":\"123\"}', '\"code\": \"03\"', '', '', '']" ] 142 | }, { 143 | "name" : "查看博文内容", 144 | "uid" : "93000324a8016c7a", 145 | "parentUid" : "1117d61e2bd931c47a920db3e828767a", 146 | "status" : "passed", 147 | "time" : { 148 | "start" : 1629907678158, 149 | "stop" : 1629907678284, 150 | "duration" : 126 151 | }, 152 | "flaky" : false, 153 | "newFailed" : false, 154 | "parameters" : [ "[1.0, '博文内容查询成功', 'http://39.100.104.214:8080', '/getBlogContent/${articleId}', 'get', '', '\"content\": \"content test\"', '', '', '']" ] 155 | }, { 156 | "name" : "查看博文内容", 157 | "uid" : "5e792b44457ea9aa", 158 | "parentUid" : "1117d61e2bd931c47a920db3e828767a", 159 | "status" : "passed", 160 | "time" : { 161 | "start" : 1629907678295, 162 | "stop" : 1629907678432, 163 | "duration" : 137 164 | }, 165 | "flaky" : false, 166 | "newFailed" : false, 167 | "parameters" : [ "[2.0, 'articleId有误,查询失败', 'http://39.100.104.214:8080', '/getBlogContent/1234', 'get', '', '\"code\": \"03\"', '', '', '']" ] 168 | }, { 169 | "name" : "更新博文内容", 170 | "uid" : "9c7fb473d7fc68f0", 171 | "parentUid" : "1117d61e2bd931c47a920db3e828767a", 172 | "status" : "passed", 173 | "time" : { 174 | "start" : 1629907678443, 175 | "stop" : 1629907678601, 176 | "duration" : 158 177 | }, 178 | "flaky" : false, 179 | "newFailed" : false, 180 | "parameters" : [ "[1.0, '博文内容更新成功', 'http://39.100.104.214:8080', '/update/', 'put', '{\"userid\":${userid}, \"token\": \"${token}\", \"articleId\":${articleId}, \"title\":\"python\", \"content\":\"test test\"}', '\"update_time\":', '', '', '']" ] 181 | }, { 182 | "name" : "更新博文内容", 183 | "uid" : "2287eec54c7f212", 184 | "parentUid" : "1117d61e2bd931c47a920db3e828767a", 185 | "status" : "passed", 186 | "time" : { 187 | "start" : 1629907678612, 188 | "stop" : 1629907678777, 189 | "duration" : 165 190 | }, 191 | "flaky" : false, 192 | "newFailed" : false, 193 | "parameters" : [ "[2.0, 'articleId有误,更新失败', 'http://39.100.104.214:8080', '/update/', 'put', '{\"userid\":${userid}, \"token\": \"${token}\", \"articleId\":1234, \"title\":\"python\", \"content\":\"test test\"}', '\"code\": \"03\"', '', '', '']" ] 194 | }, { 195 | "name" : "批量查询博文", 196 | "uid" : "928fd66149be506e", 197 | "parentUid" : "1117d61e2bd931c47a920db3e828767a", 198 | "status" : "passed", 199 | "time" : { 200 | "start" : 1629907678788, 201 | "stop" : 1629907678917, 202 | "duration" : 129 203 | }, 204 | "flaky" : false, 205 | "newFailed" : false, 206 | "parameters" : [ "[1.0, '博文批量查询成功', 'http://39.100.104.214:8080', '/getBlogsContent/articleIds=${articleId}', 'get', '', '\"code\": \"00\"', '', '', '']" ] 207 | }, { 208 | "name" : "批量查询博文", 209 | "uid" : "c2f39569f374b874", 210 | "parentUid" : "1117d61e2bd931c47a920db3e828767a", 211 | "status" : "passed", 212 | "time" : { 213 | "start" : 1629907678928, 214 | "stop" : 1629907679075, 215 | "duration" : 147 216 | }, 217 | "flaky" : false, 218 | "newFailed" : false, 219 | "parameters" : [ "[2.0, 'articleId有误,博文批量查询失败', 'http://39.100.104.214:8080', '/getBlogsContent/articleIds=null', 'get', '', '\"code\": \"999\"', '', '', '']" ] 220 | }, { 221 | "name" : "删除博文", 222 | "uid" : "a9e063ba23abac18", 223 | "parentUid" : "1117d61e2bd931c47a920db3e828767a", 224 | "status" : "passed", 225 | "time" : { 226 | "start" : 1629907679087, 227 | "stop" : 1629907679298, 228 | "duration" : 211 229 | }, 230 | "flaky" : false, 231 | "newFailed" : false, 232 | "parameters" : [ "[1.0, '博文删除成功', 'http://39.100.104.214:8080', '/delete/', 'post', '{\"userid\":${userid}, \"token\": \"${token}\", \"articleId\":[${articleId}]}', '\"code\": \"00\"', '', '', '']" ] 233 | }, { 234 | "name" : "删除博文", 235 | "uid" : "8f972462257f4377", 236 | "parentUid" : "1117d61e2bd931c47a920db3e828767a", 237 | "status" : "passed", 238 | "time" : { 239 | "start" : 1629907679310, 240 | "stop" : 1629907679439, 241 | "duration" : 129 242 | }, 243 | "flaky" : false, 244 | "newFailed" : false, 245 | "parameters" : [ "[2.0, 'token有误,更新失败', 'http://39.100.104.214:8080', '/delete/', 'post', '{\"userid\":${userid}, \"token\": \"123\", \"articleId\":[]}', '\"code\": \"03\"', '', '', '']" ] 246 | } ], 247 | "uid" : "1117d61e2bd931c47a920db3e828767a" 248 | } ], 249 | "uid" : "3b2e467b921b0ea8d4803b9c79d92d0c" 250 | } ] 251 | } -------------------------------------------------------------------------------- /test_report/data/suites.csv: -------------------------------------------------------------------------------- 1 | "Status","Start Time","Stop Time","Duration in ms","Parent Suite","Suite","Sub Suite","Test Class","Test Method","Name","Description" 2 | "passed","Thu Aug 26 00:07:59 CST 2021","Thu Aug 26 00:07:59 CST 2021","211","test_case","test_edit_module","TestEditModule","","","删除博文","通过接口删除博文" 3 | "passed","Thu Aug 26 00:07:57 CST 2021","Thu Aug 26 00:07:57 CST 2021","200","test_case","test_edit_module","TestEditModule","","","创建博文","通过接口创建博文" 4 | "passed","Thu Aug 26 00:07:54 CST 2021","Thu Aug 26 00:07:54 CST 2021","179","test_case","test_login_module","TestLoginModule","","","用户注册","通过接口进行用户注册" 5 | "passed","Thu Aug 26 00:07:58 CST 2021","Thu Aug 26 00:07:58 CST 2021","158","test_case","test_edit_module","TestEditModule","","","更新博文内容","通过接口更新博文内容" 6 | "passed","Thu Aug 26 00:07:58 CST 2021","Thu Aug 26 00:07:58 CST 2021","129","test_case","test_edit_module","TestEditModule","","","批量查询博文","通过接口批量查询博文" 7 | "passed","Thu Aug 26 00:07:59 CST 2021","Thu Aug 26 00:07:59 CST 2021","129","test_case","test_edit_module","TestEditModule","","","删除博文","通过接口删除博文" 8 | "passed","Thu Aug 26 00:07:55 CST 2021","Thu Aug 26 00:07:55 CST 2021","603","test_case","test_login_module","TestLoginModule","","","用户登录","通过接口进行用户登录" 9 | "passed","Thu Aug 26 00:07:57 CST 2021","Thu Aug 26 00:07:57 CST 2021","163","test_case","test_edit_module","TestEditModule","","","创建博文","通过接口创建博文" 10 | "passed","Thu Aug 26 00:07:58 CST 2021","Thu Aug 26 00:07:58 CST 2021","126","test_case","test_edit_module","TestEditModule","","","查看博文内容","通过接口查看博文内容" 11 | "passed","Thu Aug 26 00:07:57 CST 2021","Thu Aug 26 00:07:57 CST 2021","194","test_case","test_edit_module","TestEditModule","","","查看用户博文","通过接口查看用户所有博文" 12 | "passed","Thu Aug 26 00:07:55 CST 2021","Thu Aug 26 00:07:56 CST 2021","621","test_case","test_login_module","TestLoginModule","","","用户登录","通过接口进行用户登录" 13 | "passed","Thu Aug 26 00:07:58 CST 2021","Thu Aug 26 00:07:58 CST 2021","165","test_case","test_edit_module","TestEditModule","","","更新博文内容","通过接口更新博文内容" 14 | "passed","Thu Aug 26 00:07:58 CST 2021","Thu Aug 26 00:07:59 CST 2021","147","test_case","test_edit_module","TestEditModule","","","批量查询博文","通过接口批量查询博文" 15 | "passed","Thu Aug 26 00:07:57 CST 2021","Thu Aug 26 00:07:58 CST 2021","214","test_case","test_edit_module","TestEditModule","","","查看用户博文","通过接口查看用户所有博文" 16 | "passed","Thu Aug 26 00:07:54 CST 2021","Thu Aug 26 00:07:55 CST 2021","468","test_case","test_login_module","TestLoginModule","","","用户注册","通过接口进行用户注册" 17 | "passed","Thu Aug 26 00:07:58 CST 2021","Thu Aug 26 00:07:58 CST 2021","137","test_case","test_edit_module","TestEditModule","","","查看博文内容","通过接口查看博文内容" 18 | "passed","Thu Aug 26 00:07:54 CST 2021","Thu Aug 26 00:07:54 CST 2021","206","test_case","test_login_module","TestLoginModule","","","用户注册","通过接口进行用户注册" 19 | "passed","Thu Aug 26 00:07:56 CST 2021","Thu Aug 26 00:07:57 CST 2021","1048","test_case","test_login_module","TestLoginModule","","","用户登录","通过接口进行用户登录" 20 | -------------------------------------------------------------------------------- /test_report/data/test-cases/150f129aaf81c31f.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "150f129aaf81c31f", 3 | "name" : "用户登录", 4 | "fullName" : "test_case.test_login_module.TestLoginModule#test_login", 5 | "historyId" : "d8983635e87a151b9b3b7b66fd0ac0dc", 6 | "time" : { 7 | "start" : 1629907675025, 8 | "stop" : 1629907675628, 9 | "duration" : 603 10 | }, 11 | "description" : "通过接口进行用户登录", 12 | "descriptionHtml" : "
通过接口进行用户登录
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口进行用户登录", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907675025, 24 | "stop" : 1629907675626, 25 | "duration" : 601 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907675627, 39 | "stop" : 1629907675627, 40 | "duration" : 0 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "6f16054c149ca0c6", 53 | "name" : "log", 54 | "source" : "6f16054c149ca0c6.txt", 55 | "type" : "text/plain", 56 | "size" : 959 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "story", 67 | "value" : "登录功能" 68 | }, { 69 | "name" : "severity", 70 | "value" : "blocker" 71 | }, { 72 | "name" : "feature", 73 | "value" : "登录模块" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=2)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_login_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestLoginModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_login_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[1.0, '登录成功', 'http://39.100.104.214:8080', '/login/', 'post', '{\"username\":\"juno${unique_num1}\",\"password\":\"${md5(\\'juno999999\\')}\"}', '\"token\"', 'token', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "blocker", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=2)" ] 117 | }, 118 | "source" : "150f129aaf81c31f.json", 119 | "parameterValues" : [ "[1.0, '登录成功', 'http://39.100.104.214:8080', '/login/', 'post', '{\"username\":\"juno${unique_num1}\",\"password\":\"${md5(\\'juno999999\\')}\"}', '\"token\"', 'token', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/2287eec54c7f212.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "2287eec54c7f212", 3 | "name" : "更新博文内容", 4 | "fullName" : "test_case.test_edit_module.TestEditModule#test_blog_content_update", 5 | "historyId" : "72442eb161046e365132a46ddc653f6c", 6 | "time" : { 7 | "start" : 1629907678612, 8 | "stop" : 1629907678777, 9 | "duration" : 165 10 | }, 11 | "description" : "通过接口更新博文内容", 12 | "descriptionHtml" : "通过接口更新博文内容
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口更新博文内容", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907678612, 24 | "stop" : 1629907678776, 25 | "duration" : 164 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907678776, 39 | "stop" : 1629907678777, 40 | "duration" : 1 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "78a5a9af66623c8", 53 | "name" : "log", 54 | "source" : "78a5a9af66623c8.txt", 55 | "type" : "text/plain", 56 | "size" : 919 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "story", 67 | "value" : "博文内容更新功能" 68 | }, { 69 | "name" : "feature", 70 | "value" : "编辑模块" 71 | }, { 72 | "name" : "severity", 73 | "value" : "critical" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=6)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_edit_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestEditModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_edit_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[2.0, 'articleId有误,更新失败', 'http://39.100.104.214:8080', '/update/', 'put', '{\"userid\":${userid}, \"token\": \"${token}\", \"articleId\":1234, \"title\":\"python\", \"content\":\"test test\"}', '\"code\": \"03\"', '', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "critical", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=6)" ] 117 | }, 118 | "source" : "2287eec54c7f212.json", 119 | "parameterValues" : [ "[2.0, 'articleId有误,更新失败', 'http://39.100.104.214:8080', '/update/', 'put', '{\"userid\":${userid}, \"token\": \"${token}\", \"articleId\":1234, \"title\":\"python\", \"content\":\"test test\"}', '\"code\": \"03\"', '', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/41e8e6e95b7c75b5.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "41e8e6e95b7c75b5", 3 | "name" : "用户注册", 4 | "fullName" : "test_case.test_login_module.TestLoginModule#test_register", 5 | "historyId" : "13a0acdd59b00e1a0f6d06b7d22e1536", 6 | "time" : { 7 | "start" : 1629907674351, 8 | "stop" : 1629907674530, 9 | "duration" : 179 10 | }, 11 | "description" : "通过接口进行用户注册", 12 | "descriptionHtml" : "通过接口进行用户注册
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口进行用户注册", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907674352, 24 | "stop" : 1629907674529, 25 | "duration" : 177 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907674529, 39 | "stop" : 1629907674530, 40 | "duration" : 1 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "64bd365b2e8f3782", 53 | "name" : "log", 54 | "source" : "64bd365b2e8f3782.txt", 55 | "type" : "text/plain", 56 | "size" : 823 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "story", 67 | "value" : "注册功能" 68 | }, { 69 | "name" : "severity", 70 | "value" : "blocker" 71 | }, { 72 | "name" : "feature", 73 | "value" : "登录模块" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=1)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_login_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestLoginModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_login_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[2.0, '用户名重复,注册失败', 'http://39.100.104.214:8080', '/register/', 'post', '{\"username\":\"juno${unique_num1}\",\"password\":\"juno999999\",\"email\":\"juno123@qq.com\"}', '\"code\": \"01\"', '', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "blocker", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=1)" ] 117 | }, 118 | "source" : "41e8e6e95b7c75b5.json", 119 | "parameterValues" : [ "[2.0, '用户名重复,注册失败', 'http://39.100.104.214:8080', '/register/', 'post', '{\"username\":\"juno${unique_num1}\",\"password\":\"juno999999\",\"email\":\"juno123@qq.com\"}', '\"code\": \"01\"', '', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/43dc24eab8dcd7ee.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "43dc24eab8dcd7ee", 3 | "name" : "创建博文", 4 | "fullName" : "test_case.test_edit_module.TestEditModule#test_create", 5 | "historyId" : "6b1f6a954615e6829a4d01c4e25bb7cd", 6 | "time" : { 7 | "start" : 1629907677334, 8 | "stop" : 1629907677497, 9 | "duration" : 163 10 | }, 11 | "description" : "通过接口创建博文", 12 | "descriptionHtml" : "通过接口创建博文
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口创建博文", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907677334, 24 | "stop" : 1629907677496, 25 | "duration" : 162 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907677496, 39 | "stop" : 1629907677497, 40 | "duration" : 1 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "cb2bc316e7ced127", 53 | "name" : "log", 54 | "source" : "cb2bc316e7ced127.txt", 55 | "type" : "text/plain", 56 | "size" : 958 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "story", 67 | "value" : "博文创建功能" 68 | }, { 69 | "name" : "feature", 70 | "value" : "编辑模块" 71 | }, { 72 | "name" : "severity", 73 | "value" : "critical" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=3)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_edit_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestEditModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_edit_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[1.0, '创建博文成功', 'http://39.100.104.214:8080', '/create/', 'post', '{\"userid\":${userid}, \"token\":\"${token}\", \"title\":\"title test\", \"content\":\"content test\"}', '\"code\": \"00\"', '', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "critical", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=3)" ] 117 | }, 118 | "source" : "43dc24eab8dcd7ee.json", 119 | "parameterValues" : [ "[1.0, '创建博文成功', 'http://39.100.104.214:8080', '/create/', 'post', '{\"userid\":${userid}, \"token\":\"${token}\", \"title\":\"title test\", \"content\":\"content test\"}', '\"code\": \"00\"', '', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/4ca6ce593a277005.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "4ca6ce593a277005", 3 | "name" : "创建博文", 4 | "fullName" : "test_case.test_edit_module.TestEditModule#test_create", 5 | "historyId" : "dc072d17411f37f6a047bda09ea2711d", 6 | "time" : { 7 | "start" : 1629907677512, 8 | "stop" : 1629907677712, 9 | "duration" : 200 10 | }, 11 | "description" : "通过接口创建博文", 12 | "descriptionHtml" : "通过接口创建博文
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口创建博文", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907677512, 24 | "stop" : 1629907677711, 25 | "duration" : 199 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907677712, 39 | "stop" : 1629907677712, 40 | "duration" : 0 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "36d9e2c92188f1e9", 53 | "name" : "log", 54 | "source" : "36d9e2c92188f1e9.txt", 55 | "type" : "text/plain", 56 | "size" : 795 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "story", 67 | "value" : "博文创建功能" 68 | }, { 69 | "name" : "feature", 70 | "value" : "编辑模块" 71 | }, { 72 | "name" : "severity", 73 | "value" : "critical" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=3)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_edit_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestEditModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_edit_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[2.0, '创建博文失败', 'http://39.100.104.214:8080', '/create/', 'post', '{\"userid\":${userid}, \"token\":\"123\", \"title\":\"title test\", \"content\":\"content test\"}', '\"code\": \"03\"', '', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "critical", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=3)" ] 117 | }, 118 | "source" : "4ca6ce593a277005.json", 119 | "parameterValues" : [ "[2.0, '创建博文失败', 'http://39.100.104.214:8080', '/create/', 'post', '{\"userid\":${userid}, \"token\":\"123\", \"title\":\"title test\", \"content\":\"content test\"}', '\"code\": \"03\"', '', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/5847db81c22255cc.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "5847db81c22255cc", 3 | "name" : "用户登录", 4 | "fullName" : "test_case.test_login_module.TestLoginModule#test_login", 5 | "historyId" : "5f9293329904e63832e3b1d10c6d286e", 6 | "time" : { 7 | "start" : 1629907676274, 8 | "stop" : 1629907677322, 9 | "duration" : 1048 10 | }, 11 | "description" : "通过接口进行用户登录", 12 | "descriptionHtml" : "通过接口进行用户登录
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口进行用户登录", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907676274, 24 | "stop" : 1629907677321, 25 | "duration" : 1047 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907677321, 39 | "stop" : 1629907677321, 40 | "duration" : 0 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "190ba6dba1231ffa", 53 | "name" : "log", 54 | "source" : "190ba6dba1231ffa.txt", 55 | "type" : "text/plain", 56 | "size" : 818 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "story", 67 | "value" : "登录功能" 68 | }, { 69 | "name" : "severity", 70 | "value" : "blocker" 71 | }, { 72 | "name" : "feature", 73 | "value" : "登录模块" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=2)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_login_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestLoginModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_login_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[3.0, '密码错误,登录成功', 'http://39.100.104.214:8080', '/login/', 'post', '{\"username\":\"juno${unique_num2}\",\"password\":\"juno999999\"}', '\"code\": \"03\"', '', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "blocker", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=2)" ] 117 | }, 118 | "source" : "5847db81c22255cc.json", 119 | "parameterValues" : [ "[3.0, '密码错误,登录成功', 'http://39.100.104.214:8080', '/login/', 'post', '{\"username\":\"juno${unique_num2}\",\"password\":\"juno999999\"}', '\"code\": \"03\"', '', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/59a0b2d61cf702a6.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "59a0b2d61cf702a6", 3 | "name" : "用户注册", 4 | "fullName" : "test_case.test_login_module.TestLoginModule#test_register", 5 | "historyId" : "f6d1eb043a6b15674e731e1ef7bf23e6", 6 | "time" : { 7 | "start" : 1629907674544, 8 | "stop" : 1629907675012, 9 | "duration" : 468 10 | }, 11 | "description" : "通过接口进行用户注册", 12 | "descriptionHtml" : "通过接口进行用户注册
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口进行用户注册", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907674544, 24 | "stop" : 1629907675011, 25 | "duration" : 467 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907675011, 39 | "stop" : 1629907675011, 40 | "duration" : 0 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "9e9d05a5f24f79b6", 53 | "name" : "log", 54 | "source" : "9e9d05a5f24f79b6.txt", 55 | "type" : "text/plain", 56 | "size" : 820 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "story", 67 | "value" : "注册功能" 68 | }, { 69 | "name" : "severity", 70 | "value" : "blocker" 71 | }, { 72 | "name" : "feature", 73 | "value" : "登录模块" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=1)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_login_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestLoginModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_login_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[2.0, '注册成功', 'http://39.100.104.214:8080', '/register/', 'post', '{\"username\":\"juno${get_unique_num2}\",\"password\":\"juno999999\",\"email\":\"juno123@qq.com\"}', '\"code\": \"00\"', 'userid', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "blocker", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=1)" ] 117 | }, 118 | "source" : "59a0b2d61cf702a6.json", 119 | "parameterValues" : [ "[2.0, '注册成功', 'http://39.100.104.214:8080', '/register/', 'post', '{\"username\":\"juno${get_unique_num2}\",\"password\":\"juno999999\",\"email\":\"juno123@qq.com\"}', '\"code\": \"00\"', 'userid', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/5e792b44457ea9aa.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "5e792b44457ea9aa", 3 | "name" : "查看博文内容", 4 | "fullName" : "test_case.test_edit_module.TestEditModule#test_blog_content_search", 5 | "historyId" : "416b196eb12787a78916dd535df9932e", 6 | "time" : { 7 | "start" : 1629907678295, 8 | "stop" : 1629907678432, 9 | "duration" : 137 10 | }, 11 | "description" : "通过接口查看博文内容", 12 | "descriptionHtml" : "通过接口查看博文内容
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口查看博文内容", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907678295, 24 | "stop" : 1629907678430, 25 | "duration" : 135 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907678431, 39 | "stop" : 1629907678431, 40 | "duration" : 0 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "b16ec22e593aaf0e", 53 | "name" : "log", 54 | "source" : "b16ec22e593aaf0e.txt", 55 | "type" : "text/plain", 56 | "size" : 627 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "story", 67 | "value" : "博文内容查询功能" 68 | }, { 69 | "name" : "feature", 70 | "value" : "编辑模块" 71 | }, { 72 | "name" : "severity", 73 | "value" : "critical" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=5)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_edit_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestEditModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_edit_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[2.0, 'articleId有误,查询失败', 'http://39.100.104.214:8080', '/getBlogContent/1234', 'get', '', '\"code\": \"03\"', '', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "critical", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=5)" ] 117 | }, 118 | "source" : "5e792b44457ea9aa.json", 119 | "parameterValues" : [ "[2.0, 'articleId有误,查询失败', 'http://39.100.104.214:8080', '/getBlogContent/1234', 'get', '', '\"code\": \"03\"', '', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/77bac1a9be6aa799.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "77bac1a9be6aa799", 3 | "name" : "用户登录", 4 | "fullName" : "test_case.test_login_module.TestLoginModule#test_login", 5 | "historyId" : "78f3f821c4dea63cf111ffe451d46df3", 6 | "time" : { 7 | "start" : 1629907675639, 8 | "stop" : 1629907676260, 9 | "duration" : 621 10 | }, 11 | "description" : "通过接口进行用户登录", 12 | "descriptionHtml" : "通过接口进行用户登录
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口进行用户登录", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907675639, 24 | "stop" : 1629907676258, 25 | "duration" : 619 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907676259, 39 | "stop" : 1629907676259, 40 | "duration" : 0 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "c8099de3a3431c20", 53 | "name" : "log", 54 | "source" : "c8099de3a3431c20.txt", 55 | "type" : "text/plain", 56 | "size" : 959 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "story", 67 | "value" : "登录功能" 68 | }, { 69 | "name" : "severity", 70 | "value" : "blocker" 71 | }, { 72 | "name" : "feature", 73 | "value" : "登录模块" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=2)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_login_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestLoginModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_login_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[2.0, '登录成功', 'http://39.100.104.214:8080', '/login/', 'post', '{\"username\":\"juno${unique_num2}\",\"password\":\"${md5(\\'juno999999\\')}\"}', '\"token\"', 'token', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "blocker", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=2)" ] 117 | }, 118 | "source" : "77bac1a9be6aa799.json", 119 | "parameterValues" : [ "[2.0, '登录成功', 'http://39.100.104.214:8080', '/login/', 'post', '{\"username\":\"juno${unique_num2}\",\"password\":\"${md5(\\'juno999999\\')}\"}', '\"token\"', 'token', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/8db162b0c1a180aa.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "8db162b0c1a180aa", 3 | "name" : "查看用户博文", 4 | "fullName" : "test_case.test_edit_module.TestEditModule#test_user_blog_search", 5 | "historyId" : "ce639bf4b18ab421b63f9d2e8ddc47ab", 6 | "time" : { 7 | "start" : 1629907677933, 8 | "stop" : 1629907678147, 9 | "duration" : 214 10 | }, 11 | "description" : "通过接口查看用户所有博文", 12 | "descriptionHtml" : "通过接口查看用户所有博文
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口查看用户所有博文", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907677934, 24 | "stop" : 1629907678146, 25 | "duration" : 212 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907678146, 39 | "stop" : 1629907678147, 40 | "duration" : 1 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "f2f22c3f1f11b219", 53 | "name" : "log", 54 | "source" : "f2f22c3f1f11b219.txt", 55 | "type" : "text/plain", 56 | "size" : 673 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "feature", 67 | "value" : "编辑模块" 68 | }, { 69 | "name" : "story", 70 | "value" : "用户博文查询功能" 71 | }, { 72 | "name" : "severity", 73 | "value" : "critical" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=4)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_edit_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestEditModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_edit_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[2.0, '用户token有误,查询失败', 'http://39.100.104.214:8080', '/getBlogsOfUser/', 'post', '{\"userid\":${userid}, \"token\":\"123\"}', '\"code\": \"03\"', '', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "critical", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=4)" ] 117 | }, 118 | "source" : "8db162b0c1a180aa.json", 119 | "parameterValues" : [ "[2.0, '用户token有误,查询失败', 'http://39.100.104.214:8080', '/getBlogsOfUser/', 'post', '{\"userid\":${userid}, \"token\":\"123\"}', '\"code\": \"03\"', '', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/8f972462257f4377.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "8f972462257f4377", 3 | "name" : "删除博文", 4 | "fullName" : "test_case.test_edit_module.TestEditModule#test_delete", 5 | "historyId" : "d05ee58a25da395bb3ae0b1270c84483", 6 | "time" : { 7 | "start" : 1629907679310, 8 | "stop" : 1629907679439, 9 | "duration" : 129 10 | }, 11 | "description" : "通过接口删除博文", 12 | "descriptionHtml" : "通过接口删除博文
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口删除博文", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907679311, 24 | "stop" : 1629907679438, 25 | "duration" : 127 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907679438, 39 | "stop" : 1629907679439, 40 | "duration" : 1 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "5956dfac7c2affd7", 53 | "name" : "log", 54 | "source" : "5956dfac7c2affd7.txt", 55 | "type" : "text/plain", 56 | "size" : 710 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "story", 67 | "value" : "博文删除功能" 68 | }, { 69 | "name" : "feature", 70 | "value" : "编辑模块" 71 | }, { 72 | "name" : "severity", 73 | "value" : "critical" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=8)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_edit_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestEditModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_edit_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[2.0, 'token有误,更新失败', 'http://39.100.104.214:8080', '/delete/', 'post', '{\"userid\":${userid}, \"token\": \"123\", \"articleId\":[]}', '\"code\": \"03\"', '', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "critical", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=8)" ] 117 | }, 118 | "source" : "8f972462257f4377.json", 119 | "parameterValues" : [ "[2.0, 'token有误,更新失败', 'http://39.100.104.214:8080', '/delete/', 'post', '{\"userid\":${userid}, \"token\": \"123\", \"articleId\":[]}', '\"code\": \"03\"', '', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/928fd66149be506e.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "928fd66149be506e", 3 | "name" : "批量查询博文", 4 | "fullName" : "test_case.test_edit_module.TestEditModule#test_blog_batch_search", 5 | "historyId" : "9d19b71007895959926a1af082521df3", 6 | "time" : { 7 | "start" : 1629907678788, 8 | "stop" : 1629907678917, 9 | "duration" : 129 10 | }, 11 | "description" : "通过接口批量查询博文", 12 | "descriptionHtml" : "通过接口批量查询博文
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口批量查询博文", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907678788, 24 | "stop" : 1629907678916, 25 | "duration" : 128 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907678916, 39 | "stop" : 1629907678917, 40 | "duration" : 1 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "f7e0ac24db6df31", 53 | "name" : "log", 54 | "source" : "f7e0ac24db6df31.txt", 55 | "type" : "text/plain", 56 | "size" : 952 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "feature", 67 | "value" : "编辑模块" 68 | }, { 69 | "name" : "story", 70 | "value" : "批量查询博文功能" 71 | }, { 72 | "name" : "severity", 73 | "value" : "critical" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=7)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_edit_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestEditModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_edit_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[1.0, '博文批量查询成功', 'http://39.100.104.214:8080', '/getBlogsContent/articleIds=${articleId}', 'get', '', '\"code\": \"00\"', '', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "critical", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=7)" ] 117 | }, 118 | "source" : "928fd66149be506e.json", 119 | "parameterValues" : [ "[1.0, '博文批量查询成功', 'http://39.100.104.214:8080', '/getBlogsContent/articleIds=${articleId}', 'get', '', '\"code\": \"00\"', '', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/93000324a8016c7a.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "93000324a8016c7a", 3 | "name" : "查看博文内容", 4 | "fullName" : "test_case.test_edit_module.TestEditModule#test_blog_content_search", 5 | "historyId" : "13b38d6b55f2887a829110dffd1bda14", 6 | "time" : { 7 | "start" : 1629907678158, 8 | "stop" : 1629907678284, 9 | "duration" : 126 10 | }, 11 | "description" : "通过接口查看博文内容", 12 | "descriptionHtml" : "通过接口查看博文内容
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口查看博文内容", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907678159, 24 | "stop" : 1629907678282, 25 | "duration" : 123 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907678283, 39 | "stop" : 1629907678283, 40 | "duration" : 0 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "51773fc339bb5a2a", 53 | "name" : "log", 54 | "source" : "51773fc339bb5a2a.txt", 55 | "type" : "text/plain", 56 | "size" : 922 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "story", 67 | "value" : "博文内容查询功能" 68 | }, { 69 | "name" : "feature", 70 | "value" : "编辑模块" 71 | }, { 72 | "name" : "severity", 73 | "value" : "critical" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=5)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_edit_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestEditModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_edit_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[1.0, '博文内容查询成功', 'http://39.100.104.214:8080', '/getBlogContent/${articleId}', 'get', '', '\"content\": \"content test\"', '', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "critical", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=5)" ] 117 | }, 118 | "source" : "93000324a8016c7a.json", 119 | "parameterValues" : [ "[1.0, '博文内容查询成功', 'http://39.100.104.214:8080', '/getBlogContent/${articleId}', 'get', '', '\"content\": \"content test\"', '', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/9c7fb473d7fc68f0.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "9c7fb473d7fc68f0", 3 | "name" : "更新博文内容", 4 | "fullName" : "test_case.test_edit_module.TestEditModule#test_blog_content_update", 5 | "historyId" : "46a0e2eef5067b91b46ef2f9551d0783", 6 | "time" : { 7 | "start" : 1629907678443, 8 | "stop" : 1629907678601, 9 | "duration" : 158 10 | }, 11 | "description" : "通过接口更新博文内容", 12 | "descriptionHtml" : "通过接口更新博文内容
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口更新博文内容", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907678443, 24 | "stop" : 1629907678600, 25 | "duration" : 157 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907678600, 39 | "stop" : 1629907678601, 40 | "duration" : 1 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "3c673d881dc90af0", 53 | "name" : "log", 54 | "source" : "3c673d881dc90af0.txt", 55 | "type" : "text/plain", 56 | "size" : 1006 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "story", 67 | "value" : "博文内容更新功能" 68 | }, { 69 | "name" : "feature", 70 | "value" : "编辑模块" 71 | }, { 72 | "name" : "severity", 73 | "value" : "critical" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=6)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_edit_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestEditModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_edit_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[1.0, '博文内容更新成功', 'http://39.100.104.214:8080', '/update/', 'put', '{\"userid\":${userid}, \"token\": \"${token}\", \"articleId\":${articleId}, \"title\":\"python\", \"content\":\"test test\"}', '\"update_time\":', '', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "critical", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=6)" ] 117 | }, 118 | "source" : "9c7fb473d7fc68f0.json", 119 | "parameterValues" : [ "[1.0, '博文内容更新成功', 'http://39.100.104.214:8080', '/update/', 'put', '{\"userid\":${userid}, \"token\": \"${token}\", \"articleId\":${articleId}, \"title\":\"python\", \"content\":\"test test\"}', '\"update_time\":', '', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/a9e063ba23abac18.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "a9e063ba23abac18", 3 | "name" : "删除博文", 4 | "fullName" : "test_case.test_edit_module.TestEditModule#test_delete", 5 | "historyId" : "4baf0c524b3f3405bef804d98d2e4f9d", 6 | "time" : { 7 | "start" : 1629907679087, 8 | "stop" : 1629907679298, 9 | "duration" : 211 10 | }, 11 | "description" : "通过接口删除博文", 12 | "descriptionHtml" : "通过接口删除博文
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口删除博文", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907679087, 24 | "stop" : 1629907679297, 25 | "duration" : 210 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907679297, 39 | "stop" : 1629907679298, 40 | "duration" : 1 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "c9a059184ea54b42", 53 | "name" : "log", 54 | "source" : "c9a059184ea54b42.txt", 55 | "type" : "text/plain", 56 | "size" : 808 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "story", 67 | "value" : "博文删除功能" 68 | }, { 69 | "name" : "feature", 70 | "value" : "编辑模块" 71 | }, { 72 | "name" : "severity", 73 | "value" : "critical" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=8)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_edit_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestEditModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_edit_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[1.0, '博文删除成功', 'http://39.100.104.214:8080', '/delete/', 'post', '{\"userid\":${userid}, \"token\": \"${token}\", \"articleId\":[${articleId}]}', '\"code\": \"00\"', '', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "critical", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=8)" ] 117 | }, 118 | "source" : "a9e063ba23abac18.json", 119 | "parameterValues" : [ "[1.0, '博文删除成功', 'http://39.100.104.214:8080', '/delete/', 'post', '{\"userid\":${userid}, \"token\": \"${token}\", \"articleId\":[${articleId}]}', '\"code\": \"00\"', '', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/bfa1537d2e1423a0.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "bfa1537d2e1423a0", 3 | "name" : "用户注册", 4 | "fullName" : "test_case.test_login_module.TestLoginModule#test_register", 5 | "historyId" : "a7b56100d0b7490e087f52fa1108244d", 6 | "time" : { 7 | "start" : 1629907674132, 8 | "stop" : 1629907674338, 9 | "duration" : 206 10 | }, 11 | "description" : "通过接口进行用户注册", 12 | "descriptionHtml" : "通过接口进行用户注册
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口进行用户注册", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907674132, 24 | "stop" : 1629907674337, 25 | "duration" : 205 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907674337, 39 | "stop" : 1629907674338, 40 | "duration" : 1 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "b5a35f93905e72b0", 53 | "name" : "log", 54 | "source" : "b5a35f93905e72b0.txt", 55 | "type" : "text/plain", 56 | "size" : 820 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "story", 67 | "value" : "注册功能" 68 | }, { 69 | "name" : "severity", 70 | "value" : "blocker" 71 | }, { 72 | "name" : "feature", 73 | "value" : "登录模块" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=1)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_login_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestLoginModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_login_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[1.0, '注册成功', 'http://39.100.104.214:8080', '/register/', 'post', '{\"username\":\"juno${get_unique_num1}\",\"password\":\"juno999999\",\"email\":\"juno123@qq.com\"}', '\"code\": \"00\"', 'userid', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "blocker", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=1)" ] 117 | }, 118 | "source" : "bfa1537d2e1423a0.json", 119 | "parameterValues" : [ "[1.0, '注册成功', 'http://39.100.104.214:8080', '/register/', 'post', '{\"username\":\"juno${get_unique_num1}\",\"password\":\"juno999999\",\"email\":\"juno123@qq.com\"}', '\"code\": \"00\"', 'userid', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/c2f39569f374b874.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "c2f39569f374b874", 3 | "name" : "批量查询博文", 4 | "fullName" : "test_case.test_edit_module.TestEditModule#test_blog_batch_search", 5 | "historyId" : "da9df48f48cd30eea94b53d841a283ca", 6 | "time" : { 7 | "start" : 1629907678928, 8 | "stop" : 1629907679075, 9 | "duration" : 147 10 | }, 11 | "description" : "通过接口批量查询博文", 12 | "descriptionHtml" : "通过接口批量查询博文
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口批量查询博文", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907678928, 24 | "stop" : 1629907679074, 25 | "duration" : 146 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907679074, 39 | "stop" : 1629907679074, 40 | "duration" : 0 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "1a226aaf9e2633e3", 53 | "name" : "log", 54 | "source" : "1a226aaf9e2633e3.txt", 55 | "type" : "text/plain", 56 | "size" : 637 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "feature", 67 | "value" : "编辑模块" 68 | }, { 69 | "name" : "story", 70 | "value" : "批量查询博文功能" 71 | }, { 72 | "name" : "severity", 73 | "value" : "critical" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=7)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_edit_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestEditModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_edit_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[2.0, 'articleId有误,博文批量查询失败', 'http://39.100.104.214:8080', '/getBlogsContent/articleIds=null', 'get', '', '\"code\": \"999\"', '', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "critical", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=7)" ] 117 | }, 118 | "source" : "c2f39569f374b874.json", 119 | "parameterValues" : [ "[2.0, 'articleId有误,博文批量查询失败', 'http://39.100.104.214:8080', '/getBlogsContent/articleIds=null', 'get', '', '\"code\": \"999\"', '', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/test-cases/d08fac4ece00ec22.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "d08fac4ece00ec22", 3 | "name" : "查看用户博文", 4 | "fullName" : "test_case.test_edit_module.TestEditModule#test_user_blog_search", 5 | "historyId" : "7f57de9a858aed2e031bad4829d17741", 6 | "time" : { 7 | "start" : 1629907677725, 8 | "stop" : 1629907677919, 9 | "duration" : 194 10 | }, 11 | "description" : "通过接口查看用户所有博文", 12 | "descriptionHtml" : "通过接口查看用户所有博文
\n", 13 | "status" : "passed", 14 | "flaky" : false, 15 | "newFailed" : false, 16 | "beforeStages" : [ ], 17 | "testStage" : { 18 | "description" : "通过接口查看用户所有博文", 19 | "status" : "passed", 20 | "steps" : [ { 21 | "name" : "读取请求数据,调用接口", 22 | "time" : { 23 | "start" : 1629907677725, 24 | "stop" : 1629907677918, 25 | "duration" : 193 26 | }, 27 | "status" : "passed", 28 | "steps" : [ ], 29 | "attachments" : [ ], 30 | "parameters" : [ ], 31 | "attachmentsCount" : 0, 32 | "shouldDisplayMessage" : false, 33 | "stepsCount" : 0, 34 | "hasContent" : false 35 | }, { 36 | "name" : "获取响应数据,进行断言", 37 | "time" : { 38 | "start" : 1629907677918, 39 | "stop" : 1629907677919, 40 | "duration" : 1 41 | }, 42 | "status" : "passed", 43 | "steps" : [ ], 44 | "attachments" : [ ], 45 | "parameters" : [ ], 46 | "attachmentsCount" : 0, 47 | "shouldDisplayMessage" : false, 48 | "stepsCount" : 0, 49 | "hasContent" : false 50 | } ], 51 | "attachments" : [ { 52 | "uid" : "4f2134c8077dabae", 53 | "name" : "log", 54 | "source" : "4f2134c8077dabae.txt", 55 | "type" : "text/plain", 56 | "size" : 1038 57 | } ], 58 | "parameters" : [ ], 59 | "attachmentsCount" : 1, 60 | "shouldDisplayMessage" : false, 61 | "stepsCount" : 2, 62 | "hasContent" : true 63 | }, 64 | "afterStages" : [ ], 65 | "labels" : [ { 66 | "name" : "feature", 67 | "value" : "编辑模块" 68 | }, { 69 | "name" : "story", 70 | "value" : "用户博文查询功能" 71 | }, { 72 | "name" : "severity", 73 | "value" : "critical" 74 | }, { 75 | "name" : "tag", 76 | "value" : "run(order=4)" 77 | }, { 78 | "name" : "parentSuite", 79 | "value" : "test_case" 80 | }, { 81 | "name" : "suite", 82 | "value" : "test_edit_module" 83 | }, { 84 | "name" : "subSuite", 85 | "value" : "TestEditModule" 86 | }, { 87 | "name" : "host", 88 | "value" : "DESKTOP-13387BR" 89 | }, { 90 | "name" : "thread", 91 | "value" : "2748-MainThread" 92 | }, { 93 | "name" : "framework", 94 | "value" : "pytest" 95 | }, { 96 | "name" : "language", 97 | "value" : "cpython3" 98 | }, { 99 | "name" : "package", 100 | "value" : "test_case.test_edit_module" 101 | }, { 102 | "name" : "resultFormat", 103 | "value" : "allure2" 104 | } ], 105 | "parameters" : [ { 106 | "name" : "case_data", 107 | "value" : "[1.0, '用户存在博文,查询成功', 'http://39.100.104.214:8080', '/getBlogsOfUser/', 'post', '{\"userid\":${userid}, \"token\":\"${token}\"}', '\"title\"', 'articleId', '', '']" 108 | } ], 109 | "links" : [ ], 110 | "hidden" : false, 111 | "retry" : false, 112 | "extra" : { 113 | "severity" : "critical", 114 | "retries" : [ ], 115 | "categories" : [ ], 116 | "tags" : [ "run(order=4)" ] 117 | }, 118 | "source" : "d08fac4ece00ec22.json", 119 | "parameterValues" : [ "[1.0, '用户存在博文,查询成功', 'http://39.100.104.214:8080', '/getBlogsOfUser/', 'post', '{\"userid\":${userid}, \"token\":\"${token}\"}', '\"title\"', 'articleId', '', '']" ] 120 | } -------------------------------------------------------------------------------- /test_report/data/timeline.json: -------------------------------------------------------------------------------- 1 | { 2 | "uid" : "ab17fc5a4eb3bca4b216b548c7f9fcbc", 3 | "name" : "timeline", 4 | "children" : [ { 5 | "name" : "DESKTOP-13387BR", 6 | "children" : [ { 7 | "name" : "2748-MainThread", 8 | "children" : [ { 9 | "name" : "创建博文", 10 | "uid" : "4ca6ce593a277005", 11 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 12 | "status" : "passed", 13 | "time" : { 14 | "start" : 1629907677512, 15 | "stop" : 1629907677712, 16 | "duration" : 200 17 | }, 18 | "flaky" : false, 19 | "newFailed" : false, 20 | "parameters" : [ "[2.0, '创建博文失败', 'http://39.100.104.214:8080', '/create/', 'post', '{\"userid\":${userid}, \"token\":\"123\", \"title\":\"title test\", \"content\":\"content test\"}', '\"code\": \"03\"', '', '', '']" ] 21 | }, { 22 | "name" : "查看博文内容", 23 | "uid" : "93000324a8016c7a", 24 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 25 | "status" : "passed", 26 | "time" : { 27 | "start" : 1629907678158, 28 | "stop" : 1629907678284, 29 | "duration" : 126 30 | }, 31 | "flaky" : false, 32 | "newFailed" : false, 33 | "parameters" : [ "[1.0, '博文内容查询成功', 'http://39.100.104.214:8080', '/getBlogContent/${articleId}', 'get', '', '\"content\": \"content test\"', '', '', '']" ] 34 | }, { 35 | "name" : "批量查询博文", 36 | "uid" : "c2f39569f374b874", 37 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 38 | "status" : "passed", 39 | "time" : { 40 | "start" : 1629907678928, 41 | "stop" : 1629907679075, 42 | "duration" : 147 43 | }, 44 | "flaky" : false, 45 | "newFailed" : false, 46 | "parameters" : [ "[2.0, 'articleId有误,博文批量查询失败', 'http://39.100.104.214:8080', '/getBlogsContent/articleIds=null', 'get', '', '\"code\": \"999\"', '', '', '']" ] 47 | }, { 48 | "name" : "查看用户博文", 49 | "uid" : "8db162b0c1a180aa", 50 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 51 | "status" : "passed", 52 | "time" : { 53 | "start" : 1629907677933, 54 | "stop" : 1629907678147, 55 | "duration" : 214 56 | }, 57 | "flaky" : false, 58 | "newFailed" : false, 59 | "parameters" : [ "[2.0, '用户token有误,查询失败', 'http://39.100.104.214:8080', '/getBlogsOfUser/', 'post', '{\"userid\":${userid}, \"token\":\"123\"}', '\"code\": \"03\"', '', '', '']" ] 60 | }, { 61 | "name" : "用户登录", 62 | "uid" : "150f129aaf81c31f", 63 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 64 | "status" : "passed", 65 | "time" : { 66 | "start" : 1629907675025, 67 | "stop" : 1629907675628, 68 | "duration" : 603 69 | }, 70 | "flaky" : false, 71 | "newFailed" : false, 72 | "parameters" : [ "[1.0, '登录成功', 'http://39.100.104.214:8080', '/login/', 'post', '{\"username\":\"juno${unique_num1}\",\"password\":\"${md5(\\'juno999999\\')}\"}', '\"token\"', 'token', '', '']" ] 73 | }, { 74 | "name" : "用户注册", 75 | "uid" : "bfa1537d2e1423a0", 76 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 77 | "status" : "passed", 78 | "time" : { 79 | "start" : 1629907674132, 80 | "stop" : 1629907674338, 81 | "duration" : 206 82 | }, 83 | "flaky" : false, 84 | "newFailed" : false, 85 | "parameters" : [ "[1.0, '注册成功', 'http://39.100.104.214:8080', '/register/', 'post', '{\"username\":\"juno${get_unique_num1}\",\"password\":\"juno999999\",\"email\":\"juno123@qq.com\"}', '\"code\": \"00\"', 'userid', '', '']" ] 86 | }, { 87 | "name" : "更新博文内容", 88 | "uid" : "2287eec54c7f212", 89 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 90 | "status" : "passed", 91 | "time" : { 92 | "start" : 1629907678612, 93 | "stop" : 1629907678777, 94 | "duration" : 165 95 | }, 96 | "flaky" : false, 97 | "newFailed" : false, 98 | "parameters" : [ "[2.0, 'articleId有误,更新失败', 'http://39.100.104.214:8080', '/update/', 'put', '{\"userid\":${userid}, \"token\": \"${token}\", \"articleId\":1234, \"title\":\"python\", \"content\":\"test test\"}', '\"code\": \"03\"', '', '', '']" ] 99 | }, { 100 | "name" : "创建博文", 101 | "uid" : "43dc24eab8dcd7ee", 102 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 103 | "status" : "passed", 104 | "time" : { 105 | "start" : 1629907677334, 106 | "stop" : 1629907677497, 107 | "duration" : 163 108 | }, 109 | "flaky" : false, 110 | "newFailed" : false, 111 | "parameters" : [ "[1.0, '创建博文成功', 'http://39.100.104.214:8080', '/create/', 'post', '{\"userid\":${userid}, \"token\":\"${token}\", \"title\":\"title test\", \"content\":\"content test\"}', '\"code\": \"00\"', '', '', '']" ] 112 | }, { 113 | "name" : "批量查询博文", 114 | "uid" : "928fd66149be506e", 115 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 116 | "status" : "passed", 117 | "time" : { 118 | "start" : 1629907678788, 119 | "stop" : 1629907678917, 120 | "duration" : 129 121 | }, 122 | "flaky" : false, 123 | "newFailed" : false, 124 | "parameters" : [ "[1.0, '博文批量查询成功', 'http://39.100.104.214:8080', '/getBlogsContent/articleIds=${articleId}', 'get', '', '\"code\": \"00\"', '', '', '']" ] 125 | }, { 126 | "name" : "查看用户博文", 127 | "uid" : "d08fac4ece00ec22", 128 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 129 | "status" : "passed", 130 | "time" : { 131 | "start" : 1629907677725, 132 | "stop" : 1629907677919, 133 | "duration" : 194 134 | }, 135 | "flaky" : false, 136 | "newFailed" : false, 137 | "parameters" : [ "[1.0, '用户存在博文,查询成功', 'http://39.100.104.214:8080', '/getBlogsOfUser/', 'post', '{\"userid\":${userid}, \"token\":\"${token}\"}', '\"title\"', 'articleId', '', '']" ] 138 | }, { 139 | "name" : "用户注册", 140 | "uid" : "41e8e6e95b7c75b5", 141 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 142 | "status" : "passed", 143 | "time" : { 144 | "start" : 1629907674351, 145 | "stop" : 1629907674530, 146 | "duration" : 179 147 | }, 148 | "flaky" : false, 149 | "newFailed" : false, 150 | "parameters" : [ "[2.0, '用户名重复,注册失败', 'http://39.100.104.214:8080', '/register/', 'post', '{\"username\":\"juno${unique_num1}\",\"password\":\"juno999999\",\"email\":\"juno123@qq.com\"}', '\"code\": \"01\"', '', '', '']" ] 151 | }, { 152 | "name" : "用户登录", 153 | "uid" : "5847db81c22255cc", 154 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 155 | "status" : "passed", 156 | "time" : { 157 | "start" : 1629907676274, 158 | "stop" : 1629907677322, 159 | "duration" : 1048 160 | }, 161 | "flaky" : false, 162 | "newFailed" : false, 163 | "parameters" : [ "[3.0, '密码错误,登录成功', 'http://39.100.104.214:8080', '/login/', 'post', '{\"username\":\"juno${unique_num2}\",\"password\":\"juno999999\"}', '\"code\": \"03\"', '', '', '']" ] 164 | }, { 165 | "name" : "用户注册", 166 | "uid" : "59a0b2d61cf702a6", 167 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 168 | "status" : "passed", 169 | "time" : { 170 | "start" : 1629907674544, 171 | "stop" : 1629907675012, 172 | "duration" : 468 173 | }, 174 | "flaky" : false, 175 | "newFailed" : false, 176 | "parameters" : [ "[2.0, '注册成功', 'http://39.100.104.214:8080', '/register/', 'post', '{\"username\":\"juno${get_unique_num2}\",\"password\":\"juno999999\",\"email\":\"juno123@qq.com\"}', '\"code\": \"00\"', 'userid', '', '']" ] 177 | }, { 178 | "name" : "用户登录", 179 | "uid" : "77bac1a9be6aa799", 180 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 181 | "status" : "passed", 182 | "time" : { 183 | "start" : 1629907675639, 184 | "stop" : 1629907676260, 185 | "duration" : 621 186 | }, 187 | "flaky" : false, 188 | "newFailed" : false, 189 | "parameters" : [ "[2.0, '登录成功', 'http://39.100.104.214:8080', '/login/', 'post', '{\"username\":\"juno${unique_num2}\",\"password\":\"${md5(\\'juno999999\\')}\"}', '\"token\"', 'token', '', '']" ] 190 | }, { 191 | "name" : "查看博文内容", 192 | "uid" : "5e792b44457ea9aa", 193 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 194 | "status" : "passed", 195 | "time" : { 196 | "start" : 1629907678295, 197 | "stop" : 1629907678432, 198 | "duration" : 137 199 | }, 200 | "flaky" : false, 201 | "newFailed" : false, 202 | "parameters" : [ "[2.0, 'articleId有误,查询失败', 'http://39.100.104.214:8080', '/getBlogContent/1234', 'get', '', '\"code\": \"03\"', '', '', '']" ] 203 | }, { 204 | "name" : "删除博文", 205 | "uid" : "8f972462257f4377", 206 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 207 | "status" : "passed", 208 | "time" : { 209 | "start" : 1629907679310, 210 | "stop" : 1629907679439, 211 | "duration" : 129 212 | }, 213 | "flaky" : false, 214 | "newFailed" : false, 215 | "parameters" : [ "[2.0, 'token有误,更新失败', 'http://39.100.104.214:8080', '/delete/', 'post', '{\"userid\":${userid}, \"token\": \"123\", \"articleId\":[]}', '\"code\": \"03\"', '', '', '']" ] 216 | }, { 217 | "name" : "更新博文内容", 218 | "uid" : "9c7fb473d7fc68f0", 219 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 220 | "status" : "passed", 221 | "time" : { 222 | "start" : 1629907678443, 223 | "stop" : 1629907678601, 224 | "duration" : 158 225 | }, 226 | "flaky" : false, 227 | "newFailed" : false, 228 | "parameters" : [ "[1.0, '博文内容更新成功', 'http://39.100.104.214:8080', '/update/', 'put', '{\"userid\":${userid}, \"token\": \"${token}\", \"articleId\":${articleId}, \"title\":\"python\", \"content\":\"test test\"}', '\"update_time\":', '', '', '']" ] 229 | }, { 230 | "name" : "删除博文", 231 | "uid" : "a9e063ba23abac18", 232 | "parentUid" : "3882a6cdeb4b31aaf48580164d8cf3a4", 233 | "status" : "passed", 234 | "time" : { 235 | "start" : 1629907679087, 236 | "stop" : 1629907679298, 237 | "duration" : 211 238 | }, 239 | "flaky" : false, 240 | "newFailed" : false, 241 | "parameters" : [ "[1.0, '博文删除成功', 'http://39.100.104.214:8080', '/delete/', 'post', '{\"userid\":${userid}, \"token\": \"${token}\", \"articleId\":[${articleId}]}', '\"code\": \"00\"', '', '', '']" ] 242 | } ], 243 | "uid" : "3882a6cdeb4b31aaf48580164d8cf3a4" 244 | } ], 245 | "uid" : "7181e53ebb64412cb716b07b00320ea4" 246 | } ] 247 | } -------------------------------------------------------------------------------- /test_report/export/influxDbData.txt: -------------------------------------------------------------------------------- 1 | launch_status failed=0 1629907688000000000 2 | launch_status broken=0 1629907688000000000 3 | launch_status passed=18 1629907688000000000 4 | launch_status skipped=0 1629907688000000000 5 | launch_status unknown=0 1629907688000000000 6 | launch_time duration=5307 1629907688000000000 7 | launch_time min_duration=126 1629907688000000000 8 | launch_time max_duration=1048 1629907688000000000 9 | launch_time sum_duration=5098 1629907688000000000 10 | launch_retries retries=0 1629907688000000000 11 | launch_retries run=18 1629907688000000000 12 | -------------------------------------------------------------------------------- /test_report/export/mail.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |' + data.error + ''; 86 | }, 87 | }); 88 | var AttachmentView = Backbone.Marionette.View.extend({ 89 | regions: { 90 | subView: '.screen-diff-view', 91 | }, 92 | template: function () { 93 | return ''; 94 | }, 95 | onRender: function () { 96 | jQuery 97 | .getJSON(this.options.sourceUrl) 98 | .then(this.renderScreenDiffView.bind(this), this.renderErrorView.bind(this)); 99 | }, 100 | renderErrorView: function (error) { 101 | console.log(error); 102 | this.showChildView( 103 | 'subView', 104 | new ErrorView({ 105 | error: error.statusText, 106 | }), 107 | ); 108 | }, 109 | renderScreenDiffView: function (data) { 110 | this.showChildView( 111 | 'subView', 112 | new ScreenDiffView({ 113 | diffImage: data.diff, 114 | actualImage: data.actual, 115 | expectedImage: data.expected, 116 | }), 117 | ); 118 | }, 119 | }); 120 | 121 | var ScreenDiffView = Backbone.Marionette.View.extend({ 122 | className: 'pane__section', 123 | events: function () { 124 | return { 125 | ['click [name="screen-diff-type-' + this.cid + '"]']: 'onDiffTypeChange', 126 | 'mousemove .screen-diff__overlay': 'onOverlayMove', 127 | }; 128 | }, 129 | initialize: function (options) { 130 | this.diffImage = options.diffImage; 131 | this.actualImage = options.actualImage; 132 | this.expectedImage = options.expectedImage; 133 | this.radioName = 'screen-diff-type-' + this.cid; 134 | }, 135 | templateContext: function () { 136 | return { 137 | diffType: settings.get('diffType'), 138 | diffImage: this.diffImage, 139 | actualImage: this.actualImage, 140 | expectedImage: this.expectedImage, 141 | radioName: this.radioName, 142 | }; 143 | }, 144 | template: function (data) { 145 | if (!data.diffImage && !data.actualImage && !data.expectedImage) { 146 | return ''; 147 | } 148 | 149 | return ( 150 | '