问题描述
有人能写一个例子来说明如何查询(过滤)测试计划的所有测试用例吗?
我在 rpc 中找不到测试用例和测试计划之间的关系。
from tcms_api import TCMS
rpc_client = TCMS()
for test_case in rpc_client.exec.TestCase.filter({'pk': 1}):
print(test_case)
解决方法
我找到了这个解决方案。
from tcms_api import TCMS
import json
rpc_client = TCMS()
print(" *** Plans & cases *** ")
for test_plan in rpc_client.exec.TestPlan.filter():
print(test_plan['id'],"[",test_plan['name'],"]",test_plan['type__name'],test_plan['product__name'],test_plan['product_version__value'])
for test_case in rpc_client.exec.TestCase.filter({"plan":test_plan['id']}):
print(" ",test_case['id'],test_case['summary'],test_case['case_status__name'])
print(" *** Run & executions *** ")
for run_plan in rpc_client.exec.TestRun.filter({}):
print(run_plan['id'],run_plan['summary'],run_plan['plan__name'])
for exec_plan in rpc_client.exec.TestExecution.filter({"run_id":run_plan['id']}):
print(" ",exec_plan['id'],exec_plan['case__summary'],exec_plan['status__name'])
,
我在 rpc 中找不到测试用例和测试计划之间的关系。
因为它们之间的关系不在RPC层,而是在ORM(数据库)层。作为 ORM 查询的瘦包装器的 API 没有明确记录所有字段/查找,因为这已在 Django 和源代码本身中记录: https://kiwitcms.readthedocs.io/en/latest/modules/tcms.rpc.api.html#how-does-the-rpc-interface-work
UI 也是一个独立的 API 客户端,您也可以探索它以获取提示。
获取给定测试用例的所有测试计划:
TestPlan.filter({"cases":10260})
获取给定测试计划的所有测试用例:
TestCase.filter({"plan": 1234})
此答案由 Kiwi TCMS 团队成员提供给您。如果您觉得有用,请考虑通过 https://opencollective.com/kiwitcms#category-CONTRIBUTE
的小额捐款帮助社区