@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<robot generator= "Robot 3.1.2 (Python 3.6.8 on linux)" generated= "20210820 11:28:27.247 " rpa= "false" >
<robot generator= "Robot 3.1.2 (Python 3.6.8 on linux)" generated= "20210820 11:29:18.506 " rpa= "false" >
<suite id= "s1" name= "Yyt-Trading-Rf-Api" source= "/root/yyt-trading-rf-api" >
<suite id= "s1" name= "Yyt-Trading-Rf-Api" source= "/root/yyt-trading-rf-api" >
<suite id= "s1-s1" name= "Login Get Info" source= "/root/yyt-trading-rf-api/login_get_info" >
<suite id= "s1-s1" name= "Login Get Info" source= "/root/yyt-trading-rf-api/login_get_info" >
<suite id= "s1-s1-s1" name= "Login Customer" source= "/root/yyt-trading-rf-api/login_get_info/login_customer.robot" >
<suite id= "s1-s1-s1" name= "Login Customer" source= "/root/yyt-trading-rf-api/login_get_info/login_customer.robot" >
<test id= "s1-s1-s1-t1" name= "uec_authorize_by_captcha" >
<test id= "s1-s1-s1-t1" name= "uec_authorize_by_captcha" >
<kw name= "Disable Warnings" library= "urllib3" >
<kw name= "Disable Warnings" library= "urllib3" >
<doc > Helper for quickly disabling all urllib3 warnings.</doc>
<doc > Helper for quickly disabling all urllib3 warnings.</doc>
<status status= "PASS" starttime= "20210820 11:28:27.381" endtime= "20210820 11:28:27.381 " > </status>
<status status= "PASS" starttime= "20210820 11:29:18.645" endtime= "20210820 11:29:18.646 " > </status>
</kw>
</kw>
<kw name= "Create Session" library= "RequestsLibrary" >
<kw name= "Create Session" library= "RequestsLibrary" >
<doc > Create Session: create a HTTP session to a server</doc>
<doc > Create Session: create a HTTP session to a server</doc>
@ -15,8 +15,8 @@
<arg > https://api-client-uec-test.qniao.cn</arg>
<arg > https://api-client-uec-test.qniao.cn</arg>
<arg > headers=${cloud_factory_header}</arg>
<arg > headers=${cloud_factory_header}</arg>
</arguments>
</arguments>
<msg timestamp= "20210820 11:28:27.382 " level= "INFO" > Creating Session using : alias=uecclient, url=https://api-client-uec-test.qniao.cn, headers={'Content-Type': 'application/json;charset=UTF-8', 'X-APP-ID': '503258978847965388'}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
<status status= "PASS" starttime= "20210820 11:28:27.382" endtime= "20210820 11:28:27.383 " > </status>
<msg timestamp= "20210820 11:29:18.647 " level= "INFO" > Creating Session using : alias=uecclient, url=https://api-client-uec-test.qniao.cn, headers={'Content-Type': 'application/json;charset=UTF-8', 'X-APP-ID': '503258978847965388'}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
<status status= "PASS" starttime= "20210820 11:29:18.646" endtime= "20210820 11:29:18.647 " > </status>
</kw>
</kw>
<kw name= "Set Variable" library= "BuiltIn" >
<kw name= "Set Variable" library= "BuiltIn" >
<doc > Returns the given values which can then be assigned to a variables.</doc>
<doc > Returns the given values which can then be assigned to a variables.</doc>
@ -26,8 +26,8 @@
<assign >
<assign >
<var > ${body}</var>
<var > ${body}</var>
</assign>
</assign>
<msg timestamp= "20210820 11:28:27.383 " level= "INFO" > ${body} = {"accountType":2,"account":"13000000000","captcha":"888888"}</msg>
<status status= "PASS" starttime= "20210820 11:28:27.383" endtime= "20210820 11:28:27.383 " > </status>
<msg timestamp= "20210820 11:29:18.648 " level= "INFO" > ${body} = {"accountType":2,"account":"13000000000","captcha":"888888"}</msg>
<status status= "PASS" starttime= "20210820 11:29:18.647" endtime= "20210820 11:29:18.648 " > </status>
</kw>
</kw>
<kw name= "Post On Session" library= "RequestsLibrary" >
<kw name= "Post On Session" library= "RequestsLibrary" >
<doc > Sends a POST request on a previously created HTTP Session.</doc>
<doc > Sends a POST request on a previously created HTTP Session.</doc>
@ -39,42 +39,42 @@
<assign >
<assign >
<var > ${response}</var>
<var > ${response}</var>
</assign>
</assign>
<msg timestamp= "20210820 11:28:27.450 " level= "INFO" > POST Request : url=https://api-client-uec-test.qniao.cn/uec/authorize/by-captcha
<msg timestamp= "20210820 11:29:18.732 " level= "INFO" > POST Request : url=https://api-client-uec-test.qniao.cn/uec/authorize/by-captcha
path_url=/uec/authorize/by-captcha
path_url=/uec/authorize/by-captcha
headers={'User-Agent': 'python-requests/2.26.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json;charset=UTF-8', 'X-APP-ID': '503258978847965388', 'Content-Length': '60'}
headers={'User-Agent': 'python-requests/2.26.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json;charset=UTF-8', 'X-APP-ID': '503258978847965388', 'Content-Length': '60'}
body={"accountType":2,"account":"13000000000","captcha":"888888"}
body={"accountType":2,"account":"13000000000","captcha":"888888"}
</msg>
</msg>
<msg timestamp= "20210820 11:28:27.450 " level= "INFO" > POST Response : url=https://api-client-uec-test.qniao.cn/uec/authorize/by-captcha
<msg timestamp= "20210820 11:29:18.732 " level= "INFO" > POST Response : url=https://api-client-uec-test.qniao.cn/uec/authorize/by-captcha
status=200, reason=
status=200, reason=
headers={'Server': 'nginx/1.16.1', 'Date': 'Fri, 20 Aug 2021 03:28:27 GMT', 'Content-Type': 'application/json', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive', 'Vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers'}
body={"code":0,"message":"successful","data":{"token":"iHP4V/g6O5DXHixyNrf7tnXugE03gmmVVVkL14dTnSic+GfcMeLC0MLSCzSgu21b ","userId":"4163"}}
headers={'Server': 'nginx/1.16.1', 'Date': 'Fri, 20 Aug 2021 03:29:18 GMT', 'Content-Type': 'application/json', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive', 'Vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers'}
body={"code":0,"message":"successful","data":{"token":"iHP4V/g6O5DXHixyNrf7tnXugE03gmmVVVkL14dTnShu/P4MrBWoA32ZEuaUKz8o ","userId":"4163"}}
</msg>
</msg>
<msg timestamp= "20210820 11:28:27.450 " level= "INFO" > ${response} = < Response [200]> </msg>
<status status= "PASS" starttime= "20210820 11:28:27.383" endtime= "20210820 11:28:27.450 " > </status>
<msg timestamp= "20210820 11:29:18.733 " level= "INFO" > ${response} = < Response [200]> </msg>
<status status= "PASS" starttime= "20210820 11:29:18.648" endtime= "20210820 11:29:18.733 " > </status>
</kw>
</kw>
<kw name= "Log" library= "BuiltIn" >
<kw name= "Log" library= "BuiltIn" >
<doc > Logs the given message with the given level.</doc>
<doc > Logs the given message with the given level.</doc>
<arguments >
<arguments >
<arg > ${response.status_code}</arg>
<arg > ${response.status_code}</arg>
</arguments>
</arguments>
<msg timestamp= "20210820 11:28:27.451 " level= "INFO" > 200</msg>
<status status= "PASS" starttime= "20210820 11:28:27.451" endtime= "20210820 11:28:27.451 " > </status>
<msg timestamp= "20210820 11:29:18.734 " level= "INFO" > 200</msg>
<status status= "PASS" starttime= "20210820 11:29:18.733" endtime= "20210820 11:29:18.734 " > </status>
</kw>
</kw>
<kw name= "Log" library= "BuiltIn" >
<kw name= "Log" library= "BuiltIn" >
<doc > Logs the given message with the given level.</doc>
<doc > Logs the given message with the given level.</doc>
<arguments >
<arguments >
<arg > ${response.text}</arg>
<arg > ${response.text}</arg>
</arguments>
</arguments>
<msg timestamp= "20210820 11:28:27.452 " level= "INFO" > {"code":0,"message":"successful","data":{"token":"iHP4V/g6O5DXHixyNrf7tnXugE03gmmVVVkL14dTnSic+GfcMeLC0MLSCzSgu21b ","userId":"4163"}}</msg>
<status status= "PASS" starttime= "20210820 11:28:27.452" endtime= "20210820 11:28:27.452 " > </status>
<msg timestamp= "20210820 11:29:18.735 " level= "INFO" > {"code":0,"message":"successful","data":{"token":"iHP4V/g6O5DXHixyNrf7tnXugE03gmmVVVkL14dTnShu/P4MrBWoA32ZEuaUKz8o ","userId":"4163"}}</msg>
<status status= "PASS" starttime= "20210820 11:29:18.734" endtime= "20210820 11:29:18.735 " > </status>
</kw>
</kw>
<kw name= "Log" library= "BuiltIn" >
<kw name= "Log" library= "BuiltIn" >
<doc > Logs the given message with the given level.</doc>
<doc > Logs the given message with the given level.</doc>
<arguments >
<arguments >
<arg > ${response.json()}</arg>
<arg > ${response.json()}</arg>
</arguments>
</arguments>
<msg timestamp= "20210820 11:28:27.452 " level= "INFO" > {'code': 0, 'message': 'successful', 'data': {'token': 'iHP4V/g6O5DXHixyNrf7tnXugE03gmmVVVkL14dTnSic+GfcMeLC0MLSCzSgu21b ', 'userId': '4163'}}</msg>
<status status= "PASS" starttime= "20210820 11:28:27.452" endtime= "20210820 11:28:27.453 " > </status>
<msg timestamp= "20210820 11:29:18.735 " level= "INFO" > {'code': 0, 'message': 'successful', 'data': {'token': 'iHP4V/g6O5DXHixyNrf7tnXugE03gmmVVVkL14dTnShu/P4MrBWoA32ZEuaUKz8o ', 'userId': '4163'}}</msg>
<status status= "PASS" starttime= "20210820 11:29:18.735" endtime= "20210820 11:29:18.735 " > </status>
</kw>
</kw>
<kw name= "Should Be Equal As Numbers" library= "BuiltIn" >
<kw name= "Should Be Equal As Numbers" library= "BuiltIn" >
<doc > Fails if objects are unequal after converting them to real numbers.</doc>
<doc > Fails if objects are unequal after converting them to real numbers.</doc>
@ -82,10 +82,10 @@
<arg > 200</arg>
<arg > 200</arg>
<arg > ${response.status_code}</arg>
<arg > ${response.status_code}</arg>
</arguments>
</arguments>
<msg timestamp= "20210820 11:28:27.453 " level= "INFO" > Argument types are:
<msg timestamp= "20210820 11:29:18.736 " level= "INFO" > Argument types are:
< type 'unicode'>
< type 'unicode'>
< class 'int'> </msg>
< class 'int'> </msg>
<status status= "PASS" starttime= "20210820 11:28:27.453" endtime= "20210820 11:28:27.453 " > </status>
<status status= "PASS" starttime= "20210820 11:29:18.735" endtime= "20210820 11:29:18.736 " > </status>
</kw>
</kw>
<kw name= "Should Be Equal As Strings" library= "BuiltIn" >
<kw name= "Should Be Equal As Strings" library= "BuiltIn" >
<doc > Fails if objects are unequal after converting them to strings.</doc>
<doc > Fails if objects are unequal after converting them to strings.</doc>
@ -93,17 +93,17 @@
<arg > successful</arg>
<arg > successful</arg>
<arg > ${response.json()["message"]}</arg>
<arg > ${response.json()["message"]}</arg>
</arguments>
</arguments>
<status status= "PASS" starttime= "20210820 11:28:27.453" endtime= "20210820 11:28:27.454 " > </status>
<status status= "PASS" starttime= "20210820 11:29:18.736" endtime= "20210820 11:29:18.736 " > </status>
</kw>
</kw>
<status status= "PASS" starttime= "20210820 11:28:27.380" endtime= "20210820 11:28:27.454 " critical= "yes" > </status>
<status status= "PASS" starttime= "20210820 11:29:18.644" endtime= "20210820 11:29:18.736 " critical= "yes" > </status>
</test>
</test>
<status status= "PASS" starttime= "20210820 11:28:27.376" endtime= "20210820 11:28:27.454 " > </status>
<status status= "PASS" starttime= "20210820 11:29:18.639" endtime= "20210820 11:29:18.737 " > </status>
</suite>
</suite>
<suite id= "s1-s1-s2" name= "Login Operate" source= "/root/yyt-trading-rf-api/login_get_info/login_operate.robot" >
<suite id= "s1-s1-s2" name= "Login Operate" source= "/root/yyt-trading-rf-api/login_get_info/login_operate.robot" >
<test id= "s1-s1-s2-t1" name= "cloud_factory_operation_backend_admin_login" >
<test id= "s1-s1-s2-t1" name= "cloud_factory_operation_backend_admin_login" >
<kw name= "Disable Warnings" library= "urllib3" >
<kw name= "Disable Warnings" library= "urllib3" >
<doc > Helper for quickly disabling all urllib3 warnings.</doc>
<doc > Helper for quickly disabling all urllib3 warnings.</doc>
<status status= "PASS" starttime= "20210820 11:28:27.460" endtime= "20210820 11:28:27.460 " > </status>
<status status= "PASS" starttime= "20210820 11:29:18.743" endtime= "20210820 11:29:18.743 " > </status>
</kw>
</kw>
<kw name= "Create Session" library= "RequestsLibrary" >
<kw name= "Create Session" library= "RequestsLibrary" >
<doc > Create Session: create a HTTP session to a server</doc>
<doc > Create Session: create a HTTP session to a server</doc>
@ -112,8 +112,8 @@
<arg > http://api-ops-yyt-test.qniao.cn</arg>
<arg > http://api-ops-yyt-test.qniao.cn</arg>
<arg > headers=${operation_backend_header}</arg>
<arg > headers=${operation_backend_header}</arg>
</arguments>
</arguments>
<msg timestamp= "20210820 11:28:27.461 " level= "INFO" > Creating Session using : alias=yytops, url=http://api-ops-yyt-test.qniao.cn, headers={'Content-Type': 'application/x-www-form-urlencoded'}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
<status status= "PASS" starttime= "20210820 11:28:27.460" endtime= "20210820 11:28:27.461 " > </status>
<msg timestamp= "20210820 11:29:18.744 " level= "INFO" > Creating Session using : alias=yytops, url=http://api-ops-yyt-test.qniao.cn, headers={'Content-Type': 'application/x-www-form-urlencoded'}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
<status status= "PASS" starttime= "20210820 11:29:18.743" endtime= "20210820 11:29:18.744 " > </status>
</kw>
</kw>
<kw name= "Create Dictionary" library= "BuiltIn" >
<kw name= "Create Dictionary" library= "BuiltIn" >
<doc > Creates and returns a dictionary based on the given ``items``.</doc>
<doc > Creates and returns a dictionary based on the given ``items``.</doc>
@ -124,8 +124,8 @@
<assign >
<assign >
<var > & {data}</var>
<var > & {data}</var>
</assign>
</assign>
<msg timestamp= "20210820 11:28:27.462 " level= "INFO" > & {data} = { username=liangjinman@qniao.cn | password=qn123456 }</msg>
<status status= "PASS" starttime= "20210820 11:28:27.461" endtime= "20210820 11:28:27.462 " > </status>
<msg timestamp= "20210820 11:29:18.745 " level= "INFO" > & {data} = { username=liangjinman@qniao.cn | password=qn123456 }</msg>
<status status= "PASS" starttime= "20210820 11:29:18.744" endtime= "20210820 11:29:18.745 " > </status>
</kw>
</kw>
<kw name= "Post On Session" library= "RequestsLibrary" >
<kw name= "Post On Session" library= "RequestsLibrary" >
<doc > Sends a POST request on a previously created HTTP Session.</doc>
<doc > Sends a POST request on a previously created HTTP Session.</doc>
@ -137,42 +137,42 @@
<assign >
<assign >
<var > ${resp}</var>
<var > ${resp}</var>
</assign>
</assign>
<msg timestamp= "20210820 11:28:27.512 " level= "INFO" > POST Request : url=http://api-ops-yyt-test.qniao.cn/cloud-factory-operation-backend/admin/login
<msg timestamp= "20210820 11:29:18.883 " level= "INFO" > POST Request : url=http://api-ops-yyt-test.qniao.cn/cloud-factory-operation-backend/admin/login
path_url=/cloud-factory-operation-backend/admin/login
path_url=/cloud-factory-operation-backend/admin/login
headers={'User-Agent': 'python-requests/2.26.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/x-www-form-urlencoded', 'Content-Length': '49'}
headers={'User-Agent': 'python-requests/2.26.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/x-www-form-urlencoded', 'Content-Length': '49'}
body=username=liangjinman%40qniao.cn& password=qn123456
body=username=liangjinman%40qniao.cn& password=qn123456
</msg>
</msg>
<msg timestamp= "20210820 11:28:27.512 " level= "INFO" > POST Response : url=http://api-ops-yyt-test.qniao.cn/cloud-factory-operation-backend/admin/login
<msg timestamp= "20210820 11:29:18.884 " level= "INFO" > POST Response : url=http://api-ops-yyt-test.qniao.cn/cloud-factory-operation-backend/admin/login
status=200, reason=
status=200, reason=
headers={'Server': 'nginx/1.16.1', 'Date': 'Fri, 20 Aug 2021 03:28:27 GMT', 'Content-Type': 'application/json;charset=UTF-8', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive', 'Access-Control-Allow-Origin': '*', 'Access-Control-Request-Method': '*', 'Cache-Control': 'no-cache', 'Authorization': 'Token 4a8bb5b51207941b91dfa6f617504a38', 'X-Content-Type-Options': 'nosniff', 'X-XSS-Protection': '1; mode=block', 'X-Frame-Options': 'DENY'}
headers={'Server': 'nginx/1.16.1', 'Date': 'Fri, 20 Aug 2021 03:29:18 GMT', 'Content-Type': 'application/json;charset=UTF-8', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive', 'Access-Control-Allow-Origin': '*', 'Access-Control-Request-Method': '*', 'Cache-Control': 'no-cache', 'Authorization': 'Token 4a8bb5b51207941b91dfa6f617504a38', 'X-Content-Type-Options': 'nosniff', 'X-XSS-Protection': '1; mode=block', 'X-Frame-Options': 'DENY'}
body={"code":200,"message":"登陆成功"}
body={"code":200,"message":"登陆成功"}
</msg>
</msg>
<msg timestamp= "20210820 11:28:27.512 " level= "INFO" > ${resp} = < Response [200]> </msg>
<status status= "PASS" starttime= "20210820 11:28:27.462" endtime= "20210820 11:28:27.512 " > </status>
<msg timestamp= "20210820 11:29:18.884 " level= "INFO" > ${resp} = < Response [200]> </msg>
<status status= "PASS" starttime= "20210820 11:29:18.745" endtime= "20210820 11:29:18.884 " > </status>
</kw>
</kw>
<kw name= "Log" library= "BuiltIn" >
<kw name= "Log" library= "BuiltIn" >
<doc > Logs the given message with the given level.</doc>
<doc > Logs the given message with the given level.</doc>
<arguments >
<arguments >
<arg > ${resp.status_code}</arg>
<arg > ${resp.status_code}</arg>
</arguments>
</arguments>
<msg timestamp= "20210820 11:28:27.513 " level= "INFO" > 200</msg>
<status status= "PASS" starttime= "20210820 11:28:27.513" endtime= "20210820 11:28:27.513 " > </status>
<msg timestamp= "20210820 11:29:18.885 " level= "INFO" > 200</msg>
<status status= "PASS" starttime= "20210820 11:29:18.885" endtime= "20210820 11:29:18.885 " > </status>
</kw>
</kw>
<kw name= "Log" library= "BuiltIn" >
<kw name= "Log" library= "BuiltIn" >
<doc > Logs the given message with the given level.</doc>
<doc > Logs the given message with the given level.</doc>
<arguments >
<arguments >
<arg > ${resp.text}</arg>
<arg > ${resp.text}</arg>
</arguments>
</arguments>
<msg timestamp= "20210820 11:28:27.514 " level= "INFO" > {"code":200,"message":"登陆成功"}</msg>
<status status= "PASS" starttime= "20210820 11:28:27.514" endtime= "20210820 11:28:27.514 " > </status>
<msg timestamp= "20210820 11:29:18.886 " level= "INFO" > {"code":200,"message":"登陆成功"}</msg>
<status status= "PASS" starttime= "20210820 11:29:18.885" endtime= "20210820 11:29:18.886 " > </status>
</kw>
</kw>
<kw name= "Log" library= "BuiltIn" >
<kw name= "Log" library= "BuiltIn" >
<doc > Logs the given message with the given level.</doc>
<doc > Logs the given message with the given level.</doc>
<arguments >
<arguments >
<arg > ${resp.json()}</arg>
<arg > ${resp.json()}</arg>
</arguments>
</arguments>
<msg timestamp= "20210820 11:28:27.515 " level= "INFO" > {'code': 200, 'message': '登陆成功'}</msg>
<status status= "PASS" starttime= "20210820 11:28:27.514" endtime= "20210820 11:28:27.515 " > </status>
<msg timestamp= "20210820 11:29:18.886 " level= "INFO" > {'code': 200, 'message': '登陆成功'}</msg>
<status status= "PASS" starttime= "20210820 11:29:18.886" endtime= "20210820 11:29:18.886 " > </status>
</kw>
</kw>
<kw name= "Should Be Equal As Numbers" library= "BuiltIn" >
<kw name= "Should Be Equal As Numbers" library= "BuiltIn" >
<doc > Fails if objects are unequal after converting them to real numbers.</doc>
<doc > Fails if objects are unequal after converting them to real numbers.</doc>
@ -180,10 +180,10 @@
<arg > 200</arg>
<arg > 200</arg>
<arg > ${resp.status_code}</arg>
<arg > ${resp.status_code}</arg>
</arguments>
</arguments>
<msg timestamp= "20210820 11:28:27.515 " level= "INFO" > Argument types are:
<msg timestamp= "20210820 11:29:18.887 " level= "INFO" > Argument types are:
< type 'unicode'>
< type 'unicode'>
< class 'int'> </msg>
< class 'int'> </msg>
<status status= "PASS" starttime= "20210820 11:28:27.515" endtime= "20210820 11:28:27.515 " > </status>
<status status= "PASS" starttime= "20210820 11:29:18.887" endtime= "20210820 11:29:18.887 " > </status>
</kw>
</kw>
<kw name= "Should Be Equal As Strings" library= "BuiltIn" >
<kw name= "Should Be Equal As Strings" library= "BuiltIn" >
<doc > Fails if objects are unequal after converting them to strings.</doc>
<doc > Fails if objects are unequal after converting them to strings.</doc>
@ -191,15 +191,15 @@
<arg > 登陆成功</arg>
<arg > 登陆成功</arg>
<arg > ${resp.json()["message"]}</arg>
<arg > ${resp.json()["message"]}</arg>
</arguments>
</arguments>
<status status= "PASS" starttime= "20210820 11:28:27.515" endtime= "20210820 11:28:27.516 " > </status>
<status status= "PASS" starttime= "20210820 11:29:18.887" endtime= "20210820 11:29:18.888 " > </status>
</kw>
</kw>
<status status= "PASS" starttime= "20210820 11:28:27.459" endtime= "20210820 11:28:27.516 " critical= "yes" > </status>
<status status= "PASS" starttime= "20210820 11:29:18.742" endtime= "20210820 11:29:18.888 " critical= "yes" > </status>
</test>
</test>
<status status= "PASS" starttime= "20210820 11:28:27.455" endtime= "20210820 11:28:27.517 " > </status>
<status status= "PASS" starttime= "20210820 11:29:18.738" endtime= "20210820 11:29:18.888 " > </status>
</suite>
</suite>
<status status= "PASS" starttime= "20210820 11:28:27.374" endtime= "20210820 11:28:27.518 " > </status>
<status status= "PASS" starttime= "20210820 11:29:18.635" endtime= "20210820 11:29:18.889 " > </status>
</suite>
</suite>
<status status= "PASS" starttime= "20210820 11:28:27.248" endtime= "20210820 11:28:27.519 " > </status>
<status status= "PASS" starttime= "20210820 11:29:18.508" endtime= "20210820 11:29:18.890 " > </status>
</suite>
</suite>
<statistics >
<statistics >
<total >
<total >