提交 日志接口关键字

This commit is contained in:
lyf
2021-03-25 09:37:02 +08:00
parent 7eeceed5c7
commit e987c67721
4 changed files with 488 additions and 300 deletions

View File

@@ -1,50 +1,52 @@
*** Settings ***
Library Collections
Library RequestsLibrary
Resource ../../03-Variable/BifangApiVariable.txt
*** Keywords ***
Post-Request
[Arguments] ${url} ${data}
${header} Create Dictionary Content-Type=application/json Authorization=${token}
Create Session api http://${host}:${port} headers=${header}
${remoteResponse} Post Request api ${url} data=${data} headers=${header}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
[Return] ${response}
Get-Request
[Arguments] ${url}
${header} Create Dictionary Content-Type=application/json Authorization=${token}
Create Session api http://${host}:${port} headers=${header}
${remoteResponse} Get Request api ${url} headers=${header}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
[Return] ${response}
Delete-Request
[Arguments] ${url} ${data}
${header} Create Dictionary Content-Type=application/json Authorization=${token}
Create Session api http://${host}:${port} headers=${header}
${remoteResponse} Delete Request api ${url} data=${data} headers=${header}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
[Return] ${response}
UpFilePostRequest
[Arguments] ${url} ${data} ${files} ${fileDesc}
${header} Set To Dictionary ${fileDesc} Authorization=${token}
Create Session api http://${host}:${port} headers=${header}
${remoteResponse} Post Request api ${url} data=${data} files=${files} headers=${header}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
[Return] ${response}
UpFilePutRequest
[Arguments] ${url} ${data} ${files} ${fileDesc}
${header} Set To Dictionary ${fileDesc} Authorization=${token}
Create Session api http://${host}:${port} headers=${header}
${remoteResponse} Put Request api ${url} params=${data} files=${files} headers=${header}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
[Return] ${response}
*** Settings ***
Library Collections
Library json
Library RequestsLibrary
Resource ../../03-Variable/BifangApiVariable.txt
*** Keywords ***
Post-Request
[Arguments] ${url} ${data}
${header} Create Dictionary Content-Type=application/json Authorization=${token}
Create Session api http://${host}:${port} headers=${header}
#${data1} json.dumps ${data}
${remoteResponse} Post Request api ${url} data=${data} headers=${header}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
[Return] ${response}
Get-Request
[Arguments] ${url}
${header} Create Dictionary Content-Type=application/json Authorization=${token}
Create Session api http://${host}:${port} headers=${header}
${remoteResponse} Get Request api ${url} headers=${header}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
[Return] ${response}
Delete-Request
[Arguments] ${url} ${data}
${header} Create Dictionary Content-Type=application/json Authorization=${token}
Create Session api http://${host}:${port} headers=${header}
${remoteResponse} Delete Request api ${url} data=${data} headers=${header}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
[Return] ${response}
UpFilePostRequest
[Arguments] ${url} ${data} ${files} ${fileDesc}
${header} Set To Dictionary ${fileDesc} Authorization=${token}
Create Session api http://${host}:${port} headers=${header}
${remoteResponse} Post Request api ${url} data=${data} files=${files} headers=${header}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
[Return] ${response}
UpFilePutRequest
[Arguments] ${url} ${data} ${files} ${fileDesc}
${header} Set To Dictionary ${fileDesc} Authorization=${token}
Create Session api http://${host}:${port} headers=${header}
${remoteResponse} Put Request api ${url} params=${data} files=${files} headers=${header}
${response} to json ${remoteResponse.content}
Should Be Equal As Strings ${remoteResponse.status_code} 200
[Return] ${response}

View File

