mirror of
https://github.com/Telecominfraproject/wlan-lanforge-scripts.git
synced 2025-11-01 11:18:03 +00:00
testrails: Allow submitting externally generated test results into testrails.
This way, some other tool (ie, LANforge performance & stability tests automation) can create results that can be put into testrails. This external automation will not need direct access to test rails (user-account info, etc) Code is not tested, plz comment out if it breaks something.
This commit is contained in:
@@ -17,6 +17,13 @@ import paramiko
|
||||
from scp import SCPClient
|
||||
import pprint
|
||||
from pprint import pprint
|
||||
from os import listdir
|
||||
import re
|
||||
|
||||
# For finding files
|
||||
# https://stackoverflow.com/questions/3207219/how-do-i-list-all-files-of-a-directory
|
||||
import glob
|
||||
external_results_dir=/var/tmp/lanforge
|
||||
|
||||
local_dir=os.getenv('LOG_DIR')
|
||||
print("Local Directory where all files will be copied and logged", local_dir)
|
||||
@@ -388,6 +395,48 @@ class RunTest:
|
||||
client.update_testrail(case_id=941, run_id=rid, status_id=5,
|
||||
msg='client connectivity to 5GHZ OPEN SSID is Failed')
|
||||
|
||||
# Check for externally run test case results.
|
||||
def TestCase_LF_External(self, rid):
|
||||
#https://stackoverflow.com/questions/3207219/how-do-i-list-all-files-of-a-directory
|
||||
results = glob.glob("%s/*_CICD_RESULTS.txt"%external_results_dir)
|
||||
for r in results:
|
||||
rfile = open(r, 'r')
|
||||
lines = rfile.readlines()
|
||||
|
||||
# File contents looks something like:
|
||||
#CASE_ID 9999
|
||||
#RUN_ID 15
|
||||
#STATUS 1
|
||||
#MSG Test passed nicely
|
||||
#MSG Build ID: deadbeef
|
||||
#MSG Results: http://cicd.telecominfraproject.com
|
||||
|
||||
_case_id = -1
|
||||
_status_id = 1 # Default to pass
|
||||
_msg = ""
|
||||
_rid = rid
|
||||
|
||||
for line in Lines:
|
||||
m = re.search(r'(\S+) (.*)', line)
|
||||
k = m.group(0);
|
||||
v = m.group(1);
|
||||
|
||||
if k == "CASE_ID":
|
||||
_case_id = v
|
||||
if k == "RUN_ID":
|
||||
_rid = v
|
||||
if k == "STATUS":
|
||||
_status_id = v
|
||||
if k == "MSG":
|
||||
if _msg == "":
|
||||
_msg == v
|
||||
else:
|
||||
_msg += "\n"
|
||||
_msg += v
|
||||
if _case_id != -1:
|
||||
client.update_testrail(case_id=_case_id, run_id=_rid, status_id=_status_id, msg=_msg)
|
||||
os.unlink(r)
|
||||
|
||||
def TestCase_939(self, rid):
|
||||
''' Client Count in MQTT Log'''
|
||||
try:
|
||||
|
||||
Reference in New Issue
Block a user