You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
978 lines
72 KiB
978 lines
72 KiB
<?xml version="1.0" encoding="UTF-8"?>
|
|
<robot generator="Robot 6.1.1 (Python 3.6.6 on win32)" generated="20240326 11:19:49.797" rpa="false" schemaversion="4">
|
|
<suite id="s1" name="Dating-agency" source="D:\LYL\Study\Robot_framework\space\Dating-agency">
|
|
<suite id="s1-s1" name="0-Login" source="D:\LYL\Study\Robot_framework\space\Dating-agency\0-Login">
|
|
<suite id="s1-s1-s1" name="Login-interface" source="D:\LYL\Study\Robot_framework\space\Dating-agency\0-Login\Login-interface.robot">
|
|
<kw name="Import Variables" library="BuiltIn" type="SETUP">
|
|
<arg>${EXECDIR}\\DA_data.yaml</arg>
|
|
<doc>Imports a variable file with the given path and optional arguments.</doc>
|
|
<status status="PASS" starttime="20240326 11:19:49.956" endtime="20240326 11:19:49.956"/>
|
|
</kw>
|
|
<test id="s1-s1-s1-t1" name="手机号验证码登录-888888" line="17">
|
|
<kw name="Given 读取TXT文件" library="LoginResource">
|
|
<kw name="Get File" library="OperatingSystem">
|
|
<var>${file}</var>
|
|
<arg>D:\\LYL\\Study\\Robot_framework\\space\\Dating-agency\\0-Login\\phone-test.txt</arg>
|
|
<doc>Returns the contents of a specified file.</doc>
|
|
<msg timestamp="20240326 11:19:49.956" level="INFO" html="true">Getting file '<a href="file://D:\LYL\Study\Robot_framework\space\Dating-agency\0-Login\phone-test.txt">D:\LYL\Study\Robot_framework\space\Dating-agency\0-Login\phone-test.txt</a>'.</msg>
|
|
<msg timestamp="20240326 11:19:49.956" level="INFO">${file} = 手机号
|
|
18745960237</msg>
|
|
<status status="PASS" starttime="20240326 11:19:49.956" endtime="20240326 11:19:49.956"/>
|
|
</kw>
|
|
<kw name="Set Variable" library="BuiltIn">
|
|
<var>${skip-line}</var>
|
|
<arg>1</arg>
|
|
<doc>Returns the given values which can then be assigned to a variables.</doc>
|
|
<msg timestamp="20240326 11:19:49.956" level="INFO">${skip-line} = 1</msg>
|
|
<status status="PASS" starttime="20240326 11:19:49.956" endtime="20240326 11:19:49.956"/>
|
|
</kw>
|
|
<kw name="Set Variable" library="BuiltIn">
|
|
<var>${lines}</var>
|
|
<arg>-1</arg>
|
|
<doc>Returns the given values which can then be assigned to a variables.</doc>
|
|
<msg timestamp="20240326 11:19:49.956" level="INFO">${lines} = -1</msg>
|
|
<status status="PASS" starttime="20240326 11:19:49.956" endtime="20240326 11:19:49.956"/>
|
|
</kw>
|
|
<kw name="Get Lines Containing String" library="String">
|
|
<var>${content}</var>
|
|
<arg>${file}</arg>
|
|
<arg>${skip-line}</arg>
|
|
<arg>${lines}</arg>
|
|
<doc>Returns lines of the given ``string`` that contain the ``pattern``.</doc>
|
|
<msg timestamp="20240326 11:19:49.956" level="INFO">1 out of 2 lines matched</msg>
|
|
<msg timestamp="20240326 11:19:49.956" level="INFO">${content} = 18745960237</msg>
|
|
<status status="PASS" starttime="20240326 11:19:49.956" endtime="20240326 11:19:49.956"/>
|
|
</kw>
|
|
<for flavor="IN">
|
|
<var>${id}</var>
|
|
<value>${content}</value>
|
|
<iter>
|
|
<var name="${id}">18745960237</var>
|
|
<kw name="Split String" library="String">
|
|
<var>${id}</var>
|
|
<arg>${id}</arg>
|
|
<arg>\n</arg>
|
|
<doc>Splits the ``string`` using ``separator`` as a delimiter string.</doc>
|
|
<msg timestamp="20240326 11:19:49.956" level="INFO">${id} = ['18745960237']</msg>
|
|
<status status="PASS" starttime="20240326 11:19:49.956" endtime="20240326 11:19:49.956"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:49.956" endtime="20240326 11:19:49.956"/>
|
|
</iter>
|
|
<status status="PASS" starttime="20240326 11:19:49.956" endtime="20240326 11:19:49.956"/>
|
|
</for>
|
|
<kw name="Set Global Variable" library="BuiltIn">
|
|
<arg>${id}</arg>
|
|
<doc>Makes a variable available globally in all tests and suites.</doc>
|
|
<msg timestamp="20240326 11:19:49.956" level="INFO">${id} = ['18745960237']</msg>
|
|
<status status="PASS" starttime="20240326 11:19:49.956" endtime="20240326 11:19:49.956"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:49.956" endtime="20240326 11:19:49.956"/>
|
|
</kw>
|
|
<kw name="And 用户手机号验证码登录婚介平台-888888" library="LoginResource" sourcename="用户手机号验证码登录${dating}平台-888888">
|
|
<kw name="Create List" library="BuiltIn">
|
|
<var>${userid_list}</var>
|
|
<doc>Returns a list containing given items.</doc>
|
|
<msg timestamp="20240326 11:19:49.956" level="INFO">${userid_list} = []</msg>
|
|
<status status="PASS" starttime="20240326 11:19:49.956" endtime="20240326 11:19:49.956"/>
|
|
</kw>
|
|
<kw name="Create List" library="BuiltIn">
|
|
<var>${Cheader_list}</var>
|
|
<doc>Returns a list containing given items.</doc>
|
|
<msg timestamp="20240326 11:19:49.967" level="INFO">${Cheader_list} = []</msg>
|
|
<status status="PASS" starttime="20240326 11:19:49.956" endtime="20240326 11:19:49.967"/>
|
|
</kw>
|
|
<kw name="Create List" library="BuiltIn">
|
|
<var>${Aheader_list}</var>
|
|
<doc>Returns a list containing given items.</doc>
|
|
<msg timestamp="20240326 11:19:49.967" level="INFO">${Aheader_list} = []</msg>
|
|
<status status="PASS" starttime="20240326 11:19:49.967" endtime="20240326 11:19:49.967"/>
|
|
</kw>
|
|
<for flavor="IN">
|
|
<var>${account}</var>
|
|
<value>@{id}</value>
|
|
<iter>
|
|
<var name="${account}">18745960237</var>
|
|
<kw name="Disable Warnings" library="urllib3">
|
|
<doc>Helper for quickly disabling all urllib3 warnings.</doc>
|
|
<status status="PASS" starttime="20240326 11:19:49.967" endtime="20240326 11:19:49.968"/>
|
|
</kw>
|
|
<kw name="Create Session" library="RequestsLibrary">
|
|
<arg>dating</arg>
|
|
<arg>${${dating}.dating域名}</arg>
|
|
<arg>${${dating}.AHeader}</arg>
|
|
<doc>Create Session: create a HTTP session to a server</doc>
|
|
<msg timestamp="20240326 11:19:49.969" level="INFO">Creating Session using : alias=dating, url=http://dating-agency-api-test.qniao.cn, headers={'Content-Type': 'application/json', 'X-APP-ID': '50325897884795881'}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
|
|
<msg timestamp="20240326 11:19:49.969" level="DEBUG">Creating session: dating</msg>
|
|
<status status="PASS" starttime="20240326 11:19:49.968" endtime="20240326 11:19:49.969"/>
|
|
</kw>
|
|
<kw name="Set Variable" library="BuiltIn">
|
|
<var>${data}</var>
|
|
<arg>{ \ \ "account":"${account}", \ \ "accountType":2, \ \ "captcha":888888 }</arg>
|
|
<doc>Returns the given values which can then be assigned to a variables.</doc>
|
|
<msg timestamp="20240326 11:19:49.969" level="INFO">${data} = { "account":"18745960237", "accountType":2, "captcha":888888 }</msg>
|
|
<status status="PASS" starttime="20240326 11:19:49.969" endtime="20240326 11:19:49.969"/>
|
|
</kw>
|
|
<kw name="POST On Session" library="RequestsLibrary">
|
|
<var>${reps}</var>
|
|
<arg>dating</arg>
|
|
<arg>/dating-agency-uec/authorize/by-captcha</arg>
|
|
<arg>${data.encode('utf-8')}</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<msg timestamp="20240326 11:19:49.973" level="DEBUG">Starting new HTTP connection (1): dating-agency-api-test.qniao.cn</msg>
|
|
<msg timestamp="20240326 11:19:50.049" level="DEBUG">http://dating-agency-api-test.qniao.cn:80 "POST /dating-agency-uec/authorize/by-captcha HTTP/1.1" 200 None</msg>
|
|
<msg timestamp="20240326 11:19:50.049" level="INFO">POST Request : url=http://dating-agency-api-test.qniao.cn/dating-agency-uec/authorize/by-captcha
|
|
path_url=/dating-agency-uec/authorize/by-captcha
|
|
headers={'User-Agent': 'python-requests/2.15.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'X-APP-ID': '50325897884795881', 'Content-Length': '68'}
|
|
body=b'{ "account":"18745960237", "accountType":2, "captcha":888888 }'
|
|
</msg>
|
|
<msg timestamp="20240326 11:19:50.049" level="INFO">POST Response : url=http://dating-agency-api-test.qniao.cn/dating-agency-uec/authorize/by-captcha
|
|
status=200, reason=
|
|
headers={'Server': 'nginx/1.16.1', 'Date': 'Tue, 26 Mar 2024 03:19:50 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/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw==","userId":"969960467432869888"}}
|
|
</msg>
|
|
<msg timestamp="20240326 11:19:50.049" level="INFO">${reps} = <Response [200]></msg>
|
|
<status status="PASS" starttime="20240326 11:19:49.970" endtime="20240326 11:19:50.049"/>
|
|
</kw>
|
|
<kw name="Get From Dictionary" library="Collections">
|
|
<var>${code}</var>
|
|
<arg>${reps.json()}</arg>
|
|
<arg>code</arg>
|
|
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
|
|
<msg timestamp="20240326 11:19:50.049" level="INFO">${code} = 0</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.049" endtime="20240326 11:19:50.049"/>
|
|
</kw>
|
|
<kw name="Get From Dictionary" library="Collections">
|
|
<var>${token}</var>
|
|
<arg>${reps.json()['data']}</arg>
|
|
<arg>token</arg>
|
|
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
|
|
<msg timestamp="20240326 11:19:50.049" level="INFO">${token} = iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw==</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.049" endtime="20240326 11:19:50.049"/>
|
|
</kw>
|
|
<kw name="Get From Dictionary" library="Collections">
|
|
<var>${userId}</var>
|
|
<arg>${reps.json()['data']}</arg>
|
|
<arg>userId</arg>
|
|
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
|
|
<msg timestamp="20240326 11:19:50.049" level="INFO">${userId} = 969960467432869888</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.049" endtime="20240326 11:19:50.049"/>
|
|
</kw>
|
|
<kw name="Get From Dictionary" library="Collections">
|
|
<var>${message}</var>
|
|
<arg>${reps.json()}</arg>
|
|
<arg>message</arg>
|
|
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
|
|
<msg timestamp="20240326 11:19:50.049" level="INFO">${message} = successful</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.049" endtime="20240326 11:19:50.049"/>
|
|
</kw>
|
|
<kw name="Set Variable" library="BuiltIn">
|
|
<var>${login_header}</var>
|
|
<arg>{'Content-Type':'application/json','X-APP-ID':'50325897884795881','Authorization':'QNT ${token}','X-Organization-Id':'963432943739605555'}</arg>
|
|
<doc>Returns the given values which can then be assigned to a variables.</doc>
|
|
<msg timestamp="20240326 11:19:50.049" level="INFO">${login_header} = {'Content-Type':'application/json','X-APP-ID':'50325897884795881','Authorization':'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw==','X-Organization-Id':'96...</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.049" endtime="20240326 11:19:50.049"/>
|
|
</kw>
|
|
<kw name="Set Variable" library="BuiltIn">
|
|
<var>${client_header}</var>
|
|
<arg>{'Content-Type':'application/json','X-APP-ID':'50325897884795880','Authorization':'QNT ${token}'}</arg>
|
|
<doc>Returns the given values which can then be assigned to a variables.</doc>
|
|
<msg timestamp="20240326 11:19:50.049" level="INFO">${client_header} = {'Content-Type':'application/json','X-APP-ID':'50325897884795880','Authorization':'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw=='}</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.049" endtime="20240326 11:19:50.049"/>
|
|
</kw>
|
|
<kw name="Append To List" library="Collections">
|
|
<arg>${userid_list}</arg>
|
|
<arg>${userId}</arg>
|
|
<doc>Adds ``values`` to the end of ``list``.</doc>
|
|
<status status="PASS" starttime="20240326 11:19:50.049" endtime="20240326 11:19:50.049"/>
|
|
</kw>
|
|
<kw name="Append To List" library="Collections">
|
|
<arg>${Cheader_list}</arg>
|
|
<arg>${client_header}</arg>
|
|
<doc>Adds ``values`` to the end of ``list``.</doc>
|
|
<status status="PASS" starttime="20240326 11:19:50.049" endtime="20240326 11:19:50.049"/>
|
|
</kw>
|
|
<kw name="Append To List" library="Collections">
|
|
<arg>${Aheader_list}</arg>
|
|
<arg>${login_header}</arg>
|
|
<doc>Adds ``values`` to the end of ``list``.</doc>
|
|
<status status="PASS" starttime="20240326 11:19:50.049" endtime="20240326 11:19:50.049"/>
|
|
</kw>
|
|
<kw name="Run Keyword If" library="BuiltIn">
|
|
<arg>${code}==0</arg>
|
|
<arg>Should Be Equal As Strings</arg>
|
|
<arg>${message}</arg>
|
|
<arg>successful</arg>
|
|
<arg>ELSE</arg>
|
|
<arg>Should Be Equal As Strings</arg>
|
|
<arg>${message}</arg>
|
|
<arg>验证码错误或无效验证码,请重试!</arg>
|
|
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
|
|
<kw name="Should Be Equal As Strings" library="BuiltIn">
|
|
<arg>${message}</arg>
|
|
<arg>successful</arg>
|
|
<doc>Fails if objects are unequal after converting them to strings.</doc>
|
|
<msg timestamp="20240326 11:19:50.049" level="DEBUG">Argument types are:
|
|
<class 'str'>
|
|
<class 'str'></msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.049" endtime="20240326 11:19:50.049"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:50.049" endtime="20240326 11:19:50.049"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:49.967" endtime="20240326 11:19:50.049"/>
|
|
</iter>
|
|
<status status="PASS" starttime="20240326 11:19:49.967" endtime="20240326 11:19:50.049"/>
|
|
</for>
|
|
<kw name="Set Global Variable" library="BuiltIn">
|
|
<arg>${userid_list}</arg>
|
|
<doc>Makes a variable available globally in all tests and suites.</doc>
|
|
<msg timestamp="20240326 11:19:50.049" level="INFO">${userid_list} = ['969960467432869888']</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.049" endtime="20240326 11:19:50.049"/>
|
|
</kw>
|
|
<kw name="Set Global Variable" library="BuiltIn">
|
|
<arg>${Aheader_list}</arg>
|
|
<doc>Makes a variable available globally in all tests and suites.</doc>
|
|
<msg timestamp="20240326 11:19:50.065" level="INFO">${Aheader_list} = ["{'Content-Type':'application/json','X-APP-ID':'50325897884795881','Authorization':'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw==','X-Organization-Id':'...</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.065" endtime="20240326 11:19:50.065"/>
|
|
</kw>
|
|
<kw name="Set Global Variable" library="BuiltIn">
|
|
<arg>${Cheader_list}</arg>
|
|
<doc>Makes a variable available globally in all tests and suites.</doc>
|
|
<msg timestamp="20240326 11:19:50.065" level="INFO">${Cheader_list} = ["{'Content-Type':'application/json','X-APP-ID':'50325897884795880','Authorization':'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw=='}"]</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.065" endtime="20240326 11:19:50.065"/>
|
|
</kw>
|
|
<kw name="Set Global Variable" library="BuiltIn">
|
|
<arg>${login_header}</arg>
|
|
<doc>Makes a variable available globally in all tests and suites.</doc>
|
|
<msg timestamp="20240326 11:19:50.065" level="INFO">${login_header} = {'Content-Type':'application/json','X-APP-ID':'50325897884795881','Authorization':'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw==','X-Organization-Id':'96...</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.065" endtime="20240326 11:19:50.065"/>
|
|
</kw>
|
|
<kw name="Set Global Variable" library="BuiltIn">
|
|
<arg>${client_header}</arg>
|
|
<doc>Makes a variable available globally in all tests and suites.</doc>
|
|
<msg timestamp="20240326 11:19:50.065" level="INFO">${client_header} = {'Content-Type':'application/json','X-APP-ID':'50325897884795880','Authorization':'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw=='}</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.065" endtime="20240326 11:19:50.065"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:49.956" endtime="20240326 11:19:50.065"/>
|
|
</kw>
|
|
<kw name="And 查询用户的婚介组织" library="LoginResource" sourcename="查询用户的${dating}组织">
|
|
<kw name="Create List" library="BuiltIn">
|
|
<var>${Aheader}</var>
|
|
<doc>Returns a list containing given items.</doc>
|
|
<msg timestamp="20240326 11:19:50.065" level="INFO">${Aheader} = []</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.065" endtime="20240326 11:19:50.069"/>
|
|
</kw>
|
|
<for flavor="IN ZIP">
|
|
<var>${userId}</var>
|
|
<var>${login_header}</var>
|
|
<value>${userid_list}</value>
|
|
<value>${Aheader_list}</value>
|
|
<iter>
|
|
<var name="${userId}">969960467432869888</var>
|
|
<var name="${login_header}">{'Content-Type':'application/json','X-APP-ID':'50325897884795881','Authorization':'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw==','X-Organization-Id':'96...</var>
|
|
<kw name="Disable Warnings" library="urllib3">
|
|
<doc>Helper for quickly disabling all urllib3 warnings.</doc>
|
|
<status status="PASS" starttime="20240326 11:19:50.069" endtime="20240326 11:19:50.070"/>
|
|
</kw>
|
|
<kw name="Create Session" library="RequestsLibrary">
|
|
<arg>dating</arg>
|
|
<arg>${${dating}.dating域名}</arg>
|
|
<arg>${login_header}</arg>
|
|
<doc>Create Session: create a HTTP session to a server</doc>
|
|
<msg timestamp="20240326 11:19:50.071" level="INFO">Creating Session using : alias=dating, url=http://dating-agency-api-test.qniao.cn, headers={'Content-Type': 'application/json', 'X-APP-ID': '50325897884795881', 'Authorization': 'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw==', 'X-Organization-Id': '963432943739605555'}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
|
|
<msg timestamp="20240326 11:19:50.071" level="DEBUG">Creating session: dating</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.070" endtime="20240326 11:19:50.071"/>
|
|
</kw>
|
|
<kw name="GET On Session" library="RequestsLibrary">
|
|
<var>${reps}</var>
|
|
<arg>dating</arg>
|
|
<arg>/dating-agency-uec/user/list/own-organization</arg>
|
|
<arg>params=userId=${userid}</arg>
|
|
<doc>Sends a GET request on a previously created HTTP Session.</doc>
|
|
<msg timestamp="20240326 11:19:50.073" level="DEBUG">Starting new HTTP connection (1): dating-agency-api-test.qniao.cn</msg>
|
|
<msg timestamp="20240326 11:19:50.105" level="DEBUG">http://dating-agency-api-test.qniao.cn:80 "GET /dating-agency-uec/user/list/own-organization?userId=969960467432869888 HTTP/1.1" 200 None</msg>
|
|
<msg timestamp="20240326 11:19:50.105" level="INFO">GET Request : url=http://dating-agency-api-test.qniao.cn/dating-agency-uec/user/list/own-organization?userId=969960467432869888
|
|
path_url=/dating-agency-uec/user/list/own-organization?userId=969960467432869888
|
|
headers={'User-Agent': 'python-requests/2.15.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'X-APP-ID': '50325897884795881', 'Authorization': 'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw==', 'X-Organization-Id': '963432943739605555'}
|
|
body=None
|
|
</msg>
|
|
<msg timestamp="20240326 11:19:50.105" level="INFO">GET Response : url=http://dating-agency-api-test.qniao.cn/dating-agency-uec/user/list/own-organization?userId=969960467432869888
|
|
status=200, reason=
|
|
headers={'Server': 'nginx/1.16.1', 'Date': 'Tue, 26 Mar 2024 03:19:50 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":[]}
|
|
</msg>
|
|
<msg timestamp="20240326 11:19:50.105" level="INFO">${reps} = <Response [200]></msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.072" endtime="20240326 11:19:50.105"/>
|
|
</kw>
|
|
<kw name="Get From Dictionary" library="Collections">
|
|
<var>${data}</var>
|
|
<arg>${reps.json()}</arg>
|
|
<arg>data</arg>
|
|
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
|
|
<msg timestamp="20240326 11:19:50.105" level="INFO">${data} = []</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.105" endtime="20240326 11:19:50.105"/>
|
|
</kw>
|
|
<kw name="Get From Dictionary" library="Collections">
|
|
<var>${message}</var>
|
|
<arg>${reps.json()}</arg>
|
|
<arg>message</arg>
|
|
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
|
|
<msg timestamp="20240326 11:19:50.105" level="INFO">${message} = successful</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.105" endtime="20240326 11:19:50.105"/>
|
|
</kw>
|
|
<kw name="Should Be Equal As Strings" library="BuiltIn">
|
|
<arg>${message}</arg>
|
|
<arg>successful</arg>
|
|
<doc>Fails if objects are unequal after converting them to strings.</doc>
|
|
<msg timestamp="20240326 11:19:50.105" level="DEBUG">Argument types are:
|
|
<class 'str'>
|
|
<class 'str'></msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.105" endtime="20240326 11:19:50.105"/>
|
|
</kw>
|
|
<kw name="Run Keyword If" library="BuiltIn">
|
|
<arg>${data}==[]</arg>
|
|
<arg>log</arg>
|
|
<arg>未获取到组织信息!</arg>
|
|
<arg>ELSE</arg>
|
|
<arg>log</arg>
|
|
<arg>${data}</arg>
|
|
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
|
|
<kw name="Log" library="BuiltIn">
|
|
<arg>未获取到组织信息!</arg>
|
|
<doc>Logs the given message with the given level.</doc>
|
|
<msg timestamp="20240326 11:19:50.105" level="INFO">未获取到组织信息!</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.105" endtime="20240326 11:19:50.105"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:50.105" endtime="20240326 11:19:50.105"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:50.069" endtime="20240326 11:19:50.105"/>
|
|
</iter>
|
|
<status status="PASS" starttime="20240326 11:19:50.069" endtime="20240326 11:19:50.105"/>
|
|
</for>
|
|
<status status="PASS" starttime="20240326 11:19:50.065" endtime="20240326 11:19:50.105"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:49.956" endtime="20240326 11:19:50.105"/>
|
|
</test>
|
|
<doc>接口:短信验证码登录认证</doc>
|
|
<status status="PASS" starttime="20240326 11:19:49.829" endtime="20240326 11:19:50.105"/>
|
|
</suite>
|
|
<doc>用户登录婚介平台</doc>
|
|
<status status="PASS" starttime="20240326 11:19:49.829" endtime="20240326 11:19:50.105"/>
|
|
</suite>
|
|
<suite id="s1-s2" name="1-Applet" source="D:\LYL\Study\Robot_framework\space\Dating-agency\1-Applet">
|
|
<suite id="s1-s2-s1" name="2-Homepage" source="D:\LYL\Study\Robot_framework\space\Dating-agency\1-Applet\2-Homepage">
|
|
<suite id="s1-s2-s1-s1" name="MarriageInfo" source="D:\LYL\Study\Robot_framework\space\Dating-agency\1-Applet\2-Homepage\MarriageInfo">
|
|
<suite id="s1-s2-s1-s1-s1" name="DataAuthentication" source="D:\LYL\Study\Robot_framework\space\Dating-agency\1-Applet\2-Homepage\MarriageInfo\DataAuthentication.robot">
|
|
<kw name="Import Variables" library="BuiltIn" type="SETUP">
|
|
<arg>${EXECDIR}\\DA_data.yaml</arg>
|
|
<doc>Imports a variable file with the given path and optional arguments.</doc>
|
|
<status status="PASS" starttime="20240326 11:19:50.208" endtime="20240326 11:19:50.224"/>
|
|
</kw>
|
|
<test id="s1-s2-s1-s1-s1-t1" name="提交征婚人相册审核信息" line="18">
|
|
<kw name="Given 查询婚介征婚人的资料信息" library="Authentication" sourcename="查询${dating}征婚人的资料信息">
|
|
<for flavor="IN ZIP">
|
|
<var>${userId}</var>
|
|
<var>${client_header}</var>
|
|
<value>${userid_list}</value>
|
|
<value>${Cheader_list}</value>
|
|
<iter>
|
|
<var name="${userId}">969960467432869888</var>
|
|
<var name="${client_header}">{'Content-Type':'application/json','X-APP-ID':'50325897884795880','Authorization':'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw=='}</var>
|
|
<kw name="Create Session" library="RequestsLibrary">
|
|
<arg>dating</arg>
|
|
<arg>${${dating}.dating域名}</arg>
|
|
<arg>${client_header}</arg>
|
|
<doc>Create Session: create a HTTP session to a server</doc>
|
|
<msg timestamp="20240326 11:19:50.224" level="INFO">Creating Session using : alias=dating, url=http://dating-agency-api-test.qniao.cn, headers={'Content-Type': 'application/json', 'X-APP-ID': '50325897884795880', 'Authorization': 'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw=='}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
|
|
<msg timestamp="20240326 11:19:50.224" level="DEBUG">Creating session: dating</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.224" endtime="20240326 11:19:50.224"/>
|
|
</kw>
|
|
<kw name="GET On Session" library="RequestsLibrary">
|
|
<var>${reps}</var>
|
|
<arg>dating</arg>
|
|
<arg>/dating-agency-service/user/get/marriage/information/details</arg>
|
|
<arg>params=userId=${userId}</arg>
|
|
<doc>Sends a GET request on a previously created HTTP Session.</doc>
|
|
<msg timestamp="20240326 11:19:50.224" level="DEBUG">Starting new HTTP connection (1): dating-agency-api-test.qniao.cn</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">http://dating-agency-api-test.qniao.cn:80 "GET /dating-agency-service/user/get/marriage/information/details?userId=969960467432869888 HTTP/1.1" 200 None</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="INFO">GET Request : url=http://dating-agency-api-test.qniao.cn/dating-agency-service/user/get/marriage/information/details?userId=969960467432869888
|
|
path_url=/dating-agency-service/user/get/marriage/information/details?userId=969960467432869888
|
|
headers={'User-Agent': 'python-requests/2.15.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'X-APP-ID': '50325897884795880', 'Authorization': 'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw=='}
|
|
body=None
|
|
</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">utf-8 confidence = 0.99</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">SHIFT_JIS Japanese confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">EUC-JP Japanese confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">GB2312 Chinese confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">EUC-KR Korean confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">CP949 Korean confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">Big5 Chinese confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">EUC-TW Taiwan confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">windows-1251 Russian confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">KOI8-R Russian confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">ISO-8859-5 Russian confidence = 0.0</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">MacCyrillic Russian confidence = 0.02064309704692273</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">IBM866 Russian confidence = 0.04149141363617932</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">IBM855 Russian confidence = 0.05342398076950387</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">ISO-8859-7 Greek confidence = 0.0</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">windows-1253 Greek confidence = 0.0</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">ISO-8859-5 Bulgairan confidence = 0.0</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">windows-1251 Bulgarian confidence = 0.0</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">TIS-620 Thai confidence = 0.04835541979932631</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">ISO-8859-9 Turkish confidence = 0.33770660246514794</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">windows-1255 Hebrew confidence = 0.0</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">windows-1255 Hebrew confidence = 0.0</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">windows-1255 Hebrew confidence = 0.0</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">utf-8 confidence = 0.99</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">SHIFT_JIS Japanese confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">EUC-JP Japanese confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">GB2312 Chinese confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">EUC-KR Korean confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">CP949 Korean confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">Big5 Chinese confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="DEBUG">EUC-TW Taiwan confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="INFO">GET Response : url=http://dating-agency-api-test.qniao.cn/dating-agency-service/user/get/marriage/information/details?userId=969960467432869888
|
|
status=200, reason=
|
|
headers={'Server': 'nginx/1.16.1', 'Date': 'Tue, 26 Mar 2024 03:19:50 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":{"id":"969960468829573120","isDelete":false,"createTime":"2024-03-26 11:17:42","updateTime":null,"event":null,"accountId":null,"userId":969960467432869888,"nickName":"沈艳艳","name":null,"profilePhoto":"https://dating-agency-test.oss-accelerate.aliyuncs.com/761fc775f7189b611dbd157218a6b4b8.jpg","identityCard":null,"genderCode":1,"genderValue":"女","homeCountryCode":null,"homeCountry":null,"provinceCode":440000,"provinceName":"广东省","cityCode":440300,"cityName":"深圳市","districtCode":440306,"districtName":"宝安区","birthYear":"1987","birthDate":null,"constellationCode":8,"constellation":"处女座","chineseZodiacCode":null,"chineseZodiac":null,"height":175,"weight":128,"educationCode":1,"education":"中专","maritalStatusCode":0,"maritalStatusName":"未婚","minimumIncome":5001,"maximumIncome":8000,"incomeCode":2,"income":"5001~8000","diplomaVerificationCode":null,"describeInfo":"身高最好172以上吧,不过长相喜欢干净斯文清瘦一点的,有少年感。希望是双眼皮或者是单眼皮大眼睛。至于三观是否一致,只有接触之后才能知道啦。","self":null,"domicilePlaceProvinceCode":440000,"domicilePlaceProvinceName":"广东省","domicilePlaceCityCode":440300,"domicilePlaceCityName":"深圳市","nationCode":12,"nation":"侗族","bodilyFormCode":3,"bodilyForm":"肥胖","accountTypeCode":1,"accountTypeName":"农村","nationalityCode":null,"nationality":null,"nativePlaceCode":440000,"nativePlaceName":"广东省","industryCode":17,"industry":"交通运输","occupationCode":175,"occupation":"乘务员","onlyChild":null,"carPurchaseSituationCode":0,"carPurchaseSituation":"未购车","propertyPermitsCode":4,"propertyPermits":"婚后购房","wechatId":null,"auditProfilePhoto":null,"photoList":[],"describeAuditStatus":null,"describeAudit":null,"fillSerialNumber":null,"demandMarriage":null,"marriageSeekingContacts":null,"age":null}}
|
|
</msg>
|
|
<msg timestamp="20240326 11:19:50.296" level="INFO">${reps} = <Response [200]></msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.224" endtime="20240326 11:19:50.296"/>
|
|
</kw>
|
|
<kw name="Get From Dictionary" library="Collections">
|
|
<var>${miId}</var>
|
|
<arg>${reps.json()['data']}</arg>
|
|
<arg>id</arg>
|
|
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
|
|
<msg timestamp="20240326 11:19:50.296" level="INFO">${miId} = 969960468829573120</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.296" endtime="20240326 11:19:50.296"/>
|
|
</kw>
|
|
<kw name="Get From Dictionary" library="Collections">
|
|
<var>${nickName}</var>
|
|
<arg>${reps.json()['data']}</arg>
|
|
<arg>nickName</arg>
|
|
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
|
|
<msg timestamp="20240326 11:19:50.296" level="INFO">${nickName} = 沈艳艳</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.296" endtime="20240326 11:19:50.296"/>
|
|
</kw>
|
|
<kw name="Create List" library="BuiltIn">
|
|
<var>${miId_list}</var>
|
|
<doc>Returns a list containing given items.</doc>
|
|
<msg timestamp="20240326 11:19:50.296" level="INFO">${miId_list} = []</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.296" endtime="20240326 11:19:50.296"/>
|
|
</kw>
|
|
<kw name="Get From Dictionary" library="Collections">
|
|
<var>${genderCode}</var>
|
|
<arg>${reps.json()['data']}</arg>
|
|
<arg>genderCode</arg>
|
|
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
|
|
<msg timestamp="20240326 11:19:50.313" level="INFO">${genderCode} = 1</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.312" endtime="20240326 11:19:50.313"/>
|
|
</kw>
|
|
<kw name="Get From Dictionary" library="Collections">
|
|
<var>${message}</var>
|
|
<arg>${reps.json()}</arg>
|
|
<arg>message</arg>
|
|
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
|
|
<msg timestamp="20240326 11:19:50.313" level="INFO">${message} = successful</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.313" endtime="20240326 11:19:50.313"/>
|
|
</kw>
|
|
<kw name="Append To List" library="Collections">
|
|
<arg>${miId_list}</arg>
|
|
<arg>${miId}</arg>
|
|
<doc>Adds ``values`` to the end of ``list``.</doc>
|
|
<status status="PASS" starttime="20240326 11:19:50.313" endtime="20240326 11:19:50.313"/>
|
|
</kw>
|
|
<kw name="Should Be Equal As Strings" library="BuiltIn">
|
|
<arg>${message}</arg>
|
|
<arg>successful</arg>
|
|
<doc>Fails if objects are unequal after converting them to strings.</doc>
|
|
<msg timestamp="20240326 11:19:50.315" level="DEBUG">Argument types are:
|
|
<class 'str'>
|
|
<class 'str'></msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.313" endtime="20240326 11:19:50.315"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:50.224" endtime="20240326 11:19:50.315"/>
|
|
</iter>
|
|
<status status="PASS" starttime="20240326 11:19:50.224" endtime="20240326 11:19:50.315"/>
|
|
</for>
|
|
<kw name="Set Global Variable" library="BuiltIn">
|
|
<arg>${nickName}</arg>
|
|
<doc>Makes a variable available globally in all tests and suites.</doc>
|
|
<msg timestamp="20240326 11:19:50.316" level="INFO">${nickName} = 沈艳艳</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.315" endtime="20240326 11:19:50.316"/>
|
|
</kw>
|
|
<kw name="Set Global Variable" library="BuiltIn">
|
|
<arg>${miId_list}</arg>
|
|
<doc>Makes a variable available globally in all tests and suites.</doc>
|
|
<msg timestamp="20240326 11:19:50.316" level="INFO">${miId_list} = ['969960468829573120']</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.316" endtime="20240326 11:19:50.316"/>
|
|
</kw>
|
|
<kw name="Set Global Variable" library="BuiltIn">
|
|
<arg>${genderCode}</arg>
|
|
<doc>Makes a variable available globally in all tests and suites.</doc>
|
|
<msg timestamp="20240326 11:19:50.317" level="INFO">${genderCode} = 1</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.316" endtime="20240326 11:19:50.317"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:50.224" endtime="20240326 11:19:50.317"/>
|
|
</kw>
|
|
<kw name="When 提价婚介征婚人相册审核" library="Authentication" sourcename="提价${dating}征婚人相册审核">
|
|
<kw name="Set Variable" library="BuiltIn">
|
|
<var>${man_imgUrllist}</var>
|
|
<arg>["https://dating-agency-test.oss-accelerate.aliyuncs.com/30464b28455d6ddbc1f049ce4adfda7a.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/c7c968a93cff69375df767aefe112da4.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/9e1c238e45a3c9264b83c0b1d4054019.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/0c1e15d1c956cb8bb678b2a1f7992f76.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/aea0caca25438b7490305cd4c704d515.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/14eee17ccd0333cda335d68004885f1f.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/863db444113cabe238ce37e1ff12d8c8.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/42e77d2434934a6fc24638fd5bf130d6.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/122668a4d1cc4fcffd91fc3d2934fc8b.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/24ef3e3c4e781b97c9e3da52cc2a6a88.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/c91757deace453ee22c3d12ea9913bd0.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/b2b34146d7354dab2d7a7c6e65395762.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/905cbc906449e997be51c6b129c9481e.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/18a7ce70dbba030da53442f0ad55e63b.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/991c4bc6f06c1c3fb1d6a9a5178ee34c.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/df8705ac114d936428d0765f78fc3af8.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/5d4eeebbf9f7df899a8964d3c802a2b7.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/61971786fabc9be4718e10f9323649ef.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/f99a80033c77b990f9d2c75c2e6b6c1e.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/6647f59b5f8057c9aa67324261153cdd.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/fde465e0db7e83a6a29ad133c270c8ba.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/647e941c007594cd32d977b172efe58a.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/ca8faec9558e2aae046f8620fd21fed6.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/82e53568724f2010025231a600fd78b2.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/e40ca792f19cb70f045ebfe04c57c52c.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/9e62e2e3ad1b53d20a933a651c958201.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/7f7e09f9c1f83b68de7967df210716d4.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/3d9ccb6c9206e28c3dd6104d38eccd19.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/ccc7a8fea47b80921b7cc790c87d6bc1.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/71a5453ecfd81a21c7fbbbcea50ec6ab.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/bc07ad3c778a592b48a48a01a6e6bcee.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/228b58091bcdac00789bcefd77886cf2.jpg"]</arg>
|
|
<doc>Returns the given values which can then be assigned to a variables.</doc>
|
|
<msg timestamp="20240326 11:19:50.318" level="INFO">${man_imgUrllist} = ["https://dating-agency-test.oss-accelerate.aliyuncs.com/30464b28455d6ddbc1f049ce4adfda7a.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/c7c968a93cff69375df767aefe112da4.jpg","https://da...</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.317" endtime="20240326 11:19:50.318"/>
|
|
</kw>
|
|
<kw name="Evaluate" library="BuiltIn">
|
|
<var>${manimgUrl_data}</var>
|
|
<arg>random.sample(${man_imgUrllist},2)</arg>
|
|
<arg>random,string</arg>
|
|
<doc>Evaluates the given expression in Python and returns the result.</doc>
|
|
<msg timestamp="20240326 11:19:50.319" level="INFO">${manimgUrl_data} = ['https://dating-agency-test.oss-accelerate.aliyuncs.com/3d9ccb6c9206e28c3dd6104d38eccd19.jpg', 'https://dating-agency-test.oss-accelerate.aliyuncs.com/905cbc906449e997be51c6b129c9481e.jpg']</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.318" endtime="20240326 11:19:50.319"/>
|
|
</kw>
|
|
<kw name="Evaluate" library="BuiltIn">
|
|
<var>${manimgUrl_List}</var>
|
|
<arg>demjson.encode(${manimgUrl_data})</arg>
|
|
<arg>demjson</arg>
|
|
<doc>Evaluates the given expression in Python and returns the result.</doc>
|
|
<msg timestamp="20240326 11:19:50.319" level="INFO">${manimgUrl_List} = ["https://dating-agency-test.oss-accelerate.aliyuncs.com/3d9ccb6c9206e28c3dd6104d38eccd19.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/905cbc906449e997be51c6b129c9481e.jpg"]</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.319" endtime="20240326 11:19:50.319"/>
|
|
</kw>
|
|
<kw name="Set Variable" library="BuiltIn">
|
|
<var>${woman_imgUrllist}</var>
|
|
<arg>["https://dating-agency-test.oss-accelerate.aliyuncs.com/71e2ac4806378e5c6f29e2e9d01f1b3b.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/cd5dda0a1f539861cc78f1bef4a8e8ab.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/82d51050e13fea977a054a0208d1e616.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/c6fc977ab1effc2f57c1b61ea0b4a10b.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/59aae418037d0bf103f63de805eeb86b.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/960b3d371ed4af8788c1fc4a8c889933.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/884c65f91e6b346bb7c9e26e750ce4d3.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/c5e4bca3b533fdfbcc2557e83512215c.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/bbef238ab2bea9bd3e831d0e9d9557e4.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/1c771bf0c01eb0e5fab3fede9dab7608.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/6df02f3978e72f14fb2b33b9a3e56fe9.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/c9525ae0873fe94a5dd15a01717c07a0.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/417ebe61e78592b42d212eb00a2ec23c.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/1adabba412cc81d3fa40fdf78eba46d7.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/afcf0ad64c7224a8a08163cc98ef6cb6.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/84b55bb41fcf7350d2c86d0d518bf546.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/80d9c390581014ea327efabc749cf042.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/7ea11516b07156a1bcfa227c4fef9207.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/abae88e4e07536531d0ac7d03f7f576b.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/a2826ad22aab2d082bb3598b387f1689.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/b26399e635fa7dd44808342595fa334a.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/b3a641d16e9e547228a8ccbc8e7e5aef.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/cc28a387d249a8673a0cd24cf9e49896.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/7615cc23bd2cf922e50e5fb3810e749f.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/d0d15693e059e2525d4ea469451e4387.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/f43b18d37584c0797d8ef3606d578a11.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/55f9f41f1ff9f2b71837af94ec02126a.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/af74f07f326842a4c958f855ce11544b.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/753745c3d3bdbffc9fecff9b3869d880.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/5e3fb99b37448612749dd8b3fc5cf917.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/91b79f1e3eb2b13fa334de8157a6b9be.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/94ebc0dc461bea0feea8876620a922fb.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/e94e9f29216a38527dbdc3aa75f7f415.jpg"]</arg>
|
|
<doc>Returns the given values which can then be assigned to a variables.</doc>
|
|
<msg timestamp="20240326 11:19:50.320" level="INFO">${woman_imgUrllist} = ["https://dating-agency-test.oss-accelerate.aliyuncs.com/71e2ac4806378e5c6f29e2e9d01f1b3b.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/cd5dda0a1f539861cc78f1bef4a8e8ab.jpg","https://da...</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.320" endtime="20240326 11:19:50.320"/>
|
|
</kw>
|
|
<kw name="Evaluate" library="BuiltIn">
|
|
<var>${womanimgUrl_data}</var>
|
|
<arg>random.sample(${woman_imgUrllist},3)</arg>
|
|
<arg>random,string</arg>
|
|
<doc>Evaluates the given expression in Python and returns the result.</doc>
|
|
<msg timestamp="20240326 11:19:50.321" level="INFO">${womanimgUrl_data} = ['https://dating-agency-test.oss-accelerate.aliyuncs.com/84b55bb41fcf7350d2c86d0d518bf546.jpg', 'https://dating-agency-test.oss-accelerate.aliyuncs.com/cd5dda0a1f539861cc78f1bef4a8e8ab.jpg', 'https://...</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.320" endtime="20240326 11:19:50.321"/>
|
|
</kw>
|
|
<kw name="Evaluate" library="BuiltIn">
|
|
<var>${womanimgUrl_List}</var>
|
|
<arg>demjson.encode(${womanimgUrl_data})</arg>
|
|
<arg>demjson</arg>
|
|
<doc>Evaluates the given expression in Python and returns the result.</doc>
|
|
<msg timestamp="20240326 11:19:50.322" level="INFO">${womanimgUrl_List} = ["https://dating-agency-test.oss-accelerate.aliyuncs.com/84b55bb41fcf7350d2c86d0d518bf546.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/cd5dda0a1f539861cc78f1bef4a8e8ab.jpg","https://da...</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.321" endtime="20240326 11:19:50.322"/>
|
|
</kw>
|
|
<kw name="Evaluate" library="BuiltIn">
|
|
<var>${Code}</var>
|
|
<arg>6</arg>
|
|
<doc>Evaluates the given expression in Python and returns the result.</doc>
|
|
<msg timestamp="20240326 11:19:50.322" level="INFO">${Code} = 6</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.322" endtime="20240326 11:19:50.322"/>
|
|
</kw>
|
|
<for flavor="IN ZIP">
|
|
<var>${miId}</var>
|
|
<var>${client_header}</var>
|
|
<value>${miId_list}</value>
|
|
<value>${Cheader_list}</value>
|
|
<iter>
|
|
<var name="${miId}">969960468829573120</var>
|
|
<var name="${client_header}">{'Content-Type':'application/json','X-APP-ID':'50325897884795880','Authorization':'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw=='}</var>
|
|
<kw name="Create Session" library="RequestsLibrary">
|
|
<arg>dating</arg>
|
|
<arg>${${dating}.dating域名}</arg>
|
|
<arg>${client_header}</arg>
|
|
<doc>Create Session: create a HTTP session to a server</doc>
|
|
<msg timestamp="20240326 11:19:50.324" level="INFO">Creating Session using : alias=dating, url=http://dating-agency-api-test.qniao.cn, headers={'Content-Type': 'application/json', 'X-APP-ID': '50325897884795880', 'Authorization': 'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw=='}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
|
|
<msg timestamp="20240326 11:19:50.324" level="DEBUG">Creating session: dating</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.323" endtime="20240326 11:19:50.324"/>
|
|
</kw>
|
|
<kw name="Set Variable If" library="BuiltIn">
|
|
<var>${data}</var>
|
|
<arg>${genderCode}==1</arg>
|
|
<arg>{ \ \ \ \ "authenticationCode": "${Code}", \ \ \ \ "miId": "${miId}", \ \ \ \ "imgUrl": ${womanimgUrl_List} }</arg>
|
|
<arg>{ \ \ \ \ "authenticationCode": "${Code}", \ \ \ \ "miId": "${miId}", \ \ \ \ "imgUrl": ${manimgUrl_List} }</arg>
|
|
<doc>Sets variable based on the given condition.</doc>
|
|
<msg timestamp="20240326 11:19:50.325" level="INFO">${data} = { "authenticationCode": "6", "miId": "969960468829573120", "imgUrl": ["https://dating-agency-test.oss-accelerate.aliyuncs.com/84b55bb41fcf7350d2c86d0d518bf546.jpg","https://dating-agency-t...</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.324" endtime="20240326 11:19:50.325"/>
|
|
</kw>
|
|
<kw name="POST On Session" library="RequestsLibrary">
|
|
<var>${reps}</var>
|
|
<arg>dating</arg>
|
|
<arg>dating-agency-service/user/save/certification/audit</arg>
|
|
<arg>${data.encode('utf-8')}</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<msg timestamp="20240326 11:19:50.326" level="DEBUG">Starting new HTTP connection (1): dating-agency-api-test.qniao.cn</msg>
|
|
<msg timestamp="20240326 11:19:50.598" level="DEBUG">http://dating-agency-api-test.qniao.cn:80 "POST /dating-agency-service/user/save/certification/audit HTTP/1.1" 200 None</msg>
|
|
<msg timestamp="20240326 11:19:50.598" level="INFO">POST Request : url=http://dating-agency-api-test.qniao.cn/dating-agency-service/user/save/certification/audit
|
|
path_url=/dating-agency-service/user/save/certification/audit
|
|
headers={'User-Agent': 'python-requests/2.15.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'X-APP-ID': '50325897884795880', 'Authorization': 'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw==', 'Content-Length': '366'}
|
|
body=b'{ "authenticationCode": "6", "miId": "969960468829573120", "imgUrl": ["https://dating-agency-test.oss-accelerate.aliyuncs.com/84b55bb41fcf7350d2c86d0d518bf546.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/cd5dda0a1f539861cc78f1bef4a8e8ab.jpg","https://dating-agency-test.oss-accelerate.aliyuncs.com/c6fc977ab1effc2f57c1b61ea0b4a10b.jpg"] }'
|
|
</msg>
|
|
<msg timestamp="20240326 11:19:50.598" level="INFO">POST Response : url=http://dating-agency-api-test.qniao.cn/dating-agency-service/user/save/certification/audit
|
|
status=200, reason=
|
|
headers={'Server': 'nginx/1.16.1', 'Date': 'Tue, 26 Mar 2024 03:19:50 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":"969961006157664256"}
|
|
</msg>
|
|
<msg timestamp="20240326 11:19:50.598" level="INFO">${reps} = <Response [200]></msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.325" endtime="20240326 11:19:50.598"/>
|
|
</kw>
|
|
<kw name="Get From Dictionary" library="Collections">
|
|
<var>${auditId}</var>
|
|
<arg>${reps.json()}</arg>
|
|
<arg>data</arg>
|
|
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
|
|
<msg timestamp="20240326 11:19:50.598" level="INFO">${auditId} = 969961006157664256</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.598" endtime="20240326 11:19:50.598"/>
|
|
</kw>
|
|
<kw name="Get From Dictionary" library="Collections">
|
|
<var>${message}</var>
|
|
<arg>${reps.json()}</arg>
|
|
<arg>message</arg>
|
|
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
|
|
<msg timestamp="20240326 11:19:50.598" level="INFO">${message} = successful</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.598" endtime="20240326 11:19:50.598"/>
|
|
</kw>
|
|
<kw name="Should Be Equal As Strings" library="BuiltIn">
|
|
<arg>${message}</arg>
|
|
<arg>successful</arg>
|
|
<doc>Fails if objects are unequal after converting them to strings.</doc>
|
|
<msg timestamp="20240326 11:19:50.598" level="DEBUG">Argument types are:
|
|
<class 'str'>
|
|
<class 'str'></msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.598" endtime="20240326 11:19:50.598"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:50.323" endtime="20240326 11:19:50.598"/>
|
|
</iter>
|
|
<status status="PASS" starttime="20240326 11:19:50.323" endtime="20240326 11:19:50.598"/>
|
|
</for>
|
|
<kw name="Set Global Variable" library="BuiltIn">
|
|
<arg>${auditId}</arg>
|
|
<doc>Makes a variable available globally in all tests and suites.</doc>
|
|
<msg timestamp="20240326 11:19:50.598" level="INFO">${auditId} = 969961006157664256</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.598" endtime="20240326 11:19:50.598"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:50.317" endtime="20240326 11:19:50.598"/>
|
|
</kw>
|
|
<kw name="Then 查询数据库相册审核表" library="Authentication">
|
|
<kw name="Connect To Database Using Custom Params" library="DatabaseLibrary">
|
|
<arg>pymysql</arg>
|
|
<arg>database='dating_agency_service',user='root',password='qniaothreetwoonego',host='8.135.8.221'</arg>
|
|
<doc>Loads the DB API 2.0 module given `dbapiModuleName` then uses it to
|
|
connect to the database using the map string `db_custom_param_string`.</doc>
|
|
<msg timestamp="20240326 11:19:50.641" level="INFO">Executing : Connect To Database Using Custom Params : pymysql.connect(db_api_2.connect(database='dating_agency_service',user='root',password='qniaothreetwoonego',host='8.135.8.221')) </msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.598" endtime="20240326 11:19:50.680"/>
|
|
</kw>
|
|
<kw name="Query" library="DatabaseLibrary">
|
|
<var>${check}</var>
|
|
<arg>SELECT id FROM `dating_agency_service`.`da_marriage_information_certification_audit` WHERE `id` = '${auditId}' AND `authentication_code` = '6' AND `is_delete` = '0'</arg>
|
|
<doc>Uses the input `selectStatement` to query for the values that will be returned as a list of tuples. Set optional
|
|
input `sansTran` to True to run command without an explicit transaction commit or rollback.
|
|
Set optional input `returnAsDict` to True to return values as a list of dictionaries.</doc>
|
|
<msg timestamp="20240326 11:19:50.680" level="INFO">Executing : Query | SELECT id FROM `dating_agency_service`.`da_marriage_information_certification_audit` WHERE `id` = '969961006157664256' AND `authentication_code` = '6' AND `is_delete` = '0' </msg>
|
|
<msg timestamp="20240326 11:19:50.707" level="INFO">${check} = ((969961006157664256,),)</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.680" endtime="20240326 11:19:50.707"/>
|
|
</kw>
|
|
<kw name="Set Variable" library="BuiltIn">
|
|
<var>${id}</var>
|
|
<arg>${check[0][0]}</arg>
|
|
<doc>Returns the given values which can then be assigned to a variables.</doc>
|
|
<msg timestamp="20240326 11:19:50.708" level="INFO">${id} = 969961006157664256</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.707" endtime="20240326 11:19:50.708"/>
|
|
</kw>
|
|
<kw name="Should Be Equal As Strings" library="BuiltIn">
|
|
<arg>${id}</arg>
|
|
<arg>${auditId}</arg>
|
|
<doc>Fails if objects are unequal after converting them to strings.</doc>
|
|
<msg timestamp="20240326 11:19:50.709" level="INFO">Argument types are:
|
|
<class 'int'>
|
|
<class 'str'></msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.708" endtime="20240326 11:19:50.709"/>
|
|
</kw>
|
|
<kw name="Disconnect From Database" library="DatabaseLibrary">
|
|
<doc>Disconnects from the database.</doc>
|
|
<msg timestamp="20240326 11:19:50.709" level="INFO">Executing : Disconnect From Database</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.709" endtime="20240326 11:19:50.709"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:50.598" endtime="20240326 11:19:50.709"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:50.224" endtime="20240326 11:19:50.710"/>
|
|
</test>
|
|
<doc>资料认证</doc>
|
|
<status status="PASS" starttime="20240326 11:19:50.120" endtime="20240326 11:19:50.710"/>
|
|
</suite>
|
|
<doc>征婚人资料</doc>
|
|
<status status="PASS" starttime="20240326 11:19:50.120" endtime="20240326 11:19:50.711"/>
|
|
</suite>
|
|
<status status="PASS" starttime="20240326 11:19:50.120" endtime="20240326 11:19:50.712"/>
|
|
</suite>
|
|
<status status="PASS" starttime="20240326 11:19:50.105" endtime="20240326 11:19:50.713"/>
|
|
</suite>
|
|
<suite id="s1-s3" name="2-Web" source="D:\LYL\Study\Robot_framework\space\Dating-agency\2-Web">
|
|
<suite id="s1-s3-s1" name="InfoAudit" source="D:\LYL\Study\Robot_framework\space\Dating-agency\2-Web\InfoAudit">
|
|
<suite id="s1-s3-s1-s1" name="AuditInfomation" source="D:\LYL\Study\Robot_framework\space\Dating-agency\2-Web\InfoAudit\AuditInfomation.robot">
|
|
<kw name="Import Variables" library="BuiltIn" type="SETUP">
|
|
<arg>${EXECDIR}\\DA_data.yaml</arg>
|
|
<doc>Imports a variable file with the given path and optional arguments.</doc>
|
|
<status status="PASS" starttime="20240326 11:19:50.721" endtime="20240326 11:19:50.721"/>
|
|
</kw>
|
|
<test id="s1-s3-s1-s1-t1" name="审核征婚人提交的资料-相册" line="6">
|
|
<kw name="Given 查询婚介平台用户资料数据" library="Infomation" sourcename="查询${dating}平台用户资料数据">
|
|
<for flavor="IN">
|
|
<var>${admin_header}</var>
|
|
<value>@{Aheader_list}</value>
|
|
<iter>
|
|
<var name="${admin_header}">{'Content-Type':'application/json','X-APP-ID':'50325897884795881','Authorization':'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw==','X-Organization-Id':'96...</var>
|
|
<kw name="Create Session" library="RequestsLibrary">
|
|
<arg>dating</arg>
|
|
<arg>${${dating}.dating域名}</arg>
|
|
<arg>${admin_header}</arg>
|
|
<doc>Create Session: create a HTTP session to a server</doc>
|
|
<msg timestamp="20240326 11:19:50.721" level="INFO">Creating Session using : alias=dating, url=http://dating-agency-api-test.qniao.cn, headers={'Content-Type': 'application/json', 'X-APP-ID': '50325897884795881', 'Authorization': 'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw==', 'X-Organization-Id': '963432943739605555'}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
|
|
<msg timestamp="20240326 11:19:50.721" level="DEBUG">Creating session: dating</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.721" endtime="20240326 11:19:50.721"/>
|
|
</kw>
|
|
<kw name="GET On Session" library="RequestsLibrary">
|
|
<var>${reps}</var>
|
|
<arg>dating</arg>
|
|
<arg>dating-agency-service/user/get/marriage/information/audit/page</arg>
|
|
<arg>params=pageSize=10&name=${nickName}&pageNum=1</arg>
|
|
<doc>Sends a GET request on a previously created HTTP Session.</doc>
|
|
<msg timestamp="20240326 11:19:50.721" level="DEBUG">Starting new HTTP connection (1): dating-agency-api-test.qniao.cn</msg>
|
|
<msg timestamp="20240326 11:19:50.781" level="DEBUG">http://dating-agency-api-test.qniao.cn:80 "GET /dating-agency-service/user/get/marriage/information/audit/page?pageSize=10&name=%E6%B2%88%E8%89%B3%E8%89%B3&pageNum=1 HTTP/1.1" 200 None</msg>
|
|
<msg timestamp="20240326 11:19:50.781" level="INFO">GET Request : url=http://dating-agency-api-test.qniao.cn/dating-agency-service/user/get/marriage/information/audit/page?pageSize=10&name=%E6%B2%88%E8%89%B3%E8%89%B3&pageNum=1
|
|
path_url=/dating-agency-service/user/get/marriage/information/audit/page?pageSize=10&name=%E6%B2%88%E8%89%B3%E8%89%B3&pageNum=1
|
|
headers={'User-Agent': 'python-requests/2.15.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'X-APP-ID': '50325897884795881', 'Authorization': 'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw==', 'X-Organization-Id': '963432943739605555'}
|
|
body=None
|
|
</msg>
|
|
<msg timestamp="20240326 11:19:50.784" level="DEBUG">utf-8 confidence = 0.99</msg>
|
|
<msg timestamp="20240326 11:19:50.784" level="DEBUG">SHIFT_JIS Japanese confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.784" level="DEBUG">EUC-JP Japanese confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.784" level="DEBUG">GB2312 Chinese confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.784" level="DEBUG">EUC-KR Korean confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.784" level="DEBUG">CP949 Korean confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.784" level="DEBUG">Big5 Chinese confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.784" level="DEBUG">EUC-TW Taiwan confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.784" level="DEBUG">windows-1251 Russian confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.784" level="DEBUG">KOI8-R Russian confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.784" level="DEBUG">ISO-8859-5 Russian confidence = 0.0</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">MacCyrillic Russian confidence = 0.0</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">IBM866 Russian confidence = 0.19843192857244296</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">IBM855 Russian confidence = 0.12984995325921084</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">ISO-8859-7 Greek confidence = 0.0</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">windows-1253 Greek confidence = 0.0</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">ISO-8859-5 Bulgairan confidence = 0.0</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">windows-1251 Bulgarian confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">TIS-620 Thai confidence = 0.03737273458346625</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">ISO-8859-9 Turkish confidence = 0.42996075468780526</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">windows-1255 Hebrew confidence = 0.0</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">windows-1255 Hebrew confidence = 0.0</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">windows-1255 Hebrew confidence = 0.0</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">utf-8 confidence = 0.99</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">SHIFT_JIS Japanese confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">EUC-JP Japanese confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">GB2312 Chinese confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">EUC-KR Korean confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">CP949 Korean confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.785" level="DEBUG">Big5 Chinese confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.786" level="DEBUG">EUC-TW Taiwan confidence = 0.01</msg>
|
|
<msg timestamp="20240326 11:19:50.786" level="INFO">GET Response : url=http://dating-agency-api-test.qniao.cn/dating-agency-service/user/get/marriage/information/audit/page?pageSize=10&name=%E6%B2%88%E8%89%B3%E8%89%B3&pageNum=1
|
|
status=200, reason=
|
|
headers={'Server': 'nginx/1.16.1', 'Date': 'Tue, 26 Mar 2024 03:19:50 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":{"records":[{"id":"969961006157664256","phone":"18745960237","name":"沈艳艳","status":0,"authenticationCode":6,"authenticationName":"相册审核","createTime":"2024-03-26 11:19:50","auditTime":null},{"id":"969960484742762496","phone":"18745960237","name":"沈艳艳","status":1,"authenticationCode":8,"authenticationName":"头像审核","createTime":"2024-03-26 11:17:46","auditTime":"2024-03-26 11:17:54"},{"id":"969960979448336384","phone":"18745960237","name":"沈艳艳","status":1,"authenticationCode":7,"authenticationName":"介绍信息审核","createTime":"2024-03-26 11:19:44","auditTime":"2024-03-26 11:19:44"}],"total":3,"size":10,"current":1,"pages":1}}
|
|
</msg>
|
|
<msg timestamp="20240326 11:19:50.786" level="INFO">${reps} = <Response [200]></msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.721" endtime="20240326 11:19:50.786"/>
|
|
</kw>
|
|
<kw name="Get From Dictionary" library="Collections">
|
|
<var>${records}</var>
|
|
<arg>${reps.json()['data']}</arg>
|
|
<arg>records</arg>
|
|
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
|
|
<msg timestamp="20240326 11:19:50.787" level="INFO">${records} = [{'id': '969961006157664256', 'phone': '18745960237', 'name': '沈艳艳', 'status': 0, 'authenticationCode': 6, 'authenticationName': '相册审核', 'createTime': '2024-03-26 11:19:50', 'auditTime': None}, {'id':...</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.786" endtime="20240326 11:19:50.787"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:50.721" endtime="20240326 11:19:50.788"/>
|
|
</iter>
|
|
<status status="PASS" starttime="20240326 11:19:50.721" endtime="20240326 11:19:50.788"/>
|
|
</for>
|
|
<for flavor="IN">
|
|
<var>${info}</var>
|
|
<value>@{records}</value>
|
|
<iter>
|
|
<var name="${info}">{'id': '969961006157664256', 'phone': '18745960237', 'name': '沈艳艳', 'status': 0, 'authenticationCode': 6, 'authenticationName': '相册审核', 'createTime': '2024-03-26 11:19:50', 'auditTime': None}</var>
|
|
<kw name="Get From Dictionary" library="Collections">
|
|
<var>${InfoId}</var>
|
|
<arg>${info}</arg>
|
|
<arg>id</arg>
|
|
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
|
|
<msg timestamp="20240326 11:19:50.789" level="INFO">${InfoId} = 969961006157664256</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.789" endtime="20240326 11:19:50.789"/>
|
|
</kw>
|
|
<kw name="Exit For Loop If" library="BuiltIn">
|
|
<arg>${InfoId}==${auditId}</arg>
|
|
<doc>Stops executing the enclosing FOR loop if the ``condition`` is true.</doc>
|
|
<msg timestamp="20240326 11:19:50.789" level="INFO">Exiting for loop altogether.</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.789" endtime="20240326 11:19:50.789"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:50.788" endtime="20240326 11:19:50.789"/>
|
|
</iter>
|
|
<status status="PASS" starttime="20240326 11:19:50.788" endtime="20240326 11:19:50.791"/>
|
|
</for>
|
|
<kw name="Set Global Variable" library="BuiltIn">
|
|
<arg>${InfoId}</arg>
|
|
<doc>Makes a variable available globally in all tests and suites.</doc>
|
|
<msg timestamp="20240326 11:19:50.791" level="INFO">${InfoId} = 969961006157664256</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.791" endtime="20240326 11:19:50.791"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:50.721" endtime="20240326 11:19:50.791"/>
|
|
</kw>
|
|
<kw name="When 查询婚介平台审核资料-审核通过" library="Infomation" sourcename="查询${dating}平台审核资料-审核通过">
|
|
<for flavor="IN">
|
|
<var>${admin_header}</var>
|
|
<value>@{Aheader_list}</value>
|
|
<iter>
|
|
<var name="${admin_header}">{'Content-Type':'application/json','X-APP-ID':'50325897884795881','Authorization':'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw==','X-Organization-Id':'96...</var>
|
|
<kw name="Create Session" library="RequestsLibrary">
|
|
<arg>dating</arg>
|
|
<arg>${${dating}.dating域名}</arg>
|
|
<arg>${admin_header}</arg>
|
|
<doc>Create Session: create a HTTP session to a server</doc>
|
|
<msg timestamp="20240326 11:19:50.793" level="INFO">Creating Session using : alias=dating, url=http://dating-agency-api-test.qniao.cn, headers={'Content-Type': 'application/json', 'X-APP-ID': '50325897884795881', 'Authorization': 'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw==', 'X-Organization-Id': '963432943739605555'}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
|
|
<msg timestamp="20240326 11:19:50.793" level="DEBUG">Creating session: dating</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.792" endtime="20240326 11:19:50.793"/>
|
|
</kw>
|
|
<kw name="Set Variable" library="BuiltIn">
|
|
<var>${data}</var>
|
|
<arg>{"id":"${InfoId}","status":1}</arg>
|
|
<doc>Returns the given values which can then be assigned to a variables.</doc>
|
|
<msg timestamp="20240326 11:19:50.793" level="INFO">${data} = {"id":"969961006157664256","status":1}</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.793" endtime="20240326 11:19:50.793"/>
|
|
</kw>
|
|
<kw name="POST On Session" library="RequestsLibrary">
|
|
<var>${reps}</var>
|
|
<arg>dating</arg>
|
|
<arg>dating-agency-service/user/exe/certification/audit</arg>
|
|
<arg>${data.encode('utf-8')}</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<msg timestamp="20240326 11:19:50.793" level="DEBUG">Starting new HTTP connection (1): dating-agency-api-test.qniao.cn</msg>
|
|
<msg timestamp="20240326 11:19:50.936" level="DEBUG">http://dating-agency-api-test.qniao.cn:80 "POST /dating-agency-service/user/exe/certification/audit HTTP/1.1" 200 None</msg>
|
|
<msg timestamp="20240326 11:19:50.936" level="INFO">POST Request : url=http://dating-agency-api-test.qniao.cn/dating-agency-service/user/exe/certification/audit
|
|
path_url=/dating-agency-service/user/exe/certification/audit
|
|
headers={'User-Agent': 'python-requests/2.15.1', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Type': 'application/json', 'X-APP-ID': '50325897884795881', 'Authorization': 'QNT iHP4V/g6O5DXHixyNrf7trP4VTcB/I1I8ZWHFW8rCJH3dU57dhJGR6DeT0NjQfeeYyoi0UQGyiPfgpEeeg4PVw==', 'X-Organization-Id': '963432943739605555', 'Content-Length': '38'}
|
|
body=b'{"id":"969961006157664256","status":1}'
|
|
</msg>
|
|
<msg timestamp="20240326 11:19:50.936" level="INFO">POST Response : url=http://dating-agency-api-test.qniao.cn/dating-agency-service/user/exe/certification/audit
|
|
status=200, reason=
|
|
headers={'Server': 'nginx/1.16.1', 'Date': 'Tue, 26 Mar 2024 03:19:50 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":"969961006157664256"}
|
|
</msg>
|
|
<msg timestamp="20240326 11:19:50.936" level="INFO">${reps} = <Response [200]></msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.793" endtime="20240326 11:19:50.936"/>
|
|
</kw>
|
|
<kw name="Get From Dictionary" library="Collections">
|
|
<var>${data}</var>
|
|
<arg>${reps.json()}</arg>
|
|
<arg>data</arg>
|
|
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
|
|
<msg timestamp="20240326 11:19:50.936" level="INFO">${data} = 969961006157664256</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.936" endtime="20240326 11:19:50.936"/>
|
|
</kw>
|
|
<kw name="Get From Dictionary" library="Collections">
|
|
<var>${message}</var>
|
|
<arg>${reps.json()}</arg>
|
|
<arg>message</arg>
|
|
<doc>Returns a value from the given ``dictionary`` based on the given ``key``.</doc>
|
|
<msg timestamp="20240326 11:19:50.936" level="INFO">${message} = successful</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.936" endtime="20240326 11:19:50.936"/>
|
|
</kw>
|
|
<kw name="Should Be Equal As Strings" library="BuiltIn">
|
|
<arg>${message}</arg>
|
|
<arg>successful</arg>
|
|
<doc>Fails if objects are unequal after converting them to strings.</doc>
|
|
<msg timestamp="20240326 11:19:50.936" level="DEBUG">Argument types are:
|
|
<class 'str'>
|
|
<class 'str'></msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.936" endtime="20240326 11:19:50.936"/>
|
|
</kw>
|
|
<kw name="Set Global Variable" library="BuiltIn">
|
|
<arg>${data}</arg>
|
|
<doc>Makes a variable available globally in all tests and suites.</doc>
|
|
<msg timestamp="20240326 11:19:50.950" level="INFO">${data} = 969961006157664256</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.950" endtime="20240326 11:19:50.950"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:50.792" endtime="20240326 11:19:50.950"/>
|
|
</iter>
|
|
<status status="PASS" starttime="20240326 11:19:50.792" endtime="20240326 11:19:50.950"/>
|
|
</for>
|
|
<status status="PASS" starttime="20240326 11:19:50.791" endtime="20240326 11:19:50.950"/>
|
|
</kw>
|
|
<kw name="Then 查询数据库审核表数据" library="Infomation">
|
|
<kw name="Connect To Database Using Custom Params" library="DatabaseLibrary">
|
|
<arg>pymysql</arg>
|
|
<arg>database='dating_agency_service',user='root',password='qniaothreetwoonego',host='8.135.8.221'</arg>
|
|
<doc>Loads the DB API 2.0 module given `dbapiModuleName` then uses it to
|
|
connect to the database using the map string `db_custom_param_string`.</doc>
|
|
<msg timestamp="20240326 11:19:50.950" level="INFO">Executing : Connect To Database Using Custom Params : pymysql.connect(db_api_2.connect(database='dating_agency_service',user='root',password='qniaothreetwoonego',host='8.135.8.221')) </msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.950" endtime="20240326 11:19:50.982"/>
|
|
</kw>
|
|
<kw name="Query" library="DatabaseLibrary">
|
|
<var>${check}</var>
|
|
<arg>SELECT status FROM `dating_agency_service`.`da_marriage_information_certification_audit` WHERE `id` = '${data}'</arg>
|
|
<doc>Uses the input `selectStatement` to query for the values that will be returned as a list of tuples. Set optional
|
|
input `sansTran` to True to run command without an explicit transaction commit or rollback.
|
|
Set optional input `returnAsDict` to True to return values as a list of dictionaries.</doc>
|
|
<msg timestamp="20240326 11:19:50.982" level="INFO">Executing : Query | SELECT status FROM `dating_agency_service`.`da_marriage_information_certification_audit` WHERE `id` = '969961006157664256' </msg>
|
|
<msg timestamp="20240326 11:19:51.013" level="INFO">${check} = ((1,),)</msg>
|
|
<status status="PASS" starttime="20240326 11:19:50.982" endtime="20240326 11:19:51.013"/>
|
|
</kw>
|
|
<kw name="Set Variable" library="BuiltIn">
|
|
<var>${status}</var>
|
|
<arg>${check[0][0]}</arg>
|
|
<doc>Returns the given values which can then be assigned to a variables.</doc>
|
|
<msg timestamp="20240326 11:19:51.014" level="INFO">${status} = 1</msg>
|
|
<status status="PASS" starttime="20240326 11:19:51.014" endtime="20240326 11:19:51.015"/>
|
|
</kw>
|
|
<kw name="Should Be Equal As Numbers" library="BuiltIn">
|
|
<arg>${status}</arg>
|
|
<arg>1</arg>
|
|
<doc>Fails if objects are unequal after converting them to real numbers.</doc>
|
|
<msg timestamp="20240326 11:19:51.015" level="INFO">Argument types are:
|
|
<class 'int'>
|
|
<class 'str'></msg>
|
|
<status status="PASS" starttime="20240326 11:19:51.015" endtime="20240326 11:19:51.015"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:50.950" endtime="20240326 11:19:51.015"/>
|
|
</kw>
|
|
<status status="PASS" starttime="20240326 11:19:50.721" endtime="20240326 11:19:51.015"/>
|
|
</test>
|
|
<status status="PASS" starttime="20240326 11:19:50.717" endtime="20240326 11:19:51.016"/>
|
|
</suite>
|
|
<doc>资料审核</doc>
|
|
<status status="PASS" starttime="20240326 11:19:50.716" endtime="20240326 11:19:51.016"/>
|
|
</suite>
|
|
<status status="PASS" starttime="20240326 11:19:50.714" endtime="20240326 11:19:51.017"/>
|
|
</suite>
|
|
<status status="PASS" starttime="20240326 11:19:49.813" endtime="20240326 11:19:51.018"/>
|
|
</suite>
|
|
<statistics>
|
|
<total>
|
|
<stat pass="3" fail="0" skip="0">All Tests</stat>
|
|
</total>
|
|
<tag>
|
|
</tag>
|
|
<suite>
|
|
<stat pass="3" fail="0" skip="0" id="s1" name="Dating-agency">Dating-agency</stat>
|
|
<stat pass="1" fail="0" skip="0" id="s1-s1" name="0-Login">Dating-agency.0-Login</stat>
|
|
<stat pass="1" fail="0" skip="0" id="s1-s1-s1" name="Login-interface">Dating-agency.0-Login.Login-interface</stat>
|
|
<stat pass="1" fail="0" skip="0" id="s1-s2" name="1-Applet">Dating-agency.1-Applet</stat>
|
|
<stat pass="1" fail="0" skip="0" id="s1-s2-s1" name="2-Homepage">Dating-agency.1-Applet.2-Homepage</stat>
|
|
<stat pass="1" fail="0" skip="0" id="s1-s2-s1-s1" name="MarriageInfo">Dating-agency.1-Applet.2-Homepage.MarriageInfo</stat>
|
|
<stat pass="1" fail="0" skip="0" id="s1-s2-s1-s1-s1" name="DataAuthentication">Dating-agency.1-Applet.2-Homepage.MarriageInfo.DataAuthentication</stat>
|
|
<stat pass="1" fail="0" skip="0" id="s1-s3" name="2-Web">Dating-agency.2-Web</stat>
|
|
<stat pass="1" fail="0" skip="0" id="s1-s3-s1" name="InfoAudit">Dating-agency.2-Web.InfoAudit</stat>
|
|
<stat pass="1" fail="0" skip="0" id="s1-s3-s1-s1" name="AuditInfomation">Dating-agency.2-Web.InfoAudit.AuditInfomation</stat>
|
|
</suite>
|
|
</statistics>
|
|
<errors>
|
|
</errors>
|
|
</robot>
|