python模塊學習之testlink (自動回寫測試案例執行結果到testlink)


安裝

pip install TestLink-API-Python-client  
#!/usr/bin/env Python
# -*- coding: utf-8 -*-
'''
Created on 2018年4月2日

@author: Brenda
'''

import testlink
from com.pingan.test.util.config import Config

url = 'http://tm.paic.com.cn/testlink/lib/api/xmlrpc/v1/xmlrpc.php'
key = 'a04a27098jnkkmeemme'
test_project_name = 'NTS-CFB-AMS'  #testlink上的測試計划名稱
   
def set_testlink_result(case_id):
    ''' 
    @param case_id: 測試案例ID
    @return: 
    '''
    def _deco(func):
        def _func(self):
                try:
                    func(self)                    
                    report_test_result(case_id, 'p')
                except:
                    report_test_result(case_id, 'f')
                    raise
        return _func
    return _deco

def report_test_result(test_case_id, test_result):
    '''
    @param test_case_id: 測試案例ID
    @param test_result: 測試結果 pass、failed
    @return: 
    '''
    test_case_id = str(test_case_id)
    test_case_id = test_case_id.replace(',', ',')
    case_id_list = test_case_id.split(',')
    #Config.set_test_plan_name('XXX版本回歸測試')
    if Config.test_plan_name == None:
        pass
    else:
        for case_id in case_id_list:
            tlc = testlink.TestlinkAPIClient(url, key)
            test_plan = tlc.getTestPlanByName(test_project_name, Config.test_plan_name)
            
            if len(test_plan):
                if isinstance(test_plan[0], dict):
                    test_plan_id = test_plan[0]['id']
#                     print test_plan, str(test_plan_id) 
                    response = tlc.getBuildsForTestPlan(test_plan_id)
                    build_name = response[0]['name']
                    tlc.reportTCResult(testcaseid=case_id, testplanid=test_plan_id, buildname=build_name, status=test_result,notes='')
    #                 print res[0]['operation'], res[0]['message']


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM