新增和修改部分测试用例
This commit is contained in:
+11
-10
@@ -20,6 +20,7 @@ ENV_VARS = {
|
||||
"host": "https://******",
|
||||
"wiki_host": "https://******",
|
||||
"pms_host": "https://******",
|
||||
"glcc_host": "https://******",
|
||||
# 获取oauth_token需要的参数
|
||||
"client_id": "****client_id****",
|
||||
"client_secret": "****client_secret****",
|
||||
@@ -44,7 +45,7 @@ ENV_VARS = {
|
||||
"env_project_id": "",
|
||||
# pms相关环境变量 - 产品
|
||||
"env_pms_product_id": "",
|
||||
"env_pms_product_identifier": "******",
|
||||
"env_pms_product_identifier": "",
|
||||
# pms相关环境变量 - 项目
|
||||
"env_pms_project_id": "",
|
||||
# pms相关环境变量 - 企业
|
||||
@@ -94,8 +95,8 @@ ENV_VARS = {
|
||||
"t_nickname": "******",
|
||||
"t_user_id": 36670,
|
||||
# 测试仓库 env_repo_owner/env_repo_identifier
|
||||
"env_repo_owner": "****",
|
||||
"env_repo_identifier": "****",
|
||||
"env_repo_owner": "******",
|
||||
"env_repo_identifier": "******",
|
||||
"env_project_id": "****",
|
||||
# pms相关环境变量 - 产品
|
||||
"env_pms_product_id": "",
|
||||
@@ -150,7 +151,7 @@ ENV_VARS = {
|
||||
# 测试仓库 env_repo_owner/env_repo_identifier
|
||||
"env_repo_owner": "******",
|
||||
"env_repo_identifier": "******",
|
||||
"env_project_id": "",
|
||||
"env_project_id": "******",
|
||||
# pms相关环境变量
|
||||
"env_pms_product_id": "",
|
||||
"env_pms_product_identifier": "",
|
||||
@@ -193,13 +194,13 @@ ENV_VARS = {
|
||||
"t_nickname": "******",
|
||||
"t_user_id": 87691,
|
||||
# 测试账号 - 超级管理员 (测试仓库管理员)
|
||||
"env_super_login": "******",
|
||||
"env_super_password": "******",
|
||||
"env_super_user_id": 88473,
|
||||
"env_super_login": "",
|
||||
"env_super_password": "",
|
||||
"env_super_user_id": 0,
|
||||
# 测试仓库 env_repo_owner/env_repo_identifier
|
||||
"env_repo_owner": "******",
|
||||
"env_repo_identifier": "******",
|
||||
"env_project_id": "******",
|
||||
"env_repo_owner": "",
|
||||
"env_repo_identifier": "",
|
||||
"env_project_id": "",
|
||||
# pms相关环境变量
|
||||
"env_pms_product_id": "",
|
||||
"env_pms_product_identifier": "",
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 12 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 126 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 187 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 10 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 218 KiB |
+14
-9
@@ -9,27 +9,32 @@ case_common:
|
||||
|
||||
case_info:
|
||||
-
|
||||
id: gitlink_repo_set_default_branch_001
|
||||
title: 更新项目默认分支
|
||||
id: gitlink_repo_update_default_branch_001
|
||||
title: 更新项目默认分支,更新成功
|
||||
severity: critical
|
||||
run: True
|
||||
url: /api/${env_repo_owner}/${env_repo_identifier}.json
|
||||
method: PUT
|
||||
url: /api/v1//${env_repo_owner}/${env_repo_identifier}/branches/update_default_branch.json
|
||||
method: PATCH
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: json
|
||||
payload:
|
||||
default_branch: master
|
||||
name: master
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assertProjectId:
|
||||
message: 断言identifier
|
||||
assert_status:
|
||||
message: 断言接口status=0
|
||||
expect_value: 0
|
||||
assert_type: ==
|
||||
expect_value: ${env_repo_identifier}
|
||||
type_jsonpath: $.identifier
|
||||
type_jsonpath: $.status
|
||||
assert_message:
|
||||
message: 断言接口message=success
|
||||
expect_value: success
|
||||
assert_type: ==
|
||||
type_jsonpath: $.message
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
case_common:
|
||||
allure_epic: GitLink接口
|
||||
allure_feature: 开源项目模块
|
||||
allure_story: 分支设置
|
||||
case_markers:
|
||||
- gitlink
|
||||
- gitea
|
||||
- branch
|
||||
- usefixtures: gitlink_login
|
||||
|
||||
# 前提条件:仅仓库管理员及以上角色才有权限
|
||||
common_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 新建私有仓库
|
||||
- gitlink_projects_new_project_02
|
||||
teardown:
|
||||
interface:
|
||||
# 删除仓库
|
||||
- gitlink_projects_delete_project_01
|
||||
|
||||
case_info:
|
||||
-
|
||||
id: gitlink_get_repo_protect_branch_list_01
|
||||
title: 仓库管理员获取仓库保护分支列表,获取成功
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/protected_branches.json
|
||||
method: GET
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: params
|
||||
payload:
|
||||
page: 1
|
||||
limit: 15
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assertMessage:
|
||||
message: 断言接口返回包括字段total_count
|
||||
expect_value: total_count
|
||||
assert_type: contains
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
+71
@@ -0,0 +1,71 @@
|
||||
case_common:
|
||||
allure_epic: GitLink接口
|
||||
allure_feature: 开源项目模块
|
||||
allure_story: 分支设置
|
||||
case_markers:
|
||||
- gitlink
|
||||
- projects
|
||||
- gitea
|
||||
- branch
|
||||
- usefixtures: gitlink_login
|
||||
|
||||
|
||||
# 前提条件:仅仓库管理员及以上角色才有权限
|
||||
common_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 新建私有仓库
|
||||
- gitlink_projects_new_project_02
|
||||
teardown:
|
||||
interface:
|
||||
# 删除仓库
|
||||
- gitlink_projects_delete_project_01
|
||||
|
||||
case_info:
|
||||
-
|
||||
id: gitlink_repo_delete_protect_branch_01
|
||||
title: 仓库管理员删除保护分支,设置成功
|
||||
severity: critical
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/protected_branches/master.json
|
||||
method: DELETE
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: params
|
||||
payload:
|
||||
branch_name: master
|
||||
branchProtect: false # 启用分支保护
|
||||
enable_push: 0 # 禁用推送
|
||||
enable_push_whitelist: false # 启用推送白名单
|
||||
enable_merge_whitelist: false # 启用合并白名单
|
||||
merge_whitelist_usernames: # 启用合并白名单 用户
|
||||
enable_status_check: false # 启用状态检查
|
||||
required_approvals: 5 # 所需批准数
|
||||
enable_approvals_whitelist: false # 批准仅限列入白名单的用户或团队
|
||||
approvals_whitelist_usernames: # 批准仅限列入白名单的用户或团队
|
||||
block_on_rejected_reviews: false # 拒绝审核阻止了合并
|
||||
dismiss_stale_approvals: false # 取消过时的批准
|
||||
require_signed_commits: false # 需要签名提交
|
||||
block_on_outdated_branch: false # 如果拉取请求已经过时,阻止合并
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assert_status:
|
||||
message: 断言接口status=0
|
||||
expect_value: 0
|
||||
assert_type: ==
|
||||
type_jsonpath: $.status
|
||||
assert_message:
|
||||
message: 断言接口message=success
|
||||
expect_value: success
|
||||
assert_type: ==
|
||||
type_jsonpath: $.message
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 设置保护分支 master
|
||||
- gitlink_set_repo_protect_branch_01
|
||||
@@ -0,0 +1,66 @@
|
||||
case_common:
|
||||
allure_epic: GitLink接口
|
||||
allure_feature: 开源项目模块
|
||||
allure_story: 分支设置
|
||||
case_markers:
|
||||
- gitlink
|
||||
- projects
|
||||
- gitea
|
||||
- branch
|
||||
- usefixtures: gitlink_login
|
||||
|
||||
|
||||
# 前提条件:仅仓库管理员及以上角色才有权限
|
||||
common_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 新建私有仓库
|
||||
- gitlink_projects_new_project_02
|
||||
teardown:
|
||||
interface:
|
||||
# 删除仓库
|
||||
- gitlink_projects_delete_project_01
|
||||
|
||||
case_info:
|
||||
-
|
||||
id: gitlink_repo_edit_protect_branch_01
|
||||
title: 仓库管理员更新保护分支,设置成功
|
||||
severity: critical
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/protected_branches/master.json
|
||||
method: PATCH
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: params
|
||||
payload:
|
||||
branch_name: master
|
||||
branchProtect: true # 启用分支保护
|
||||
enable_push: 0 # 禁用推送
|
||||
enable_push_whitelist: false # 启用推送白名单
|
||||
enable_merge_whitelist: false # 启用合并白名单
|
||||
merge_whitelist_usernames: # 启用合并白名单 用户
|
||||
enable_status_check: false # 启用状态检查
|
||||
required_approvals: 5 # 所需批准数
|
||||
enable_approvals_whitelist: false # 批准仅限列入白名单的用户或团队
|
||||
approvals_whitelist_usernames: # 批准仅限列入白名单的用户或团队
|
||||
block_on_rejected_reviews: false # 拒绝审核阻止了合并
|
||||
dismiss_stale_approvals: false # 取消过时的批准
|
||||
require_signed_commits: false # 需要签名提交
|
||||
block_on_outdated_branch: false # 如果拉取请求已经过时,阻止合并
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assertField:
|
||||
message: 断言接口返回的branch_name
|
||||
expect_value: master
|
||||
assert_type: ==
|
||||
type_jsonpath: $.branch_name
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 设置保护分支 master
|
||||
- gitlink_set_repo_protect_branch_01
|
||||
@@ -0,0 +1,49 @@
|
||||
case_common:
|
||||
allure_epic: GitLink接口
|
||||
allure_feature: 开源项目模块
|
||||
allure_story: 分支设置
|
||||
case_markers:
|
||||
- gitlink
|
||||
- projects
|
||||
- gitea
|
||||
- branch
|
||||
- usefixtures: gitlink_login
|
||||
|
||||
|
||||
# 前提条件:仅仓库管理员及以上角色才有权限
|
||||
common_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 新建私有仓库
|
||||
- gitlink_projects_new_project_02
|
||||
teardown:
|
||||
interface:
|
||||
# 删除仓库
|
||||
- gitlink_projects_delete_project_01
|
||||
|
||||
case_info:
|
||||
-
|
||||
id: gitlink_repo_set_default_branch_01
|
||||
title: 仓库管理员设置默认分支,设置成功
|
||||
severity: critical
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}.json
|
||||
method: PUT
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: json
|
||||
payload:
|
||||
default_branch: master
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assertField:
|
||||
message: 断言接口返回的repo_identifier
|
||||
expect_value: ${repo_identifier}
|
||||
assert_type: ==
|
||||
type_jsonpath: $.identifier
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
@@ -0,0 +1,60 @@
|
||||
case_common:
|
||||
allure_epic: GitLink接口
|
||||
allure_feature: 开源项目模块
|
||||
allure_story: 分支设置
|
||||
case_markers:
|
||||
- gitlink
|
||||
- gitea
|
||||
- branch
|
||||
- usefixtures: gitlink_login
|
||||
|
||||
# 前提条件:仅仓库管理员及以上角色才有权限
|
||||
common_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 新建私有仓库
|
||||
- gitlink_projects_new_project_02
|
||||
teardown:
|
||||
interface:
|
||||
# 删除仓库
|
||||
- gitlink_projects_delete_project_01
|
||||
|
||||
case_info:
|
||||
-
|
||||
id: gitlink_set_repo_protect_branch_01
|
||||
title: 仓库管理员设置仓库保护分支,设置成功
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/protected_branches.json
|
||||
method: POST
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: params
|
||||
payload:
|
||||
branch_name: master
|
||||
branchProtect: true # 启用分支保护
|
||||
enable_push: 0 # 禁用推送
|
||||
enable_push_whitelist: false # 启用推送白名单
|
||||
enable_merge_whitelist: true # 启用合并白名单
|
||||
merge_whitelist_usernames: # 启用合并白名单 用户
|
||||
enable_status_check: true # 启用状态检查
|
||||
required_approvals: 5 # 所需批准数
|
||||
enable_approvals_whitelist: true # 批准仅限列入白名单的用户或团队
|
||||
approvals_whitelist_usernames: # 批准仅限列入白名单的用户或团队
|
||||
block_on_rejected_reviews: true # 拒绝审核阻止了合并
|
||||
dismiss_stale_approvals: true # 取消过时的批准
|
||||
require_signed_commits: true # 需要签名提交
|
||||
block_on_outdated_branch: true # 如果拉取请求已经过时,阻止合并
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assertField:
|
||||
message: 断言接口返回的branch_name
|
||||
expect_value: master
|
||||
assert_type: ==
|
||||
type_jsonpath: $.branch_name
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
@@ -0,0 +1,46 @@
|
||||
case_common:
|
||||
allure_epic: GitLink接口
|
||||
allure_feature: 开源项目模块
|
||||
allure_story: 仓库设置
|
||||
case_markers:
|
||||
- gitlink
|
||||
- gitea
|
||||
- debug
|
||||
- usefixtures: gitlink_login
|
||||
|
||||
# 仅仓库管理员及以上角色才有权限
|
||||
common_dependence:
|
||||
setup:
|
||||
# 新建私有仓库
|
||||
interface: gitlink_projects_new_project_02
|
||||
teardown:
|
||||
# 删除仓库
|
||||
interface: gitlink_projects_delete_project_01
|
||||
|
||||
case_info:
|
||||
- id: gitlink_cancel_transfer_repo_01
|
||||
title: 仓库取消转移,取消成功
|
||||
severity: critical
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/applied_transfer_projects/cancel.json
|
||||
method: POST
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: json
|
||||
payload:
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assertField:
|
||||
message: 断言接口返回包括字段
|
||||
expect_value: project
|
||||
assert_type: contains
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 仓库申请转移
|
||||
- gitlink_transfer_repo_01
|
||||
@@ -0,0 +1,45 @@
|
||||
case_common:
|
||||
allure_epic: GitLink接口
|
||||
allure_feature: 开源项目模块
|
||||
allure_story: 仓库设置
|
||||
case_markers:
|
||||
- gitlink
|
||||
- gitea
|
||||
- debug
|
||||
- usefixtures: gitlink_login
|
||||
|
||||
# 仅仓库管理员及以上角色才有权限
|
||||
common_dependence:
|
||||
setup:
|
||||
# 新建私有仓库
|
||||
interface: gitlink_projects_new_project_02
|
||||
teardown:
|
||||
# 删除仓库
|
||||
interface: gitlink_projects_delete_project_01
|
||||
|
||||
case_info:
|
||||
- id: gitlink_transfer_repo_01
|
||||
title: 仓库申请转移,申请成功
|
||||
severity: critical
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/applied_transfer_projects.json
|
||||
method: POST
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: json
|
||||
payload:
|
||||
# goal: 0
|
||||
owner_name: ${env_super_login} # 迁移对象标识
|
||||
identifier: ${repo_identifier}
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assertField:
|
||||
message: 断言接口返回包括字段
|
||||
expect_value: project
|
||||
assert_type: contains
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
@@ -34,7 +34,7 @@ case_info:
|
||||
request_type: json
|
||||
payload:
|
||||
user_id: ${user_id}
|
||||
name: test_${generate_identifier()}_${generate_identifier()}
|
||||
name: test_${generate_catch_phrase()}
|
||||
repository_name: ${generate_identifier()}_test
|
||||
files:
|
||||
assert_response:
|
||||
@@ -68,7 +68,7 @@ case_info:
|
||||
request_type: json
|
||||
payload:
|
||||
user_id: ${user_id}
|
||||
name: test_${generate_identifier()}_${generate_identifier()}
|
||||
name: 测试_${generate_catch_phrase()}
|
||||
repository_name: ${generate_identifier()}_test
|
||||
private: true
|
||||
files:
|
||||
@@ -103,7 +103,7 @@ case_info:
|
||||
request_type: json
|
||||
payload:
|
||||
user_id: ${user_id}
|
||||
name: test_${generate_identifier()}_${generate_identifier()}
|
||||
name: test_${generate_catch_phrase()}
|
||||
repository_name: ${generate_identifier()}_test
|
||||
description: ${generate_paragraph()}
|
||||
private: true
|
||||
@@ -154,7 +154,7 @@ case_info:
|
||||
request_type: json
|
||||
payload:
|
||||
user_id: ${user_id}
|
||||
name: test_${generate_identifier()}_${generate_identifier()}
|
||||
name: test_${generate_catch_phrase()}
|
||||
repository_name: ${generate_identifier()}_test
|
||||
files:
|
||||
assert_response:
|
||||
|
||||
@@ -7,14 +7,22 @@ case_common:
|
||||
- gitea
|
||||
- webhook
|
||||
- usefixtures: gitlink_login
|
||||
- skip: 暂时还未完成
|
||||
|
||||
# 仅仓库管理员及以上角色才有权限
|
||||
|
||||
common_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 新建私有仓库
|
||||
- gitlink_projects_new_project_02
|
||||
teardown:
|
||||
interface:
|
||||
# 删除仓库
|
||||
- gitlink_projects_delete_project_01
|
||||
|
||||
case_info:
|
||||
-
|
||||
id: gitlink_get_repo_add_webhook_01
|
||||
title: 仓库管理员创建Webhook,创建成功
|
||||
- id: gitlink_get_repo_add_webhook_01
|
||||
title: 仓库管理员创建Webhook(push事件),创建成功
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks.json
|
||||
@@ -25,36 +33,117 @@ case_info:
|
||||
cookies:
|
||||
request_type: json
|
||||
payload:
|
||||
type: # 选填,类型, 默认值gitea, 枚举值:gitea slack discord dingtalk telegram msteams feishu matrix jianmu softbot
|
||||
active: # 必填,是否开启, 布尔值
|
||||
content_type: # 必填,内容类型, 枚举值:json form
|
||||
http_method: # 必填,请求方式,枚举值:GET POST
|
||||
secret: # 选填,密钥
|
||||
url: # 必填,请求地址
|
||||
branch_filter: # 必填,分支白名单 推送、创建,删除分支事件的分支白名单,使用 glob 模式匹配指定。若为空或 ,则将报告所有分支的事件。
|
||||
type: gitea # 选填,类型, 默认值gitea, 枚举值:gitea slack discord dingtalk telegram msteams feishu matrix jianmu softbot
|
||||
active: true # 必填,是否开启, 布尔值
|
||||
content_type: json # 必填,内容类型, 枚举值:json form
|
||||
http_method: ${random.choice(['GET', 'POST'])} # 必填,请求方式,枚举值:GET POST
|
||||
secret: ${generate_identifier} # 选填,密钥
|
||||
url: ${faker.uri()} # 必填,请求地址
|
||||
branch_filter: '*' # 必填,分支白名单 推送、创建,删除分支事件的分支白名单,使用 glob 模式匹配指定。若为空或 ,则将报告所有分支的事件。
|
||||
eventCondition: push
|
||||
events: # 必填,事件,枚举值:push create delete issues_only issue_assign issue_label issue_comment pull_request_only pull_request_assign pull_request_comment
|
||||
- push
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assertMessage:
|
||||
message: 断言接口返回包括字段total_count
|
||||
expect_value: total_count
|
||||
message: 断言接口返回包括字段id
|
||||
expect_value: id
|
||||
assert_type: contains
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
setup:
|
||||
# 新建私有仓库
|
||||
interface: gitlink_projects_new_project_02
|
||||
# teardown:
|
||||
# # 删除仓库
|
||||
# interface: gitlink_projects_delete_project_01
|
||||
|
||||
-
|
||||
id: gitlink_get_repo_add_webhook_02
|
||||
title: 非仓库管理员创建Webhook,创建成功
|
||||
|
||||
- id: gitlink_get_repo_add_webhook_02
|
||||
title: 仓库管理员创建Webhook(所有事件),创建成功
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks.json
|
||||
method: POST
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: json
|
||||
payload:
|
||||
type: gitea # 选填,类型, 默认值gitea, 枚举值:gitea slack discord dingtalk telegram msteams feishu matrix jianmu softbot
|
||||
active: true # 必填,是否开启, 布尔值
|
||||
content_type: json # 必填,内容类型, 枚举值:json form
|
||||
http_method: ${random.choice(['GET', 'POST'])} # 必填,请求方式,枚举值:GET POST
|
||||
secret: ${generate_identifier} # 选填,密钥
|
||||
url: ${faker.uri()} # 必填,请求地址
|
||||
branch_filter: '*' # 必填,分支白名单 推送、创建,删除分支事件的分支白名单,使用 glob 模式匹配指定。若为空或 ,则将报告所有分支的事件。
|
||||
eventCondition: all
|
||||
events: # 必填,事件,枚举值:push create delete issues_only issue_assign issue_label issue_comment pull_request_only pull_request_assign pull_request_comment
|
||||
- create
|
||||
- delete
|
||||
- push
|
||||
- pull_request_assign
|
||||
- pull_request_review
|
||||
- pull_request_only
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assertMessage:
|
||||
message: 断言接口返回包括字段id
|
||||
expect_value: id
|
||||
assert_type: contains
|
||||
assert_sql:
|
||||
extract:
|
||||
type_jsonpath:
|
||||
repo_webhook_id: $.id
|
||||
case_dependence:
|
||||
|
||||
|
||||
- id: gitlink_get_repo_add_webhook_03
|
||||
title: 仓库管理员创建Webhook(所有自定义事件),创建成功
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks.json
|
||||
method: POST
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: json
|
||||
payload:
|
||||
type: gitea # 选填,类型, 默认值gitea, 枚举值:gitea slack discord dingtalk telegram msteams feishu matrix jianmu softbot
|
||||
active: true # 必填,是否开启, 布尔值
|
||||
content_type: json # 必填,内容类型, 枚举值:json form
|
||||
http_method: ${random.choice(['GET', 'POST'])} # 必填,请求方式,枚举值:GET POST
|
||||
secret: ${generate_identifier} # 选填,密钥
|
||||
url: ${faker.uri()} # 必填,请求地址
|
||||
branch_filter: '*' # 必填,分支白名单 推送、创建,删除分支事件的分支白名单,使用 glob 模式匹配指定。若为空或 ,则将报告所有分支的事件。
|
||||
eventCondition: forevent
|
||||
events: # 必填,事件,枚举值:push create delete issues_only issue_assign issue_label issue_comment pull_request_only pull_request_assign pull_request_comment
|
||||
- create
|
||||
- delete
|
||||
- push
|
||||
- pull_request_assign
|
||||
- pull_request_comment
|
||||
- pull_request_only
|
||||
- issues_only
|
||||
- issue_label
|
||||
- issue_assign
|
||||
- issue_comment
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assertMessage:
|
||||
message: 断言接口返回包括字段id
|
||||
expect_value: id
|
||||
assert_type: contains
|
||||
assert_sql:
|
||||
extract:
|
||||
type_jsonpath:
|
||||
repo_webhook_id: $.id
|
||||
case_dependence:
|
||||
|
||||
- id: gitlink_get_repo_add_webhook_04
|
||||
title: 非仓库管理员创建Webhook(所有自定义事件),创建成功
|
||||
severity: normal
|
||||
run: false
|
||||
url: /api/${env_repo_owner}/${env_repo_identifier}/webhooks.json
|
||||
method: POST
|
||||
headers:
|
||||
@@ -63,27 +152,31 @@ case_info:
|
||||
cookies:
|
||||
request_type: json
|
||||
payload:
|
||||
type: # 选填,类型, 默认值gitea, 枚举值:gitea slack discord dingtalk telegram msteams feishu matrix jianmu softbot
|
||||
active: # 必填,是否开启, 布尔值
|
||||
content_type: # 必填,内容类型, 枚举值:json form
|
||||
http_method: # 必填,请求方式,枚举值:GET POST
|
||||
secret: # 选填,密钥
|
||||
url: # 必填,请求地址
|
||||
branch_filter: # 必填,分支白名单 推送、创建,删除分支事件的分支白名单,使用 glob 模式匹配指定。若为空或 ,则将报告所有分支的事件。
|
||||
type: gitea # 选填,类型, 默认值gitea, 枚举值:gitea slack discord dingtalk telegram msteams feishu matrix jianmu softbot
|
||||
active: true # 必填,是否开启, 布尔值
|
||||
content_type: json # 必填,内容类型, 枚举值:json form
|
||||
http_method: ${random.choice(['GET', 'POST'])} # 必填,请求方式,枚举值:GET POST
|
||||
secret: ${generate_identifier} # 选填,密钥
|
||||
url: ${faker.uri()} # 必填,请求地址
|
||||
branch_filter: '*' # 必填,分支白名单 推送、创建,删除分支事件的分支白名单,使用 glob 模式匹配指定。若为空或 ,则将报告所有分支的事件。
|
||||
eventCondition: push
|
||||
events: # 必填,事件,枚举值:push create delete issues_only issue_assign issue_label issue_comment pull_request_only pull_request_assign pull_request_comment
|
||||
- push
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assert_status:
|
||||
message: 断言接口status=403
|
||||
expect_value: 403
|
||||
message: 断言接口status=404
|
||||
expect_value: 404
|
||||
assert_type: ==
|
||||
type_jsonpath: $.status
|
||||
assert_message:
|
||||
message: 断言接口message=你不是管理员,没有权限操作
|
||||
expect_value: 你不是管理员,没有权限操作
|
||||
message: 断言接口message
|
||||
expect_value: 您访问的页面不存在或已被删除
|
||||
assert_type: ==
|
||||
type_jsonpath: $.message
|
||||
assert_sql:
|
||||
extract:
|
||||
type_jsonpath:
|
||||
repo_webhook_id: $.id
|
||||
case_dependence:
|
||||
|
||||
@@ -7,9 +7,17 @@ case_common:
|
||||
- gitea
|
||||
- webhook
|
||||
- usefixtures: gitlink_login
|
||||
- skip: 暂时还未完成
|
||||
|
||||
# 仅仓库管理员及以上角色才有权限
|
||||
# 前提条件:仅仓库管理员及以上角色才有权限,当前仓库存在webhook
|
||||
common_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 新建私有仓库
|
||||
- gitlink_projects_new_project_02
|
||||
teardown:
|
||||
interface:
|
||||
# 删除仓库
|
||||
- gitlink_projects_delete_project_01
|
||||
|
||||
case_info:
|
||||
-
|
||||
@@ -17,7 +25,7 @@ case_info:
|
||||
title: 仓库管理员删除Webhook,删除成功
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks/${webhook_id}.json
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks/${repo_webhook_id}.json
|
||||
method: DELETE
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
@@ -25,55 +33,23 @@ case_info:
|
||||
cookies:
|
||||
request_type: params
|
||||
payload:
|
||||
owner:
|
||||
repo:
|
||||
id:
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assertMessage:
|
||||
message: 断言接口返回包括字段total_count
|
||||
expect_value: total_count
|
||||
assert_type: contains
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
setup:
|
||||
# 新建私有仓库
|
||||
interface: gitlink_projects_new_project_02
|
||||
# teardown:
|
||||
# # 删除仓库
|
||||
# interface: gitlink_projects_delete_project_01
|
||||
|
||||
-
|
||||
id: gitlink_get_repo_delete_webhook_02
|
||||
title: 非仓库管理员删除Webhook,删除失败
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks/${webhook_id}.json
|
||||
method: DELETE
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: params
|
||||
payload:
|
||||
owner:
|
||||
repo:
|
||||
id:
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assert_status:
|
||||
message: 断言接口status=403
|
||||
expect_value: 403
|
||||
message: 断言接口status=0
|
||||
expect_value: 0
|
||||
assert_type: ==
|
||||
type_jsonpath: $.status
|
||||
assert_message:
|
||||
message: 断言接口message=你不是管理员,没有权限操作
|
||||
expect_value: 你不是管理员,没有权限操作
|
||||
message: 断言接口message=success
|
||||
expect_value: success
|
||||
assert_type: ==
|
||||
type_jsonpath: $.message
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 新建webhook
|
||||
- gitlink_get_repo_add_webhook_03
|
||||
|
||||
@@ -1,88 +0,0 @@
|
||||
case_common:
|
||||
allure_epic: GitLink接口
|
||||
allure_feature: 开源项目模块
|
||||
allure_story: Webhook
|
||||
case_markers:
|
||||
- gitlink
|
||||
- gitea
|
||||
- webhook
|
||||
- usefixtures: gitlink_login
|
||||
- skip: 暂时还未完成
|
||||
# 仅仓库管理员及以上角色才有权限
|
||||
|
||||
case_info:
|
||||
-
|
||||
id: gitlink_get_repo_update_webhook_01
|
||||
title: 仓库管理员更新Webhook,更新成功
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks/${webhook_id}.json
|
||||
method: PUT
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: json
|
||||
payload:
|
||||
type: # 选填,类型, 默认值gitea, 枚举值:gitea slack discord dingtalk telegram msteams feishu matrix jianmu softbot
|
||||
active: # 必填,是否开启, 布尔值
|
||||
content_type: # 必填,内容类型, 枚举值:json form
|
||||
http_method: # 必填,请求方式,枚举值:GET POST
|
||||
secret: # 选填,密钥
|
||||
url: # 必填,请求地址
|
||||
branch_filter: # 必填,分支白名单 推送、创建,删除分支事件的分支白名单,使用 glob 模式匹配指定。若为空或 ,则将报告所有分支的事件。
|
||||
events: # 必填,事件,枚举值:push create delete issues_only issue_assign issue_label issue_comment pull_request_only pull_request_assign pull_request_comment
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assertMessage:
|
||||
message: 断言接口返回包括字段total_count
|
||||
expect_value: total_count
|
||||
assert_type: contains
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
setup:
|
||||
# 新建私有仓库
|
||||
interface: gitlink_projects_new_project_02
|
||||
# teardown:
|
||||
# # 删除仓库
|
||||
# interface: gitlink_projects_delete_project_01
|
||||
|
||||
-
|
||||
id: gitlink_get_repo_update_webhook_02
|
||||
title: 非仓库管理员更新Webhook,更新失败
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks/${webhook_id}.json
|
||||
method: PUT
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: json
|
||||
payload:
|
||||
type: # 选填,类型, 默认值gitea, 枚举值:gitea slack discord dingtalk telegram msteams feishu matrix jianmu softbot
|
||||
active: # 必填,是否开启, 布尔值
|
||||
content_type: # 必填,内容类型, 枚举值:json form
|
||||
http_method: # 必填,请求方式,枚举值:GET POST
|
||||
secret: # 选填,密钥
|
||||
url: # 必填,请求地址
|
||||
branch_filter: # 必填,分支白名单 推送、创建,删除分支事件的分支白名单,使用 glob 模式匹配指定。若为空或 ,则将报告所有分支的事件。
|
||||
events: # 必填,事件,枚举值:push create delete issues_only issue_assign issue_label issue_comment pull_request_only pull_request_assign pull_request_comment
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assert_status:
|
||||
message: 断言接口status=403
|
||||
expect_value: 403
|
||||
assert_type: ==
|
||||
type_jsonpath: $.status
|
||||
assert_message:
|
||||
message: 断言接口message=你不是管理员,没有权限操作
|
||||
expect_value: 你不是管理员,没有权限操作
|
||||
assert_type: ==
|
||||
type_jsonpath: $.message
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
@@ -0,0 +1,67 @@
|
||||
case_common:
|
||||
allure_epic: GitLink接口
|
||||
allure_feature: 开源项目模块
|
||||
allure_story: Webhook
|
||||
case_markers:
|
||||
- gitlink
|
||||
- gitea
|
||||
- webhook
|
||||
- usefixtures: gitlink_login
|
||||
|
||||
# 前提条件:仅仓库管理员及以上角色才有权限,当前仓库存在webhook
|
||||
common_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 新建私有仓库
|
||||
- gitlink_projects_new_project_02
|
||||
teardown:
|
||||
interface:
|
||||
# 删除仓库
|
||||
- gitlink_projects_delete_project_01
|
||||
|
||||
case_info:
|
||||
-
|
||||
id: gitlink_get_repo_update_webhook_01
|
||||
title: 仓库管理员更新Webhook,更新成功
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks/${repo_webhook_id}.json
|
||||
method: PATCH
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: json
|
||||
payload:
|
||||
type: gitea # 选填,类型, 默认值gitea, 枚举值:gitea slack discord dingtalk telegram msteams feishu matrix jianmu softbot
|
||||
active: true # 必填,是否开启, 布尔值
|
||||
content_type: json # 必填,内容类型, 枚举值:json form
|
||||
http_method: ${random.choice(['GET', 'POST'])} # 必填,请求方式,枚举值:GET POST
|
||||
secret: ${generate_identifier} # 选填,密钥
|
||||
url: ${faker.uri()} # 必填,请求地址
|
||||
branch_filter: '*' # 必填,分支白名单 推送、创建,删除分支事件的分支白名单,使用 glob 模式匹配指定。若为空或 ,则将报告所有分支的事件。
|
||||
events: push # 必填,事件,枚举值:push create delete issues_only issue_assign issue_label issue_comment pull_request_only pull_request_assign pull_request_comment
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assert_status:
|
||||
message: 断言接口status=0
|
||||
expect_value: 0
|
||||
assert_type: ==
|
||||
type_jsonpath: $.status
|
||||
assert_message:
|
||||
message: 断言接口message=success
|
||||
expect_value: success
|
||||
assert_type: ==
|
||||
type_jsonpath: $.message
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 新建webhook
|
||||
- gitlink_get_repo_add_webhook_03
|
||||
teardown:
|
||||
interface:
|
||||
# 删除webhook
|
||||
- gitlink_get_repo_delete_webhook_01
|
||||
@@ -7,8 +7,17 @@ case_common:
|
||||
- gitea
|
||||
- webhook
|
||||
- usefixtures: gitlink_login
|
||||
- skip: 暂时还未完成
|
||||
# 仅仓库管理员及以上角色才有权限
|
||||
|
||||
# 前提条件:仅仓库管理员及以上角色才有权限,当前仓库存在webhook
|
||||
common_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 新建私有仓库
|
||||
- gitlink_projects_new_project_02
|
||||
teardown:
|
||||
interface:
|
||||
# 删除仓库
|
||||
- gitlink_projects_delete_project_01
|
||||
|
||||
case_info:
|
||||
-
|
||||
@@ -16,7 +25,7 @@ case_info:
|
||||
title: 仓库管理员获取Webhook详情,获取成功
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks/${webhook_id}.json
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks/${repo_webhook_id}/edit.json
|
||||
method: GET
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
@@ -24,55 +33,21 @@ case_info:
|
||||
cookies:
|
||||
request_type: params
|
||||
payload:
|
||||
owner:
|
||||
repo:
|
||||
id:
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assertMessage:
|
||||
message: 断言接口返回包括字段total_count
|
||||
expect_value: total_count
|
||||
message: 断言接口返回包括字段id
|
||||
expect_value: id
|
||||
assert_type: contains
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
setup:
|
||||
# 新建私有仓库
|
||||
interface: gitlink_projects_new_project_02
|
||||
# teardown:
|
||||
# # 删除仓库
|
||||
# interface: gitlink_projects_delete_project_01
|
||||
|
||||
-
|
||||
id: gitlink_get_repo_webhook_detail_02
|
||||
title: 非仓库管理员获取Webhook详情,获取失败
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks/${webhook_id}.json
|
||||
method: GET
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: params
|
||||
payload:
|
||||
owner:
|
||||
repo:
|
||||
id:
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assert_status:
|
||||
message: 断言接口status=403
|
||||
expect_value: 403
|
||||
assert_type: ==
|
||||
type_jsonpath: $.status
|
||||
assert_message:
|
||||
message: 断言接口message=你不是管理员,没有权限操作
|
||||
expect_value: 你不是管理员,没有权限操作
|
||||
assert_type: ==
|
||||
type_jsonpath: $.message
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
interface:
|
||||
# 新建webhook
|
||||
- gitlink_get_repo_add_webhook_03
|
||||
teardown:
|
||||
interface:
|
||||
# 删除webhook
|
||||
- gitlink_get_repo_delete_webhook_01
|
||||
|
||||
+23
-44
@@ -7,8 +7,17 @@ case_common:
|
||||
- gitea
|
||||
- webhook
|
||||
- usefixtures: gitlink_login
|
||||
- skip: 暂时还未完成
|
||||
# 仅仓库管理员及以上角色才有权限
|
||||
|
||||
# 前提条件:仅仓库管理员及以上角色才有权限,当前仓库存在webhook
|
||||
common_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 新建私有仓库
|
||||
- gitlink_projects_new_project_02
|
||||
teardown:
|
||||
interface:
|
||||
# 删除仓库
|
||||
- gitlink_projects_delete_project_01
|
||||
|
||||
case_info:
|
||||
-
|
||||
@@ -16,7 +25,7 @@ case_info:
|
||||
title: 仓库管理员获取Webhook历史推送列表,获取成功
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks/${id}/hooktasks.json.json
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks/${repo_webhook_id}/tasks.json
|
||||
method: GET
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
@@ -24,9 +33,8 @@ case_info:
|
||||
cookies:
|
||||
request_type: params
|
||||
payload:
|
||||
owner:
|
||||
repo:
|
||||
id:
|
||||
page: 1
|
||||
limit: 10
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
@@ -38,41 +46,12 @@ case_info:
|
||||
extract:
|
||||
case_dependence:
|
||||
setup:
|
||||
# 新建私有仓库
|
||||
interface: gitlink_projects_new_project_02
|
||||
# teardown:
|
||||
# # 删除仓库
|
||||
# interface: gitlink_projects_delete_project_01
|
||||
|
||||
-
|
||||
id: gitlink_get_repo_webhook_history_list_02
|
||||
title: 非仓库管理员获取Webhook历史推送列表,获取失败
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${env_repo_owner}/${env_repo_identifier}/webhooks/${id}/hooktasks.json.json
|
||||
method: GET
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: params
|
||||
payload:
|
||||
owner:
|
||||
repo:
|
||||
id:
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assert_status:
|
||||
message: 断言接口status=403
|
||||
expect_value: 403
|
||||
assert_type: ==
|
||||
type_jsonpath: $.status
|
||||
assert_message:
|
||||
message: 断言接口message=你不是管理员,没有权限操作
|
||||
expect_value: 你不是管理员,没有权限操作
|
||||
assert_type: ==
|
||||
type_jsonpath: $.message
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
interface:
|
||||
# 新建webhook
|
||||
- gitlink_get_repo_add_webhook_03
|
||||
# 测试推送
|
||||
- gitlink_get_repo_webhook_test_01
|
||||
teardown:
|
||||
interface:
|
||||
# 删除webhook
|
||||
- gitlink_get_repo_delete_webhook_01
|
||||
@@ -7,8 +7,17 @@ case_common:
|
||||
- gitea
|
||||
- webhook
|
||||
- usefixtures: gitlink_login
|
||||
- skip: 暂时还未完成
|
||||
# 仅仓库管理员及以上角色才有权限
|
||||
|
||||
# 前提条件:仅仓库管理员及以上角色才有权限,当前仓库存在webhook
|
||||
common_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 新建私有仓库
|
||||
- gitlink_projects_new_project_02
|
||||
teardown:
|
||||
interface:
|
||||
# 删除仓库
|
||||
- gitlink_projects_delete_project_01
|
||||
|
||||
case_info:
|
||||
-
|
||||
@@ -25,7 +34,7 @@ case_info:
|
||||
request_type: json
|
||||
payload:
|
||||
page: 1
|
||||
limit: 15
|
||||
limit: 10
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
@@ -36,41 +45,3 @@ case_info:
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
setup:
|
||||
# 新建私有仓库
|
||||
interface: gitlink_projects_new_project_02
|
||||
# teardown:
|
||||
# # 删除仓库
|
||||
# interface: gitlink_projects_delete_project_01
|
||||
|
||||
-
|
||||
id: gitlink_get_repo_webhook_list_02
|
||||
title: 非仓库管理员获取Webhook列表,获取失败
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${env_repo_owner}/${env_repo_identifier}/webhooks.json
|
||||
method: GET
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: json
|
||||
payload:
|
||||
page: 1
|
||||
limit: 15
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assert_status:
|
||||
message: 断言接口status=403
|
||||
expect_value: 403
|
||||
assert_type: ==
|
||||
type_jsonpath: $.status
|
||||
assert_message:
|
||||
message: 断言接口message=你不是管理员,没有权限操作
|
||||
expect_value: 你不是管理员,没有权限操作
|
||||
assert_type: ==
|
||||
type_jsonpath: $.message
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
|
||||
@@ -7,8 +7,17 @@ case_common:
|
||||
- gitea
|
||||
- webhook
|
||||
- usefixtures: gitlink_login
|
||||
- skip: 暂时还未完成
|
||||
# 仅仓库管理员及以上角色才有权限
|
||||
|
||||
# 前提条件:仅仓库管理员及以上角色才有权限,当前仓库存在webhook
|
||||
common_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 新建私有仓库
|
||||
- gitlink_projects_new_project_02
|
||||
teardown:
|
||||
interface:
|
||||
# 删除仓库
|
||||
- gitlink_projects_delete_project_01
|
||||
|
||||
case_info:
|
||||
-
|
||||
@@ -16,63 +25,35 @@ case_info:
|
||||
title: 仓库管理员测试Webhook推送,请求成功
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks/${id}/tests.json
|
||||
method: GET
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks/${repo_webhook_id}/test.json
|
||||
method: POST
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: params
|
||||
request_type: json
|
||||
payload:
|
||||
owner:
|
||||
repo:
|
||||
id:
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assertMessage:
|
||||
message: 断言接口返回包括字段total_count
|
||||
expect_value: total_count
|
||||
assert_type: contains
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
setup:
|
||||
# 新建私有仓库
|
||||
interface: gitlink_projects_new_project_02
|
||||
# teardown:
|
||||
# # 删除仓库
|
||||
# interface: gitlink_projects_delete_project_01
|
||||
|
||||
-
|
||||
id: gitlink_get_repo_webhook_test_02
|
||||
title: 非仓库管理员测试Webhook推送,请求失败
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/${repo_owner}/${repo_identifier}/webhooks/${id}/tests.json
|
||||
method: GET
|
||||
headers:
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies: ${cookies}
|
||||
cookies:
|
||||
request_type: params
|
||||
payload:
|
||||
owner:
|
||||
repo:
|
||||
id:
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assert_status:
|
||||
message: 断言接口status=403
|
||||
expect_value: 403
|
||||
message: 断言接口status=0
|
||||
expect_value: 0
|
||||
assert_type: ==
|
||||
type_jsonpath: $.status
|
||||
assert_message:
|
||||
message: 断言接口message=你不是管理员,没有权限操作
|
||||
expect_value: 你不是管理员,没有权限操作
|
||||
message: 断言接口message=success
|
||||
expect_value: success
|
||||
assert_type: ==
|
||||
type_jsonpath: $.message
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 新建webhook
|
||||
- gitlink_get_repo_add_webhook_03
|
||||
teardown:
|
||||
interface:
|
||||
# 删除webhook
|
||||
- gitlink_get_repo_delete_webhook_01
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
case_common:
|
||||
allure_epic: 开源夏令营GLCC
|
||||
allure_feature: 项目报名
|
||||
allure_story: 获取项目列表接口
|
||||
case_markers:
|
||||
- gitlink
|
||||
- glcc
|
||||
|
||||
case_info:
|
||||
-
|
||||
id: glcc_get_project_category_list_01
|
||||
title: 获取项目分类列表
|
||||
severity: normal
|
||||
run: True
|
||||
url: /api/project_categories/pinned_index.json
|
||||
method: GET
|
||||
headers:
|
||||
Content-Type": application/json; charset=utf-8;
|
||||
cookies:
|
||||
request_type: params
|
||||
payload:
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assert_sql:
|
||||
extract:
|
||||
type_jsonpath:
|
||||
project_category_names: $.project_categories[*].name
|
||||
@@ -0,0 +1,33 @@
|
||||
case_common:
|
||||
allure_epic: 开源夏令营GLCC
|
||||
allure_feature: 项目报名
|
||||
allure_story: 获取课题奖励方式列表
|
||||
case_markers:
|
||||
- gitlink
|
||||
- glcc
|
||||
|
||||
|
||||
case_info:
|
||||
-
|
||||
id: glcc_get_project_reward_list_01
|
||||
title: 获取课题奖励方式列表
|
||||
severity: normal
|
||||
run: True
|
||||
url: ${glcc_host}/api/glccSettings/settingList
|
||||
method: GET
|
||||
headers:
|
||||
Content-Type": application/json; charset=utf-8;
|
||||
cookies:
|
||||
request_type: params
|
||||
payload:
|
||||
round: 3
|
||||
type: rewardSetting
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assert_sql:
|
||||
extract:
|
||||
type_jsonpath:
|
||||
project_reward_id: $.data[*].id
|
||||
project_money_reward_id: $.data[?(@.value =='现金奖励')].id
|
||||
project_other_reward_ids: $.data[?(@.value !='现金奖励')].id
|
||||
@@ -0,0 +1,115 @@
|
||||
case_common:
|
||||
allure_epic: 开源夏令营GLCC
|
||||
allure_feature: 项目报名
|
||||
allure_story: 导师报名项目
|
||||
case_markers:
|
||||
- glcc
|
||||
- usefixtures: gitlink_login
|
||||
|
||||
common_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 获取项目分类
|
||||
- glcc_get_project_category_list_01
|
||||
# 获取奖励方式
|
||||
- glcc_get_project_reward_list_01
|
||||
|
||||
case_info:
|
||||
-
|
||||
id: glcc_teacher_apply_project_01
|
||||
title: 导师报名项目,报名成功
|
||||
severity: normal
|
||||
run: True
|
||||
url: ${glcc_host}/api/applyInformation/create
|
||||
method: POST
|
||||
headers:
|
||||
Content-Type": application/json; charset=utf-8;
|
||||
cookies:
|
||||
request_type: json
|
||||
payload:
|
||||
round: 3
|
||||
userId: ${env_user_id}
|
||||
userName: ${env_nickname}
|
||||
projectName: ${generate_catch_phrase()}
|
||||
projectType: ${random.choice(${project_category_names})}
|
||||
gitlinkUrl: ${faker.uri()}
|
||||
contactName: ${generate_name(lan='zh')}
|
||||
contactPhone: ${generate_phone(lan='zh')}
|
||||
contactMail: ${generate_email(lan='zh')}
|
||||
projectIntro: ${generate_catch_phrase()}
|
||||
projectLogoId: ${attachment_id}
|
||||
joinCooperativeCommunity: true
|
||||
registrationTaskList:
|
||||
-
|
||||
taskName: ${generate_catch_phrase()}
|
||||
taskUrl: ${faker.uri()}
|
||||
taskDifficulty: ${random.choice([1,2,3])}
|
||||
settingRewardId: ${random.choice(${project_other_reward_ids})}
|
||||
settingRewardRemark: ${generate_catch_phrase()}
|
||||
tutorName: ${generate_name(lan='zh')}
|
||||
tutorPhone: ${generate_phone(lan='zh')}
|
||||
tutorMail: ${generate_email(lan='zh')}
|
||||
tutorAddress: ${generate_address(lan='zh')}
|
||||
taskDesc: ${generate_catch_phrase()}
|
||||
round: 3
|
||||
-
|
||||
taskName: ${generate_catch_phrase()}
|
||||
taskUrl: ${faker.uri()}
|
||||
taskDifficulty: ${random.choice([1,2,3])}
|
||||
settingRewardId: ${random.choice(${project_other_reward_ids})}
|
||||
settingRewardRemark: ${generate_catch_phrase()}
|
||||
tutorName: ${generate_name(lan='zh')}
|
||||
tutorPhone: ${generate_phone(lan='zh')}
|
||||
tutorMail: ${generate_email(lan='zh')}
|
||||
tutorAddress: ${generate_address(lan='zh')}
|
||||
taskDesc: ${generate_catch_phrase()}
|
||||
round: 3
|
||||
-
|
||||
taskName: ${generate_catch_phrase()}
|
||||
taskUrl: ${faker.uri()}
|
||||
taskDifficulty: ${random.choice([1,2,3])}
|
||||
settingRewardId: ${random.choice(${project_other_reward_ids})}
|
||||
settingRewardRemark: ${generate_catch_phrase()}
|
||||
tutorName: ${generate_name(lan='zh')}
|
||||
tutorPhone: ${generate_phone(lan='zh')}
|
||||
tutorMail: ${generate_email(lan='zh')}
|
||||
tutorAddress: ${generate_address(lan='zh')}
|
||||
taskDesc: ${generate_catch_phrase()}
|
||||
round: 3
|
||||
- taskName: ${generate_catch_phrase()}
|
||||
taskUrl: ${faker.uri()}
|
||||
taskDifficulty: ${random.choice([1,2,3])}
|
||||
settingRewardId: ${project_money_reward_id} # 现金奖励
|
||||
settingRewardRemark: ${random.choice([12000,11000,10000,9000,8000,7000,6000])}
|
||||
tutorName: ${generate_name(lan='zh')}
|
||||
tutorPhone: ${generate_phone(lan='zh')}
|
||||
tutorMail: ${generate_email(lan='zh')}
|
||||
tutorAddress: ${generate_address(lan='zh')}
|
||||
taskDesc: ${generate_catch_phrase()}
|
||||
round: 3
|
||||
- taskName: ${generate_catch_phrase()}
|
||||
taskUrl: ${faker.uri()}
|
||||
taskDifficulty: ${random.choice([1,2,3])}
|
||||
settingRewardId: ${project_money_reward_id} # 现金奖励
|
||||
settingRewardRemark: ${random.choice([12000,11000,10000,9000,8000,7000,6000])}
|
||||
tutorName: ${generate_name(lan='zh')}
|
||||
tutorPhone: ${generate_phone(lan='zh')}
|
||||
tutorMail: ${generate_email(lan='zh')}
|
||||
tutorAddress: ${generate_address(lan='zh')}
|
||||
taskDesc: ${generate_catch_phrase()}
|
||||
round: 3
|
||||
files:
|
||||
assert_response:
|
||||
status_code: 200
|
||||
assert_message:
|
||||
message: 断言接口message=success
|
||||
expect_value: success
|
||||
assert_type: ==
|
||||
type_jsonpath: $.message
|
||||
assert_sql:
|
||||
extract:
|
||||
case_dependence:
|
||||
setup:
|
||||
interface:
|
||||
# 上传项目logo,获取logo id
|
||||
- glcc_upload_file_01
|
||||
@@ -0,0 +1,37 @@
|
||||
# 公共参数
|
||||
case_common:
|
||||
allure_epic: 开源夏令营GLCC
|
||||
allure_feature: 项目报名
|
||||
allure_story: 上传文件
|
||||
case_markers:
|
||||
- glcc
|
||||
- upload_file
|
||||
- usefixtures: gitlink_login
|
||||
|
||||
# 用例数据
|
||||
case_info:
|
||||
-
|
||||
id: glcc_upload_file_01
|
||||
title: 上传项目logo
|
||||
severity:
|
||||
run: true
|
||||
url: /api/attachments.json
|
||||
method: POST
|
||||
headers:
|
||||
cookies: ${cookie}
|
||||
Content-Type: application/json; charset=utf-8;
|
||||
cookies:
|
||||
request_type: file
|
||||
payload:
|
||||
files: 31image.png
|
||||
assert_response:
|
||||
status_code: 200
|
||||
asserFileName:
|
||||
message: 断言接口返回的filename
|
||||
expect_value: 30image.png
|
||||
assert_type: ==
|
||||
type_jsonpath: $.title
|
||||
assert_sql:
|
||||
extract:
|
||||
type_jsonpath:
|
||||
attachment_id: $.id
|
||||
@@ -4,7 +4,6 @@ case_common:
|
||||
allure_story: 开通/关闭工作台
|
||||
case_markers:
|
||||
- pms
|
||||
- ok
|
||||
- usefixtures: gitlink_login
|
||||
|
||||
# 前提条件:当前存在gitlink组织,组织已开通工作台
|
||||
|
||||
@@ -4,8 +4,6 @@ case_common:
|
||||
allure_story: 开通/关闭工作台
|
||||
case_markers:
|
||||
- pms
|
||||
- debug
|
||||
- ok
|
||||
- usefixtures: gitlink_login
|
||||
|
||||
# 前提条件:当前存在gitlink组织,组织未开通工作台
|
||||
|
||||
@@ -45,6 +45,12 @@ class FakerData:
|
||||
# 生成并返回随机整数
|
||||
return random.randint(min_val, max_val)
|
||||
|
||||
def generate_catch_phrase(self):
|
||||
"""
|
||||
:return: 生成妙句(口号) (输出结果都是英文)
|
||||
"""
|
||||
return self.faker.catch_phrase()
|
||||
|
||||
def generate_phone(self, lan="en") -> int:
|
||||
"""
|
||||
:return: 随机生成手机号码
|
||||
@@ -215,6 +221,17 @@ class FakerData:
|
||||
|
||||
return faker.province()
|
||||
|
||||
def generate_address(self, lan="en") -> str:
|
||||
"""
|
||||
|
||||
:return: 生成地址
|
||||
"""
|
||||
if lan == "zh":
|
||||
address = self.fk_zh.address()
|
||||
else:
|
||||
address = self.faker.address()
|
||||
return address
|
||||
|
||||
@classmethod
|
||||
def generate_time(cls, fmt='%Y-%m-%d %H:%M:%S') -> str:
|
||||
"""
|
||||
|
||||
@@ -28,10 +28,9 @@ def get_api_data(api_file_path: str, key: str = None):
|
||||
api_data = []
|
||||
if os.path.isdir(api_file_path):
|
||||
logger.debug(f"目标路径是一个目录:{api_file_path}")
|
||||
api_files = get_files(target=api_file_path, end=".yaml")
|
||||
api_files = get_files(target=api_file_path, end=".yaml") + get_files(target=api_file_path, end=".yml")
|
||||
for api_file in api_files:
|
||||
api_data.append(YamlHandle(filename=api_file).read_yaml)
|
||||
|
||||
elif os.path.isfile(api_file_path):
|
||||
logger.debug(f"目标路径是一个文件:{api_file_path}")
|
||||
api_data.append(YamlHandle(filename=api_file_path).read_yaml)
|
||||
|
||||
Reference in New Issue
Block a user