# 上传测试用例
# 简要描述
- 上传测试用例接口。接口后台会执行用例分析操作,耗时较长,请适当增大请求timeout参数(建议设置为30s)。注意用例需要打包为zip文件。
# 请求URL
https://minitest.weixin.qq.com/thirdapi/case/upload
# 请求方式
- POST
# 参数
参数名 | 必选 | 类型 | 说明 |
---|---|---|---|
token | 是 | string | 可以从页面右上角头像右侧下拉菜单中的 “我的信息” 获取 |
group_en_id | 是 | string | 项目英文ID,可在 项目管理/产品管理 页面获取 |
test_type | 否 | integer | Minium用例包传2,录制回放用例包传3,不传默认为Minium用例 |
file | 是 | FileStorage | case用例文件,.zip包 |
# Python请求实例代码
data = {
'token': xxx,
'group_en_id': xxx,
'test_type': 2, # 2 Minium;3 录制回放
}
case_files = {'file': open('${path_to_the_.zip}', 'rb')}
resp = requests.post(url='https://minitest.weixin.qq.com/thirdapi/case/upload', data=data, files=case_files, timeout=30)
# 返回示例
{
"data": null,
"msg": "ok",
"rtn": 0,
"timestamp": 1614861228.1035924
}
# 下载测试用例
# 简要描述
- 下载测试用例接口
# 请求URL
https://minitest.weixin.qq.com/thirdapi/case/download
# 请求方式
- GET
# 参数
参数名 | 必选 | 类型 | 说明 |
---|---|---|---|
token | 是 | string | 可以从页面右上角头像右侧下拉菜单中的 “我的信息” 获取 |
group_en_id | 是 | string | 项目英文ID,可在 项目管理/产品管理 页面获取 |
test_type | 是 | integer | Minium用例包传2,录制回放用例包传3,不传默认为Minium用例 |
# Python请求实例代码
import requests
params = {
'token': 'xxx',
'group_en_id': 'xxx',
'test_type': 3, # 2 Minium;3 录制回放
}
req = requests.get('https://minitest.weixin.qq.com/thirdapi/case/download', params=params, timeout=30)
with open('case.zip', 'wb') as f:
f.write(req.content)
# 返回示例
将返回的内容直接写入到zip文件包中
# 删除测试用例文件
# 简要描述
- 删除测试用例文件,只支持minium
# 请求URL
https://minitest.weixin.qq.com/thirdapi/case/api/case_file
# 请求方式
- DELETE
# 参数
参数名 | 必选 | 类型 | 说明 |
---|---|---|---|
token | 是 | string | 可以从页面右上角头像右侧下拉菜单中的 “我的信息” 获取 |
group_en_id | 是 | string | 项目英文ID,可在 项目管理/产品管理 页面获取 |
file_path | 是 | string | 文件路径 |
# Python请求实例代码
import requests
params = {
'token': 'xxx',
'group_en_id': 'xxx',
'file_path': "test/first_test.py", # 删除文件的路径
}
req = requests.delete('https://minitest.weixin.qq.com/thirdapi/case/api/case_file', params=params, timeout=30)
print(req.json().get('msg'))
# 返回示例
返回值rtn
为0表示删除成功,不为0表示删除失败,失败的原因在msg
中体现
{
"msg": "delete file success",
"rtn": 0,
"timestamp": 1614861228.1035924
}
# 查看所有Minium用例
# 简要描述
查看所有Minium用例
# 请求URL
https://minitest.weixin.qq.com/thirdapi/minium_case_list
# 请求方式
- GET
# 参数
参数名 | 必选 | 类型 | 说明 |
---|---|---|---|
token | 是 | string | 可以从页面右上角头像右侧下拉菜单中的 “我的信息” 获取 |
group_en_id | 是 | string | 项目英文ID,可在 项目管理/产品管理 页面获取 |
# 返回示例
返回值rtn
为0表示删除成功,不为0表示删除失败,失败的原因在msg
中体现
{
"data": {
"pkg_to_case_list": {
"xx.xx": [
"test_1",
"test_2"
]
},
"total_case_num": 10
},
"rtn": 0
}
# 对接上传测试计划接口
如果需要将查询的用例列表,利用API接口新建测试计划,稍微转换一下格式即可。示例代码如下:
# Python示例代码
import requests
import json
params = {
'token': 'xxx', # 换成自己的token
'group_en_id': 'xxx', # 换成项目的token
}
resp = requests.get('https://minitest.weixin.qq.com/thirdapi/minium_case_list', params=params)
test_plan = resp.json().get("data", {}).get("pkg_to_case_list", {}) # 获取minium用例
test_plan_config = {'pkg_list': []} # 组成测试计划
for each_pkg, each_cases in test_plan.items():
# 示例中全部用例都加入了测试计划。这里可根据项目自身情况调整
test_plan_config['pkg_list'].append({
'case_list': each_cases,
'pkg': each_pkg,
})
data = {
'token': 'xxx', # 换成自己的token
'group_en_id': 'xxx', # 换成项目的token
'test_plan_name': 'api自定义Minium', # 测试计划名称
'test_plan_config': json.dumps(test_plan_config)
}
# 提交新建测试计划API
resp = requests.post(url='https://minitest.weixin.qq.com/thirdapi/case_plan', json=data)
print(resp.text)
# 查看所有录制回放用例
# 简要描述
查看所有录制回放用例
# 请求URL
https://minitest.weixin.qq.com/thirdapi/replay_case_list
# 请求方式
- GET
# 参数
参数名 | 必选 | 类型 | 说明 |
---|---|---|---|
token | 是 | string | 可以从页面右上角头像右侧下拉菜单中的 “我的信息” 获取 |
group_en_id | 是 | string | 项目英文ID,可在 项目管理/产品管理 页面获取 |
# 返回示例
返回值rtn
为0表示删除成功,不为0表示删除失败,失败的原因在msg
中体现
{
"data": {
"account_to_case_list": {
"xx": [
{"case_name": "xx1"},
{"case_name": "xx2"}
]
},
"total_case_num": 10
},
"rtn": 0