case_common: allure_epic: 项目管理 allure_feature: 项目 allure_story: 项目 case_markers: - pms - pms_project - usefixtures: gitlink_login common_dependence: setup: interface: - pms_get_enterprise_user_list_01 - pms_new_project_02 - pms_get_project_list_by_name_02 teardown: interface: - pms_delete_project_01 case_info: - id: pms_edit_project_01 title: 企业下编辑项目接口 - 更新成功 run: True severity: blocker url: ${pms_host}/api/pms/pmsProject method: PUT headers: Content-Type: application/json; charset=utf-8; cookies: ${cookies} request_type: json payload: pmsEnterpriseId: ${env_enterprise_id} id: ${pms_project_id} status: ${random.choice([0,1,2])} # 0: 关闭 1:开启 2:暂停 projectName: ${generate_company_name(lan='zh')}_${generate_words} projectAssigneeId: ${random.choice(${assignee_ids})} projectDescription: ${generate_paragraph} pmsProductId: ${env_pms_product_id} pmsProjectMemberIds: ${list_to_str(${assignee_ids})} projectRepositoryIds: ${repo_id} startTime: ${generate_time(fmt='%Y-%m-%d')} endTime: ${generate_time(fmt='%Y-%m-%d')} files: assert_response: status_code: 200 assertMessage: type_jsonpath: $.msg expect_value: 操作成功 assert_type: == assert_sql: extract: case_dependence: setup: interface: pms_new_repo_01 - id: pms_edit_project_03 title: 企业下编辑项目接口 - 项目名称长度51,编辑失败 run: True severity: normal url: ${pms_host}/api/pms/pmsProject method: PUT headers: Content-Type: application/json; charset=utf-8; cookies: ${cookies} request_type: json payload: pmsEnterpriseId: ${env_enterprise_id} id: ${pms_project_id} projectName: ${faker.pystr(max_chars=51)} projectAssigneeId: ${random.choice(${assignee_ids})} files: assert_response: status_code: 200 assertMessage: type_jsonpath: $.msg expect_value: '[projectName]字段校验异常:size must be between 0 and 50' assert_type: == assert_sql: extract: case_dependence: - id: pms_edit_project_04 title: 企业下编辑项目接口 - 项目名称为空,编辑失败 run: True severity: normal url: ${pms_host}/api/pms/pmsProject method: PUT headers: Content-Type: application/json; charset=utf-8; cookies: ${cookies} request_type: json payload: pmsEnterpriseId: ${env_enterprise_id} id: ${pms_project_id} projectName: projectAssigneeId: ${random.choice(${assignee_ids})} files: assert_response: status_code: 200 assertMessage: type_jsonpath: $.msg expect_value: 操作成功 # 当传参为空时,当前设计为不更新; assert_type: == assert_sql: extract: case_dependence: - id: pms_edit_project_05 title: 企业下编辑项目接口 - 项目简介长度201,编辑失败 run: True severity: normal url: ${pms_host}/api/pms/pmsProject method: PUT headers: Content-Type: application/json; charset=utf-8; cookies: ${cookies} request_type: json payload: pmsEnterpriseId: ${env_enterprise_id} id: ${pms_project_id} projectName: ${faker.pystr(max_chars=50)} projectAssigneeId: ${random.choice(${assignee_ids})} projectDescription: ${faker.pystr(max_chars=201)} files: assert_response: status_code: 200 assertMessage: type_jsonpath: $.msg expect_value: '[projectDescription]字段校验异常:size must be between 0 and 200' assert_type: == assert_sql: extract: case_dependence: - id: pms_edit_project_06 title: 企业下编辑项目接口 - 结束时间晚于开始时间,编辑失败 run: True severity: normal url: ${pms_host}/api/pms/pmsProject method: PUT headers: Content-Type: application/json; charset=utf-8; cookies: ${cookies} request_type: json payload: pmsEnterpriseId: ${env_enterprise_id} id: ${pms_project_id} projectName: ${faker.pystr(max_chars=50)} projectAssigneeId: ${random.choice(${assignee_ids})} projectDescription: ${faker.pystr(max_chars=200)} startTime: ${generate_time_after_week} endTime: ${generate_time(fmt='%Y-%m-%d')} files: assert_response: status_code: 200 assertMessage: type_jsonpath: $.msg expect_value: 结束时间不能早于开始时间 assert_type: == assert_sql: extract: case_dependence: