新增Report接口测试新方法

This commit is contained in:
byb11
2021-04-12 11:21:10 +08:00
parent 7b6c89d4a2
commit 213d280dc9
2 changed files with 35 additions and 21 deletions

View File

@@ -7,14 +7,14 @@ Resource ../../../03-Variable/BifangApiVariable.txt
Library ../../../04-CustomLibrary/Custometest/ReportSchema.py Library ../../../04-CustomLibrary/Custometest/ReportSchema.py
*** Variables *** *** Variables ***
${dataset_url} /${version}/report/dataset # ${dataset_url} /${version}/report/dataset
${datasetId} ${EMPTY} # ${datasetId} ${EMPTY}
${reportId} ${EMPTY} # ${reportId} ${EMPTY}
${report_url} /${version}/report/offlinejob # ${report_url} /${version}/report/offlinejob
${chartId} ${EMPTY} # ${chartId} ${EMPTY}
${chart_url} /${version}/report/chart # ${chart_url} /${version}/report/chart
${result_url} /${version}/report/offlinejob/result # ${result_url} /${version}/report/offlinejob/result
${resultId} ${EMPTY} # ${resultId} ${EMPTY}
# ${logtype} Set Variable security_event_log # ${logtype} Set Variable security_event_log
# ${schemaurl} Set Variable http://${host}:${port}/${version}/log/schema?logType=${logtype} # ${schemaurl} Set Variable http://${host}:${port}/${version}/log/schema?logType=${logtype}
# ${dataset_url} Set Variable http://${host}:${port}/${version}/report/dataset # ${dataset_url} Set Variable http://${host}:${port}/${version}/report/dataset
@@ -302,4 +302,15 @@ ReportVoipRecordsHaving
${report_url} Set Variable http://${host}:${port}/${version}/report/offlinejob ${report_url} Set Variable http://${host}:${port}/${version}/report/offlinejob
${dataset_geturl} Set Variable ${dataset_url}?pageSize=20&pageNo=1&id=&name=${TEST NAME}&logType=&opStartTime=&opEndTime=&opUser= ${dataset_geturl} Set Variable ${dataset_url}?pageSize=20&pageNo=1&id=&name=${TEST NAME}&logType=&opStartTime=&opEndTime=&opUser=
${char_geturl} Set Variable ${char_url}?pageSize=20&pageNo=1&id=&name=${TEST NAME}&opUser= ${char_geturl} Set Variable ${char_url}?pageSize=20&pageNo=1&id=&name=${TEST NAME}&opUser=
ReportInterfaceTest ${schemaurl} ${token} ${dataset_url} ${char_url} ${report_url} ${dataset_geturl} ${char_geturl} ${TEST NAME} ${logtype} ${testpoint} ReportInterfaceTest ${schemaurl} ${token} ${dataset_url} ${char_url} ${report_url} ${dataset_geturl} ${char_geturl} ${TEST NAME} ${logtype} ${testpoint}
#纯接口测试调用新方法循环执行
# ReportInterfaceTest
# log 11111111111111111111
# ${testpointlist} create list GroupBy DataBindings Filter Having
# ${logtypelist} create list security_event_log proxy_event_log connection_record_log radius_record_log voip_record_log
# ${dataseturl} Set Variable http://${host}:${port}/${version}/report/dataset
# ${char_url} Set Variable http://${host}:${port}/${version}/report/chart
# ${report_url} Set Variable http://${host}:${port}/${version}/report/offlinejob
# ReportTest ${host} ${token} ${dataseturl} ${char_url} ${report_url} ${logtypelist} ${testpointlist}

View File