@@ -1,231 +1,231 @@
*** Settings ***
Resource ../../03-Variable/BifangApiVariable.txt
Library REST http://${host}:${port}
Library Collections
Library RequestsLibrary
Library json
*** Keywords ***
ManageApistr
[Documentation]
... 描述入口apistr 为调用api地址
... 本关键字的作用是判断地址前有没有加版本号,如果没有加上
... policy/compile -> /v1/policy/compile
... /policy/compile -> /v1/policy/compile
... v1/policy/compile -> /v1/policy/compile
... /v1/policy/compile -> /v1/policy/compile
[Arguments] ${apistr}
${apiStart} Evaluate '${apistr}'[0:1]
${apiStart1} Evaluate '${apistr}'[0:2]
${apistr} Run Keyword If "${apiStart}"!="/" and "${apiStart}"!="v"
... Set Variable /${version}/${apistr}
... ELSE IF "${apiStart}"=="/" and "${apiStart1}"!="/v"
... Set Variable /${version}${apistr}
... ELSE IF "${apiStart}"=="v" Set Variable /${apistr}
... ELSE IF "${apiStart1}"=="/v" Set Variable ${apistr}
... ELSE Set Variable ${apistr}
log ${apistr}
[Return] ${apistr}
BasePostRequest
[Arguments] ${apistr} ${body}
Set Headers {"Authorization":"${token}","Content-Type":"application/json"}
log 111111111111111111111111${apistr}
&{httpResponse} Post ${apistr} ${body}
#Output response body
Object response body
#Integer $.code 200
#Array $.data.policyList
${response} Set Variable ${httpResponse.body}
[Return] ${response}
BasePostRequestOK
[Arguments] ${apistr} ${body}
${response} BasePostRequest ${apistr} ${body}
log ${response['code']}
Should Be Equal As Strings ${response['code']} 200
[Return] ${response}
BasePostRequestForV2
[Arguments] ${requestUri} ${data} ${apiVersion}
${headers} set variable {"Authorization":"${token}","Content-Type":"application/json"}
create session api http://${host}:${port}/${apiVersion} ${headers}
${response}= Post Request api ${requestUri} data=${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}
BaseGetRequest
[Arguments] ${apistr} ${body}
Set Headers {"Authorization":"${token}","Content-Type":"application/json"}
&{httpResponse} Get ${apistr}?${body}
#Output response body
Object response body
#Integer $.code 200
#Array $.data.policyList
${response} Set Variable ${httpResponse.body}
[Return] ${response}
BaseGetRequestOK
[Arguments] ${apistr} ${body}
${response} BaseGetRequest ${apistr} ${body}
log ${response['code']}
Should Be Equal As Strings ${response['code']} 200
[Return] ${response}
BaseGetRequestForV2
[Arguments] ${requestUri} ${data} ${apiVersion}
${headers} set variable {"Authorization":"${token}","Content-Type":"application/json"}
create session api http://${host}:${port}/${apiVersion} ${headers}
${response}= Get Request api ${requestUri}?${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}
BaseDeleteRequest
[Arguments] ${requestUri} ${data}
${headers} set variable {"Authorization":"${token}","Content-Type":"application/json"}
create session api http://${host}:${port} ${headers}
${response}= Delete Request api ${requestUri} data=${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}
BaseDeleteRequestOK
[Arguments] ${apistr} ${body}
${response} BaseDeleteRequest ${apistr} ${body}
log ${response['code']}
Should Be Equal As Strings ${response['code']} 200
[Return] ${response}
BaseEditRequest
[Arguments] ${requestUri} ${data}
${headers} set variable {"Authorization":"${token}","Content-Type":"application/json"}
create session api http://${host}:${port} ${headers}
${response}= Put Request api ${requestUri} data=${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}
BaseEditRequestOK
[Arguments] ${apistr} ${body}
${response} BaseEditRequest ${apistr} ${body}
log ${response['code']}
Should Be Equal As Strings ${response['code']} 200
[Return] ${response}
BaseEditRequestForV2
[Arguments] ${requestUri} ${data} ${apiVersion}
${apiStart} Evaluate '${requestUri}'[0:1]
${requestUri} Run Keyword If "${apiStart}"=="/" set variable /${apiVersion}${requestUri}
... ELSE set variable /${apiVersion}/${requestUri}
${response} BaseEditRequest ${requestUri} ${data}
[Return] ${response}
#拼接字典类型数据为get请求的字符串
Dictionary-To-QueryParams
[Documentation]
... 接收get参数字典转换为请求字符串
[Arguments] ${params}
${paramsString} = Set Variable ${EMPTY}
Run Keyword And Return If "${params}" == "${EMPTY}" Set Variable ${EMPTY}
FOR ${key} IN @{params}
${value} = Get From Dictionary ${params} ${key}
${paramStr} = Catenate SEPARATOR=\= ${key} ${value}
${len} = Get Length ${paramsString}
${paramsString} = Run Keyword If ${len} != 0 Catenate SEPARATOR=& ${paramsString} ${paramStr}
... ELSE Set Variable ${paramStr}
END
Log To Console ${paramsString}
[Return] ${paramsString}
BaseFormRequest
[Arguments] ${requestUri} ${data} ${apiVersion}
${headers} set variable {"Authorization":"${token}","Content-Type":"application/x-www-form-urlencoded"}
create session api http://${host}:${port}/${apiVersion} ${headers}
${response} Run Keyword If "${data}"=="${EMPTY}" Get Request api ${requestUri}
... ELSE Get Request api ${requestUri}?${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}
BaseFormRequest1
[Documentation]
... 下载文件专用
... 由于下载的json存在特殊字符
... 隐藏需要设置response.encoding='utf-8-sig'
[Arguments] ${requestUri} ${data} ${apiVersion}
${headers} set variable {"Authorization":"${token}","Content-Type":"application/x-www-form-urlencoded"}
create session api http://${host}:${port}/${apiVersion} ${headers}
${response} Run Keyword If "${data}"=="${EMPTY}" Get Request api ${requestUri}
... ELSE Get Request api ${requestUri}?${data}
log return data =${response}
${response.encoding} set variable utf-8-sig
Should Be Equal As Strings ${response.status_code} 200
${response} json.Loads ${response.content}
[Return] ${response}
BaseMultipartPostRequest
[Arguments] ${requestUri} ${data} ${files} ${apiVersion}
${headers} set variable {"Authorization":"${token}"}
${dataString} Dictionary-To-QueryParams ${data}
create session api http://${host}:${port}/${apiVersion} ${headers}
${response}= Post Request api ${requestUri}?${dataString} files=${files}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}
BasePostRequestReturnBinary
[Documentation]
... 下载文件专用
... 返回二进制数据
[Arguments] ${requestUri} ${data} ${apiVersion}
Log Call BasePostRequestReturnBinary
${headers} set variable {"Authorization":"${token}","Content-Type":"application/json"}
create session api http://${host}:${port}/${apiVersion} ${headers}
Log ${data}
${response} Post Request api ${requestUri} data=${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
[Return] ${response.content}
BaseGetRequestReturnBinary
[Documentation]
... 下载文件专用
... 返回二进制数据
[Arguments] ${requestUri} ${data} ${apiVersion}
Log Call BasePostRequestReturnBinary
${headers} set variable {"Authorization":"${token}","Content-Type":"application/json"}
${dataString} Dictionary-To-QueryParams ${data}
create session api http://${host}:${port}/${apiVersion} ${headers}
Log ${data}
${response} Get Request api ${requestUri}?${dataString}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
[Return] ${response.content}
BaseFormEditRequest
[Arguments] ${requestUri} ${data} ${apiVersion}
${headers} set variable {"Authorization":"${token}","Content-Type":"application/x-www-form-urlencoded"}
create session api http://${host}:${port}/${apiVersion} ${headers}
${response}= Put Request api ${requestUri} data=${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}
BaseFormPostRequest
[Arguments] ${requestUri} ${data} ${apiVersion}
${headers} set variable {"Authorization":"${token}","Content-Type":"application/x-www-form-urlencoded"}
create session api http://${host}:${port}/${apiVersion} ${headers}
${response}= Post Request api ${requestUri} data=${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}
OamRequest
[Arguments] ${requestUri} ${path} ${method} ${contentType} ${data}
${headers} set variable {"Authorization":"${token}","Content-Type":"${contentType}","path":"${path}"}
create session api http://${host}:${port} ${headers}
${response} Run Keyword If "${method}" == "GET" Get Request api ${requestUri}?${data}
... ELSE IF "${method}" == "POST" Post Request api ${requestUri} data=${data}
... ELSE IF "${method}" == "PUT" Put Request api ${requestUri} data=${data}
... ELSE IF "${method}" == "DELETE" Delete Request api ${requestUri} data=${data}
... ELSE Set Variable ${EMPTY}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
*** Settings ***
Resource ../../03-Variable/BifangApiVariable.txt
Library REST http://${host}:${port}
Library Collections
Library RequestsLibrary
Library json
*** Keywords ***
ManageApistr
[Documentation]
... 描述入口apistr 为调用api地址
... 本关键字的作用是判断地址前有没有加版本号,如果没有加上
... policy/compile -> /v1/policy/compile
... /policy/compile -> /v1/policy/compile
... v1/policy/compile -> /v1/policy/compile
... /v1/policy/compile -> /v1/policy/compile
[Arguments] ${apistr}
${apiStart} Evaluate '${apistr}'[0:1]
${apiStart1} Evaluate '${apistr}'[0:2]
${apistr} Run Keyword If "${apiStart}"!="/" and "${apiStart}"!="v"
... Set Variable /${version}/${apistr}
... ELSE IF "${apiStart}"=="/" and "${apiStart1}"!="/v"
... Set Variable /${version}${apistr}
... ELSE IF "${apiStart}"=="v" Set Variable /${apistr}
... ELSE IF "${apiStart1}"=="/v" Set Variable ${apistr}
... ELSE Set Variable ${apistr}
log ${apistr}
[Return] ${apistr}
BasePostRequest
[Arguments] ${apistr} ${body}
Set Headers {"Authorization":"${token}","Content-Type":"application/json"}
log ${apistr}
&{httpResponse} Post ${apistr} ${body}
#Output response body
Object response body
#Integer $.code 200
#Array $.data.policyList
${response} Set Variable ${httpResponse.body}
[Return] ${response}
BasePostRequestOK
[Arguments] ${apistr} ${body}
${response} BasePostRequest ${apistr} ${body}
log ${response['code']}
Should Be Equal As Strings ${response['code']} 200
[Return] ${response}
BasePostRequestForV2
[Arguments] ${requestUri} ${data} ${apiVersion}
${headers} set variable {"Authorization":"${token}","Content-Type":"application/json"}
create session api http://${host}:${port}/${apiVersion} ${headers}
${response}= Post Request api ${requestUri} data=${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}
BaseGetRequest
[Arguments] ${apistr} ${body}
Set Headers {"Authorization":"${token}","Content-Type":"application/json"}
&{httpResponse} Get ${apistr}?${body}
#Output response body
Object response body
#Integer $.code 200
#Array $.data.policyList
${response} Set Variable ${httpResponse.body}
[Return] ${response}
BaseGetRequestOK
[Arguments] ${apistr} ${body}
${response} BaseGetRequest ${apistr} ${body}
log ${response['code']}
Should Be Equal As Strings ${response['code']} 200
[Return] ${response}
BaseGetRequestForV2
[Arguments] ${requestUri} ${data} ${apiVersion}
${headers} set variable {"Authorization":"${token}","Content-Type":"application/json"}
create session api http://${host}:${port}/${apiVersion} ${headers}
${response}= Get Request api ${requestUri}?${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}
BaseDeleteRequest
[Arguments] ${requestUri} ${data}
${headers} set variable {"Authorization":"${token}","Content-Type":"application/json"}
create session api http://${host}:${port} ${headers}
${response}= Delete Request api ${requestUri} data=${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}
BaseDeleteRequestOK
[Arguments] ${apistr} ${body}
${response} BaseDeleteRequest ${apistr} ${body}
log ${response['code']}
Should Be Equal As Strings ${response['code']} 200
[Return] ${response}
BaseEditRequest
[Arguments] ${requestUri} ${data}
${headers} set variable {"Authorization":"${token}","Content-Type":"application/json"}
create session api http://${host}:${port} ${headers}
${response}= Put Request api ${requestUri} data=${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}
BaseEditRequestOK
[Arguments] ${apistr} ${body}
${response} BaseEditRequest ${apistr} ${body}
log ${response['code']}
Should Be Equal As Strings ${response['code']} 200
[Return] ${response}
BaseEditRequestForV2
[Arguments] ${requestUri} ${data} ${apiVersion}
${apiStart} Evaluate '${requestUri}'[0:1]
${requestUri} Run Keyword If "${apiStart}"=="/" set variable /${apiVersion}${requestUri}
... ELSE set variable /${apiVersion}/${requestUri}
${response} BaseEditRequest ${requestUri} ${data}
[Return] ${response}
#拼接字典类型数据为get请求的字符串
Dictionary-To-QueryParams
[Documentation]
... 接收get参数字典转换为请求字符串
[Arguments] ${params}
${paramsString} = Set Variable ${EMPTY}
Run Keyword And Return If "${params}" == "${EMPTY}" Set Variable ${EMPTY}
FOR ${key} IN @{params}
${value} = Get From Dictionary ${params} ${key}
${paramStr} = Catenate SEPARATOR=\= ${key} ${value}
${len} = Get Length ${paramsString}
${paramsString} = Run Keyword If ${len} != 0 Catenate SEPARATOR=& ${paramsString} ${paramStr}
... ELSE Set Variable ${paramStr}
END
Log To Console ${paramsString}
[Return] ${paramsString}
BaseFormRequest
[Arguments] ${requestUri} ${data} ${apiVersion}
${headers} set variable {"Authorization":"${token}","Content-Type":"application/x-www-form-urlencoded"}
create session api http://${host}:${port}/${apiVersion} ${headers}
${response} Run Keyword If "${data}"=="${EMPTY}" Get Request api ${requestUri}
... ELSE Get Request api ${requestUri}?${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}
BaseFormRequest1
[Documentation]
... 下载文件专用
... 由于下载的json存在特殊字符
... 隐藏需要设置response.encoding='utf-8-sig'
[Arguments] ${requestUri} ${data} ${apiVersion}
${headers} set variable {"Authorization":"${token}","Content-Type":"application/x-www-form-urlencoded"}
create session api http://${host}:${port}/${apiVersion} ${headers}
${response} Run Keyword If "${data}"=="${EMPTY}" Get Request api ${requestUri}
... ELSE Get Request api ${requestUri}?${data}
log return data =${response}
${response.encoding} set variable utf-8-sig
Should Be Equal As Strings ${response.status_code} 200
${response} json.Loads ${response.content}
[Return] ${response}
BaseMultipartPostRequest
[Arguments] ${requestUri} ${data} ${files} ${apiVersion}
${headers} set variable {"Authorization":"${token}"}
${dataString} Dictionary-To-QueryParams ${data}
create session api http://${host}:${port}/${apiVersion} ${headers}
${response}= Post Request api ${requestUri}?${dataString} files=${files}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}
BasePostRequestReturnBinary
[Documentation]
... 下载文件专用
... 返回二进制数据
[Arguments] ${requestUri} ${data} ${apiVersion}
Log Call BasePostRequestReturnBinary
${headers} set variable {"Authorization":"${token}","Content-Type":"application/json"}
create session api http://${host}:${port}/${apiVersion} ${headers}
Log ${data}
${response} Post Request api ${requestUri} data=${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
[Return] ${response.content}
BaseGetRequestReturnBinary
[Documentation]
... 下载文件专用
... 返回二进制数据
[Arguments] ${requestUri} ${data} ${apiVersion}
Log Call BasePostRequestReturnBinary
${headers} set variable {"Authorization":"${token}","Content-Type":"application/json"}
${dataString} Dictionary-To-QueryParams ${data}
create session api http://${host}:${port}/${apiVersion} ${headers}
Log ${data}
${response} Get Request api ${requestUri}?${dataString}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
[Return] ${response.content}
BaseFormEditRequest
[Arguments] ${requestUri} ${data} ${apiVersion}
${headers} set variable {"Authorization":"${token}","Content-Type":"application/x-www-form-urlencoded"}
create session api http://${host}:${port}/${apiVersion} ${headers}
${response}= Put Request api ${requestUri} data=${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}
BaseFormPostRequest
[Arguments] ${requestUri} ${data} ${apiVersion}
${headers} set variable {"Authorization":"${token}","Content-Type":"application/x-www-form-urlencoded"}
create session api http://${host}:${port}/${apiVersion} ${headers}
${response}= Post Request api ${requestUri} data=${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}
OamRequest
[Arguments] ${requestUri} ${path} ${method} ${contentType} ${data}
${headers} set variable {"Authorization":"${token}","Content-Type":"${contentType}","path":"${path}"}
create session api http://${host}:${port} ${headers}
${response} Run Keyword If "${method}" == "GET" Get Request api ${requestUri}?${data}
... ELSE IF "${method}" == "POST" Post Request api ${requestUri} data=${data}
... ELSE IF "${method}" == "PUT" Put Request api ${requestUri} data=${data}
... ELSE IF "${method}" == "DELETE" Delete Request api ${requestUri} data=${data}
... ELSE Set Variable ${EMPTY}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
[Return] ${response}

View File

@@ -1,20 +1,81 @@
*** Settings ***
Library json
Library OperatingSystem
Library Selenium2Library
Library RequestsLibrary
Library Collections
Resource ../tsg_bfapi/ApiRequest.robot
Resource Log_schema.robot
Resource ../tsg_bfapi/Common.robot
*** Keywords ***
log_search
[Arguments] ${start-time} ${end-time} ${type} ${filds} ${conditions}
log 111111${filds}
${filedsJson} json.dumps ${filds}
${requestbody} Set Variable {"start_common_recv_time":"${start-time}","end_common_recv_time":"${end-time}","logType":"${type}","fields":${filedsJson},"conditions":${conditions},"refuseCode":true}
log %%%%%%%%%%${requestbody}
${response} BasePostRequest v1/log/list ${requestbody}
log ${response}
[Return] ${response}
*** Settings ***
Library json
Library OperatingSystem
Library Selenium2Library
Library RequestsLibrary
Library Collections
Library DateTime
Library String
Library HttpLibrary.HTTP
Resource ../tsg_bfapi/ApiRequest.robot
Resource Log_schema.robot
Resource ../tsg_bfapi/Common.robot
Library ../../04-CustomLibrary/Custometest/Schema.py
*** Test Cases ***
Apitext
${EndTime} get current date
${EndTime1} Get Substring ${EndTime} \ -4
${StartTime} add time to date ${EndTime} -01:00:00
${StartTime1} Get Substring ${StartTime} \ -4
log ${StartTime1}
log ${EndTime1}
LogApiSearch ${StartTime1} ${EndTime1} security_event_log v1/log/list
*** Keywords ***
log_search
[Arguments] ${start-time} ${end-time} ${type} ${filds} ${conditions}
log 111111${filds}
${filedsJson} json.dumps ${filds}
${requestbody} Set Variable {"start_common_recv_time":"${start-time}","end_common_recv_time":"${end-time}","logType":"${type}","fields":${filedsJson},"conditions":${conditions},"refuseCode":true}
log %%%%%%%%%%${requestbody}
${response} BasePostRequest v1/log/list ${requestbody}
log ${response}
[Return] ${response}
LogSchema
[Arguments] ${logtype}
${responsedata} Get-Request /v1/log/schema?logType=${logtype}
${responsedata1} Get From Dictionary ${responsedata} data
${responsefields} Get From Dictionary ${responsedata1} fields
[Return] ${responsedata}
LogApiSearch
[Arguments] ${start-time} ${end-time} ${logtype} ${url} ${conditions}=${None} ${filter}=null
${schemaresponsedata} LogSchema ${logtype}
${type1} Evaluate type(${schemaresponsedata})
log 11111111${type1}
${schemaresponsedata1} Get From Dictionary ${schemaresponsedata} data
${filds} Get From Dictionary ${schemaresponsedata1} fields
${filedsJson} json.dumps ${filds}
${filter1} run keyword if "${filter}"=="null" Filter1 ${schemaresponsedata}
run keyword if "${filter}"=="null" ForFilter ${start-time} ${end-time} ${logtype} ${url}
... ${filedsJson} ${conditions} ${filter1}
... ELSE LogSearchRequest ${start-time} ${end-time} ${logtype} ${url}
... ${conditions} ${filter}
# ${requestbody} Set Variable {"start_common_recv_time":"${start-time}","end_common_recv_time":"${end-time}","logType":"${type}","fields":${filedsJson},"conditions":${conditions},"filter":${filter},refuseCode":true}
# ${response} BasePostRequest v1/log/list ${requestbody}
# ${code} Get From Dictionary ${response} code
LogSearchRequest
[Arguments] ${start-time} ${end-time} ${logtype} ${url} ${filedsJson} ${conditions} ${filter}
# ${type2} Evaluate type(${filedsJson})
# log 7777${type2}
${requestbody} Set Variable {"start_common_recv_time":"${start-time}","end_common_recv_time":"${end-time}","logType":"${logtype}","fields":${filedsJson},"conditions":${conditions},"filter":${filter},refuseCode":true}
#${requestbody1} json.loads ${requestbody}
#${type1} Evaluate type(${requestbody})
#log 88888888${type1}
${response} Post-Request ${url} ${requestbody}
${code} Get From Dictionary ${response} code
log 22222222${response}
ForFilter
[Arguments] ${start-time} ${end-time} ${logtype} ${url} ${filedsJson} ${conditions} ${filter1}
${LongFilter} Set Variable
: FOR ${i} IN @{filter1}
\ ${LongFilter} catenate ${i} "and"
\ LogSearchRequest ${start-time} ${end-time} ${logtype} ${url} ${filedsJson} ${conditions}
\ ... ${i}
${LongFilter1} Get Substring ${LongFilter} \ -5
log 55555555${LongFilter1}
LogSearchRequest ${start-time} ${end-time} ${logtype} ${url} ${conditions} ${LongFilter1}