def listTestProjects():
projects = tlc.getProjects()
# print(projects)
for p in projects:
if p['active']=='1':
print (p["id"], p["name"])
return projects
#根据前缀获取需要的测试项目
def getTestProject(projectPrefix):
projects = tlc.getProjects()
for p in projects:
if p['prefix']==projectPrefix:
print ("Find project ", p['name'])
return p
return None
#展示所有测试套件
def listTestSuite(project):
top_suites = tlc.getFirstLevelTestSuitesForTestProject(project["id"])
# print(top_suites)
for suite in top_suites:
print (suite["id"], suite["name"])
#根据测试项目id获取所有活动(active)的测试计划
def get_test_plan(project_id):
test_plans = tlc.getProjectTestPlans(project_id)
for t in test_plans:
if t['active'] == '1':
print(t['id'],t['name'])
return t
# print(test_plans)
return None
#根据测试计划id获取测试用例
def get_test_case(test_plan_id):
test_cases = tlc.getTestCasesForTestPlan(test_plan_id)
test_case_id = []
for c in test_cases:
test_case_id.append(c)
return test_case_id
#根据测试用例id获取附件信息并保存文件到对应目录
def get_testcase_attachments(caseid):
scripts_dir = os.path.join(os.path.dirname(os.getcwd()),'test_scripts')
if not os.path.exists(scripts_dir):
os.makedirs(scripts_dir)
atts = tlc.getTestCaseAttachments(testcaseid=caseid)
for att in atts:
scripts_name =os.path.join(scripts_dir,atts[att]['name'])
if scripts_name.split('.')[1] == 'py':
with open(scripts_name,'w',encoding='utf-8') as f:
decodeds = base64.b64decode(atts[att]['content'])
f.write(decodeds.decode('utf-8'))