@@ -49,7 +49,6 @@ def groupby(schemajson,logtype,testpoint):
#取出group值得列表 #取出group值得列表
dimensions=schemajson["data"]["doc"]["schema_query"]["dimensions"] dimensions=schemajson["data"]["doc"]["schema_query"]["dimensions"]
dimensions.append("common_recv_time"); dimensions.append("common_recv_time");
# print(dimensions)
randomstr_1=[] randomstr_1=[]
if testpoint == "GroupBy": if testpoint == "GroupBy":
randomstr_1=dimensions randomstr_1=dimensions
@@ -103,6 +102,7 @@ def DataBindings(schemajson,randomstr_1,testpoint):
randomstr_4={"name":i,"expression":randomlist[0]} randomstr_4={"name":i,"expression":randomlist[0]}
qul.append(randomstr_4) qul.append(randomstr_4)
print("DataBindings",qul)
return qul return qul
# #去除a列表中存在的b的元素 # #去除a列表中存在的b的元素
@@ -129,10 +129,6 @@ def filterCondition(schemajson,testpoint):
list1=schemafilters list1=schemafilters
else: else:
list1= random.sample(schemafilters,3) list1= random.sample(schemafilters,3)
print("条件列表",list1)
print("number",number)
print("randomstr",randomstr)
print("str(number)",str(number))
#获取不同属性支持的部不同操作 #获取不同属性支持的部不同操作
fields = schemajson["data"]["fields"] fields = schemajson["data"]["fields"]
operator = schemajson["data"]["doc"]["schema_query"]["references"]["operator"] operator = schemajson["data"]["doc"]["schema_query"]["references"]["operator"]
@@ -274,7 +270,7 @@ def filterCondition(schemajson,testpoint):
orConditions={"orConditions":orConditions_list} orConditions={"orConditions":orConditions_list}
andConditions.append(orConditions) andConditions.append(orConditions)
filterCondition={"andConditions":andConditions} filterCondition={"andConditions":andConditions}
print(filterCondition) print("filterCondition",filterCondition)
return filterCondition return filterCondition
#获取having条件的串 #获取having条件的串
@@ -311,7 +307,7 @@ def havingjson(schemajson,testpoint):
orConditions={"orConditions":orConditions_list} orConditions={"orConditions":orConditions_list}
andConditions_list.append(orConditions) andConditions_list.append(orConditions)
havingCondition={"andConditions":andConditions_list} havingCondition={"andConditions":andConditions_list}
print(havingCondition) print("having",havingCondition)
return havingCondition return havingCondition
#拼接字符串 #拼接字符串
@@ -334,7 +330,7 @@ def datasetjson(schemauerl,token,testname,logtype,testpoint):
} }
} }
print(datasetdict) print(datasetdict)
print(json.dumps(datasetdict)) print("datasetjson",json.dumps(datasetdict))
return json.dumps(datasetdict) return json.dumps(datasetdict)
#拼接char的json串 #拼接char的json串
@@ -467,7 +463,7 @@ def charjson(schemaurl,token,queryColumnList,groupColumnList,datasetid,testname,
"columns": columnslist "columns": columnslist
} }
chardict={"list": listdict} chardict={"list": listdict}
print(json.dumps(chardict)) print("charjson",json.dumps(chardict))
return json.dumps(chardict) return json.dumps(chardict)
def Reportsjson(chartId,testname): def Reportsjson(chartId,testname):
@@ -495,7 +491,7 @@ def Reportsjson(chartId,testname):
"isDisplayTrafficTrend": 1 "isDisplayTrafficTrend": 1
} }
reportJobdct_2={"reportJobList": reportJobdct_1} reportJobdct_2={"reportJobList": reportJobdct_1}
print(json.dumps(reportJobdct_2)) print("reportjson",json.dumps(reportJobdct_2))
return json.dumps(reportJobdct_2) return json.dumps(reportJobdct_2)
def ReportInterfaceTest(schemaurl,token,dataseturl,charurl,repporturl,datasetgeturl,chargeturl,testname,logtype,testpoint): def ReportInterfaceTest(schemaurl,token,dataseturl,charurl,repporturl,datasetgeturl,chargeturl,testname,logtype,testpoint):
@@ -533,8 +529,15 @@ def ReportInterfaceTest(schemaurl,token,dataseturl,charurl,repporturl,datasetget
assert code == 200 assert code == 200
#循环调用ReportInterfaceTest方法
def ReportTest(host,token,dataseturl,charurl,repporturl,logtypelist,testpointlist):
for logtype in logtypelist:
for testpoint in testpointlist:
testname="Report"+logtype+testpoint
datasetgeturl=dataseturl+"?pageSize=20&pageNo=1&id=&name="+testname+"&logType=&opStartTime=&opEndTime=&opUser="
chargeturl=charurl+"?pageSize=20&pageNo=1&id=&name="+testname+"&opUser="
schemaurl="http://"+host+":8080/v1/log/schema?logType="+logtype
ReportInterfaceTest(schemaurl,token,dataseturl,charurl,repporturl,datasetgeturl,chargeturl,testname,logtype,testpoint)