pymysql host='8.135.8.221',user='root', password='password', \ port=3306,database='ztb_recycle' No keyword with name 'Connect To Database Using Custom Params' found. No keyword with name 'Connect To Database Using Custom Params' found. Helper for quickly disabling all urllib3 warnings. Create Session: create a HTTP session to a server ZTBT https://api-client-uec-test.qniao.cn ${header} Creating Session using : alias=ZTBT, url=https://api-client-uec-test.qniao.cn, headers={'content-type': 'application/json', 'X-APP-ID': '470236309865238528'}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 Creates and returns a dictionary based on the given ``items``. account=18888888888 captcha=888888 accountType=2 ${data} ${data} = {'account': '18888888888', 'captcha': '888888', 'accountType': '2'} Returns the given values which can then be assigned to a variables. 18888888888 ${account} ${account} = 18888888888 Sends a POST request on a previously created HTTP Session. ZTBT uec/authorize/by-captcha json=${data} ${respones} POST Request : url=https://api-client-uec-test.qniao.cn/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', 'X-APP-ID': '470236309865238528', 'Content-Length': '67'} body=b'{"account": "18888888888", "captcha": "888888", "accountType": "2"}' POST Response : url=https://api-client-uec-test.qniao.cn/uec/authorize/by-captcha status=200, reason= headers={'Server': 'nginx/1.16.1', 'Date': 'Wed, 01 Dec 2021 03:55:35 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":"d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ==","userId":"659450159519895552"}} ${respones} = <Response [200]> Logs the given message with the given level. ${respones.status_code} 200 Logs the given message with the given level. ${respones.json()} {'code': 0, 'message': 'successful', 'data': {'token': 'd6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ==', 'userId': '659450159519895552'}} Returns a value from the given ``dictionary`` based on the given ``key``. ${respones.json()["data"]} token ${token} ${token} = d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ== Makes a variable available globally in all tests and suites. ${token} ${token} = d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ== Makes a variable available globally in all tests and suites. ${account} ${account} = 18888888888 Create Session: create a HTTP session to a server ZTBT ${url} ${header} Creating Session using : alias=ZTBT, url=http://api-client-ztb-test.qniao.cn, headers={'content-type': 'application/json', 'X-APP-ID': '470236309865238528'}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 Creates and returns a dictionary based on the given ``items``. loginToken=${token} ${token1} ${token1} = {'loginToken': 'd6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=='} Sends a POST request on a previously created HTTP Session. ZTBT recycle-user-center/authorize/get/product-line-token/by/login-token json=${token1} ${reps} POST Request : url=http://api-client-ztb-test.qniao.cn/recycle-user-center/authorize/get/product-line-token/by/login-token path_url=/recycle-user-center/authorize/get/product-line-token/by/login-token headers={'User-Agent': 'python-requests/2.26.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Content-Length': '106'} body=b'{"loginToken": "d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=="}' POST Response : url=http://api-client-ztb-test.qniao.cn/recycle-user-center/authorize/get/product-line-token/by/login-token status=200, reason= headers={'Server': 'nginx/1.16.1', 'Date': 'Wed, 01 Dec 2021 03:55:35 GMT', 'Content-Type': 'application/json;charset=UTF-8', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive'} body={"code":0,"message":"successful","data":{"token":"d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ==","userToken":null,"userId":"659450159519895552"}} ${reps} = <Response [200]> Returns a value from the given ``dictionary`` based on the given ``key``. ${reps.json()["data"]} token ${gettoken} ${gettoken} = d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ== Returns a value from the given ``dictionary`` based on the given ``key``. ${reps.json()["data"]} userId ${userId} ${userId} = 659450159519895552 Logs the given message with the given level. ${reps.json()["data"]["token"]} d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ== Makes a variable available globally in all tests and suites. ${gettoken} ${gettoken} = d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ== Makes a variable available globally in all tests and suites. ${userId} ${userId} = 659450159519895552 Creates and returns a dictionary based on the given ``items``. content-type=application/json X-APP-ID=470236309865238528 Authorization=${gettoken} ${header} ${header} = {'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Authorization': 'd6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=='} Create Session: create a HTTP session to a server baseinfo ${url} ${header} Creating Session using : alias=baseinfo, url=http://api-client-ztb-test.qniao.cn, headers={'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Authorization': 'd6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=='}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 Sends a GET request on a previously created HTTP Session. baseinfo recycle-service/user/get/base-info ${reps} GET Request : url=http://api-client-ztb-test.qniao.cn/recycle-service/user/get/base-info path_url=/recycle-service/user/get/base-info headers={'User-Agent': 'python-requests/2.26.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Authorization': 'd6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=='} body=None GET Response : url=http://api-client-ztb-test.qniao.cn/recycle-service/user/get/base-info status=200, reason= headers={'Server': 'nginx/1.16.1', 'Date': 'Wed, 01 Dec 2021 03:55:35 GMT', 'Content-Type': 'application/json;charset=UTF-8', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive'} body={"code":0,"message":"successful","data":{"userId":"659450159519895552","realName":"赖勇兰","mobile":"18888888888","avatarUrl":"http://medou.oss-cn-shenzhen.aliyuncs.com/saas/20200623160820.png","isAuth":1,"isVIP":1,"isSetPassword":0,"hasStore":0,"balance":77961.0500,"memberExpiredAt":"2022-03-13 13:54:19","hasGetMember":null,"nickname":"BTPY5718","memberRewardPoint":100,"isAccountancyUser":0,"hasShowedLoginTag":false,"isSetProxyTag":false,"identityTag":"打包厂","locateCityTag":{"provinceId":120000,"provinceName":"天津","cityId":120100,"cityName":"天津市","districtId":120101,"districtName":"和平区"},"locFactoryDetail":"西站前街1号天津西站2F层","experienceTag":"1年以下","numberOfPurchaseCategoriesTag":"0个","numberOfProxyCategoriesTag":"0个","packageFactoryName":"88纸业","packageFactoryArea":1500,"numberOfEmployee":12,"numberOfPackageMachine":null,"businessLicenseUrl":"https://qncloudprintfiletest.oss-cn-shenzhen.aliyuncs.com/cloudprint/1637563690936.jpg","legalPersonName":"陈华","uniformSocialCreditCode":"91500113984969104D","enterpriseName":"重庆亨乐西餐食品有限公司","type":null,"capital":null,"locDetail":"待补充","establishDate":null,"shipmentPerMonth":"1000吨以下","storeOverview":{"storeId":null,"margin":null,"todayMargin":null,"todayMarginNum":null,"hasStore":0,"status":null},"accountBalance":{"accountMoney":77961.0500,"frozenMoney":77961.0500},"bizUserId":"498985714587930624","bizUserName":"张山","status":0,"bizUserCode":"9999","hasShipmentsInfo":1,"isEnterpriseAuth":1,"packerType":"是v发电设备","autoWeighingMachine":"山东化工被他人好吧","forkliftsNum":10,"logisticsVehiclesNum":25,"oftenSendPaperMill":"阿三v长度为hi法定股本v科比v积分不够看的环境的改变附加的功能日本你根本","factoryLongitude":117.162647,"factoryLatitude":39.157162,"factoryPhotoUrlList":["https://qncloudprintfiletest.oss-cn-shenzhen.aliyuncs.com/cloudprint/1637560667998.png","https://qncloudprintfiletest.oss-cn-shenzhen.aliyuncs.com/cloudprint/1637560671717.jpg","https://qncloudprintfiletest.oss-cn-shenzhen.aliyuncs.com/cloudprint/1637560676979.jpg"],"factoryMainCategoryDtoList":[{"id":"661680169953660928","factoryId":"660158494883844096","categoryId":"5","categoryName":"坑卡A","categoryProductionCapacityPerMonth":15.222,"categoryPhotoUrl":null}],"isFactoryInfoRequired":1}} ${reps} = <Response [200]> Returns a value from the given ``dictionary`` based on the given ``key``. ${reps.json()["data"]} realName ${realName} ${realName} = 赖勇兰 Returns a value from the given ``dictionary`` based on the given ``key``. ${reps.json()["data"]} userId ${userId} ${userId} = 659450159519895552 Makes a variable available globally in all tests and suites. ${realName} ${realName} = 赖勇兰 Makes a variable available globally in all tests and suites. ${userId} ${userId} = 659450159519895552 Fails if objects are unequal after converting them to strings. ${account} ${reps.json()["data"]["mobile"]} Helper for quickly disabling all urllib3 warnings. Creates and returns a dictionary based on the given ``items``. content-type=application/json X-APP-ID=470236309865238528 ${headers} ${headers} = {'content-type': 'application/json', 'X-APP-ID': '470236309865238528'} Create Session: create a HTTP session to a server ZTBT https://api-client-uec.qniao.cn ${headers} Creating Session using : alias=ZTBT, url=https://api-client-uec.qniao.cn, headers={'content-type': 'application/json', 'X-APP-ID': '470236309865238528'}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 Returns the given values which can then be assigned to a variables. {"verifiableAccount":"13168550964","verifiableAccountType":1,"purpose":1} ${value} ${value} = {"verifiableAccount":"13168550964","verifiableAccountType":1,"purpose":1} Sends a POST request on a previously created HTTP Session. ZTBT uec/get/auth-captcha ${value.encode('utf-8')} ${reps} POST Request : url=https://api-client-uec.qniao.cn/uec/get/auth-captcha path_url=/uec/get/auth-captcha headers={'User-Agent': 'python-requests/2.26.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Content-Length': '73'} body=b'{"verifiableAccount":"13168550964","verifiableAccountType":1,"purpose":1}' POST Response : url=https://api-client-uec.qniao.cn/uec/get/auth-captcha status=200, reason= headers={'Server': 'nginx/1.14.1', 'Date': 'Wed, 01 Dec 2021 03:55:35 GMT', 'Content-Type': 'application/json', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive', 'Vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers, Origin, Access-Control-Request-Method, Access-Control-Request-Headers'} body={"code":0,"message":"successful","data":null} ${reps} = <Response [200]> Logs the given message with the given level. ${reps.json()} {'code': 0, 'message': 'successful', 'data': None} Pauses the test executed for the given time. 5 Slept 5 seconds pymysql database='user_enterprise_center', host='rm-wz9it4fs5tk7n4tm1zo.mysql.rds.aliyuncs.com', user='uec_root', password='@qniaouecroot88', port=3306 No keyword with name 'Connect To Database Using Custom Params' found. No keyword with name 'Connect To Database Using Custom Params' found. Create Session: create a HTTP session to a server ZTBT https://api-client-uec.qniao.cn ${header} Creating Session using : alias=ZTBT, url=https://api-client-uec.qniao.cn, headers={'content-type': 'application/json', 'X-APP-ID': '470236309865238528'}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 Returns the given values which can then be assigned to a variables. {"accountType":2,"password":null,"account":"13168550964","captcha":"${text_code}"} ${data} Variable '${text_code}' not found. Variable '${text_code}' not found. Create Session: create a HTTP session to a server ZTBT ${url} ${header} Creating Session using : alias=ZTBT, url=http://api-client-ztb.qniao.cn, headers={'content-type': 'application/json', 'X-APP-ID': '470236309865238528'}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 Creates and returns a dictionary based on the given ``items``. loginToken=${token} ${token1} ${token1} = {'loginToken': 'd6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=='} Sends a POST request on a previously created HTTP Session. ZTBT recycle-user-center/authorize/get/product-line-token/by/login-token json=${token1} ${reps} POST Request : url=http://api-client-ztb.qniao.cn/recycle-user-center/authorize/get/product-line-token/by/login-token path_url=/recycle-user-center/authorize/get/product-line-token/by/login-token headers={'User-Agent': 'python-requests/2.26.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Content-Length': '106'} body=b'{"loginToken": "d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=="}' POST Response : url=http://api-client-ztb.qniao.cn/recycle-user-center/authorize/get/product-line-token/by/login-token status=200, reason= headers={'Server': 'nginx/1.14.1', 'Date': 'Wed, 01 Dec 2021 03:55:40 GMT', 'Content-Type': 'application/json;charset=UTF-8', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive', 'Vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers'} body={"code":200100,"message":"unknown error","data":"com.qniao.framework.exception.SaasException\n\tat com.qniao.ztbuec.application.user.service.impl.OAuthServiceImpl.getProductLineTokenByLoginToken(OAuthServiceImpl.java:85)\n\tat com.qniao.ztbuec.api.authorization.AuthorizationController.getProductLineTokenByLoginToken(AuthorizationController.java:46)\n\tat sun.reflect.GeneratedMethodAccessor605.invoke(Unknown Source)\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n\tat java.lang.reflect.Method.invoke(Method.java:498)\n\tat org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:209)\n\tat org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:136)\n\tat org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:102)\n\tat org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:877)\n\tat org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:783)\n\tat org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\n\tat org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:991)\n\tat org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:925)\n\tat org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:974)\n\tat org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:877)\n\tat javax.servlet.http.HttpServlet.service(HttpServlet.java:661)\n\tat org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:851)\n\tat javax.servlet.http.HttpServlet.service(HttpServlet.java:742)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)\n\tat org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)\n\tat org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96)\n\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)\n\tat org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:209)\n\tat org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)\n\tat org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:357)\n\tat org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:270)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)\n\tat org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)\n\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)\n\tat org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:109)\n\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)\n\tat org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:93)\n\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)\n\tat org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200)\n\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)\n\tat org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)\n\tat org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)\n\tat org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:496)\n\tat org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)\n\tat org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)\n\tat org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)\n\tat org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)\n\tat org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)\n\tat org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)\n\tat org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)\n\tat org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1468)\n\tat org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)\n\tat org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\n\tat java.lang.Thread.run(Thread.java:745)\n"} ${reps} = <Response [200]> Returns a value from the given ``dictionary`` based on the given ``key``. ${reps.json()["data"]} token ${gettoken} TypeError: Expected argument 1 to be a dictionary or dictionary-like, got string instead. TypeError: Expected argument 1 to be a dictionary or dictionary-like, got string instead. Creates and returns a dictionary based on the given ``items``. content-type=application/json X-APP-ID=470236309865238528 Authorization=${gettoken} ${header} ${header} = {'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Authorization': 'd6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=='} Create Session: create a HTTP session to a server baseinfo ${url} ${header} Creating Session using : alias=baseinfo, url=http://api-client-ztb.qniao.cn, headers={'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Authorization': 'd6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=='}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 Sends a GET request on a previously created HTTP Session. baseinfo recycle-service/user/get/base-info ${reps} GET Request : url=http://api-client-ztb.qniao.cn/recycle-service/user/get/base-info path_url=/recycle-service/user/get/base-info headers={'User-Agent': 'python-requests/2.26.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Authorization': 'd6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=='} body=None GET Response : url=http://api-client-ztb.qniao.cn/recycle-service/user/get/base-info status=200, reason= headers={'Server': 'nginx/1.14.1', 'Date': 'Wed, 01 Dec 2021 03:55:40 GMT', 'Content-Type': 'application/json;charset=utf-8', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive', 'Vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers'} body={"code":401,"message":"登录信息已经过期"} ${reps} = <Response [200]> Returns a value from the given ``dictionary`` based on the given ``key``. ${reps.json()["data"]} realName ${realName} Resolving variable '${reps.json()["data"]}' failed: KeyError: 'data' Resolving variable '${reps.json()["data"]}' failed: KeyError: 'data' Create Session: create a HTTP session to a server ZTBT ${url} ${header} Creating Session using : alias=ZTBT, url=https://api-client-ztb-test.qniao.cn, headers={'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Authorization': 'QNT d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=='}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 Sends a GET request on a previously created HTTP Session. ZTBT recycle-service/get/paper-mill-city ${reps} GET Request : url=https://api-client-ztb-test.qniao.cn/recycle-service/get/paper-mill-city path_url=/recycle-service/get/paper-mill-city headers={'User-Agent': 'python-requests/2.26.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Authorization': 'QNT d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=='} body=None GET Response : url=https://api-client-ztb-test.qniao.cn/recycle-service/get/paper-mill-city status=200, reason= headers={'Server': 'nginx/1.16.1', 'Date': 'Wed, 01 Dec 2021 03:55:41 GMT', 'Content-Type': 'application/json;charset=UTF-8', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive'} body={"code":0,"message":"successful","data":[{"cityId":"430100","cityName":"长沙市"},{"cityId":"350200","cityName":"厦门市"},{"cityId":"520100","cityName":"贵阳市"},{"cityId":"150200","cityName":"包头市"},{"cityId":"440800","cityName":"湛江市"},{"cityId":"110100","cityName":"北京市"},{"cityId":"210300","cityName":"鞍山市"},{"cityId":"130800","cityName":"承德市"},{"cityId":"450100","cityName":"南宁市"},{"cityId":"232700","cityName":"大兴安岭地区"},{"cityId":"360200","cityName":"景德镇市"},{"cityId":"320400","cityName":"常州市"},{"cityId":"440900","cityName":"茂名市"},{"cityId":"140200","cityName":"大同市"},{"cityId":"130200","cityName":"唐山市"},{"cityId":"360700","cityName":"赣州市"},{"cityId":"440500","cityName":"汕头市"},{"cityId":"530500","cityName":"保山市"},{"cityId":"310100","cityName":"上海市"},{"cityId":"430400","cityName":"衡阳市"},{"cityId":"442000","cityName":"中山市"},{"cityId":"440700","cityName":"江门市"},{"cityId":"810200","cityName":"九龙"},{"cityId":"445300","cityName":"云浮市"},{"cityId":"451300","cityName":"来宾市"},{"cityId":"421000","cityName":"荆州市"},{"cityId":"440100","cityName":"广州市"},{"cityId":"441900","cityName":"东莞市"}]} ${reps} = <Response [200]> Returns a value from the given ``dictionary`` based on the given ``key``. ${reps.json()} data ${data} ${data} = [{'cityId': '430100', 'cityName': '长沙市'}, {'cityId': '350200', 'cityName': '厦门市'}, {'cityId': '520100', 'cityName': '贵阳市'}, {'cityId': '150200', 'cityName': '包头市'}, {'cityId': '440800', 'cityName': '湛... Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityName ${cityName} ${cityName} = 长沙市 Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityId ${cityId} ${cityId} = 430100 Stops executing the enclosing for loop if the ``condition`` is true. '${cityName}'=='大同市' Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityName ${cityName} ${cityName} = 厦门市 Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityId ${cityId} ${cityId} = 350200 Stops executing the enclosing for loop if the ``condition`` is true. '${cityName}'=='大同市' Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityName ${cityName} ${cityName} = 贵阳市 Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityId ${cityId} ${cityId} = 520100 Stops executing the enclosing for loop if the ``condition`` is true. '${cityName}'=='大同市' Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityName ${cityName} ${cityName} = 包头市 Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityId ${cityId} ${cityId} = 150200 Stops executing the enclosing for loop if the ``condition`` is true. '${cityName}'=='大同市' Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityName ${cityName} ${cityName} = 湛江市 Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityId ${cityId} ${cityId} = 440800 Stops executing the enclosing for loop if the ``condition`` is true. '${cityName}'=='大同市' Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityName ${cityName} ${cityName} = 北京市 Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityId ${cityId} ${cityId} = 110100 Stops executing the enclosing for loop if the ``condition`` is true. '${cityName}'=='大同市' Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityName ${cityName} ${cityName} = 鞍山市 Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityId ${cityId} ${cityId} = 210300 Stops executing the enclosing for loop if the ``condition`` is true. '${cityName}'=='大同市' Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityName ${cityName} ${cityName} = 承德市 Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityId ${cityId} ${cityId} = 130800 Stops executing the enclosing for loop if the ``condition`` is true. '${cityName}'=='大同市' Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityName ${cityName} ${cityName} = 南宁市 Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityId ${cityId} ${cityId} = 450100 Stops executing the enclosing for loop if the ``condition`` is true. '${cityName}'=='大同市' Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityName ${cityName} ${cityName} = 大兴安岭地区 Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityId ${cityId} ${cityId} = 232700 Stops executing the enclosing for loop if the ``condition`` is true. '${cityName}'=='大同市' Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityName ${cityName} ${cityName} = 景德镇市 Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityId ${cityId} ${cityId} = 360200 Stops executing the enclosing for loop if the ``condition`` is true. '${cityName}'=='大同市' Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityName ${cityName} ${cityName} = 常州市 Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityId ${cityId} ${cityId} = 320400 Stops executing the enclosing for loop if the ``condition`` is true. '${cityName}'=='大同市' Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityName ${cityName} ${cityName} = 茂名市 Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityId ${cityId} ${cityId} = 440900 Stops executing the enclosing for loop if the ``condition`` is true. '${cityName}'=='大同市' Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityName ${cityName} ${cityName} = 大同市 Returns a value from the given ``dictionary`` based on the given ``key``. ${items} cityId ${cityId} ${cityId} = 140200 Stops executing the enclosing for loop if the ``condition`` is true. '${cityName}'=='大同市' Exiting for loop altogether. Makes a variable available globally in all tests and suites. ${cityId} ${cityId} = 140200 Runs the given keyword with the given arguments, if the test failed. Fatal Error Create Session: create a HTTP session to a server factorylist http://api-client-ztb-test.qniao.cn ${header} Creating Session using : alias=factorylist, url=http://api-client-ztb-test.qniao.cn, headers={'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Authorization': 'QNT d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=='}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 Sends a GET request on a previously created HTTP Session. factorylist recycle-service/get/paper-mill-paper-category-price-list params=cityId=${cityId}&enableSalesAgent=1&pageNum=1&pageSize=20&listType=0 ${reps} GET Request : url=http://api-client-ztb-test.qniao.cn/recycle-service/get/paper-mill-paper-category-price-list?cityId=140200&enableSalesAgent=1&pageNum=1&pageSize=20&listType=0 path_url=/recycle-service/get/paper-mill-paper-category-price-list?cityId=140200&enableSalesAgent=1&pageNum=1&pageSize=20&listType=0 headers={'User-Agent': 'python-requests/2.26.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Authorization': 'QNT d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=='} body=None GET Response : url=http://api-client-ztb-test.qniao.cn/recycle-service/get/paper-mill-paper-category-price-list?cityId=140200&enableSalesAgent=1&pageNum=1&pageSize=20&listType=0 status=200, reason= headers={'Server': 'nginx/1.16.1', 'Date': 'Wed, 01 Dec 2021 03:55:41 GMT', 'Content-Type': 'application/json;charset=UTF-8', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive'} body={"code":0,"message":"successful","data":{"records":[{"paperMillId":"660525241717624832","name":"Ceshi_factory","paperCategoryList":[{"categoryId":"660529551931215872","categoryName":"花纸","yesterdayUnitPrice":null,"unitPrice":1.650,"floatingPrice":0.000,"publicSubsidies":0.005,"allowOrder":null},{"categoryId":"661536965862232064","categoryName":"小白纸","yesterdayUnitPrice":null,"unitPrice":2.200,"floatingPrice":0.000,"publicSubsidies":null,"allowOrder":null},{"categoryId":"661536969788100608","categoryName":"坑卡","yesterdayUnitPrice":null,"unitPrice":1.620,"floatingPrice":0.000,"publicSubsidies":null,"allowOrder":null}],"locProvinceName":"山西省","locCityName":"大同市","locDistrictName":"大同县","logoImg":"https://qncloudprintfiletest.oss-cn-shenzhen.aliyuncs.com/cloudprint/1637647859008.jpg","priceDate":"2021-12-01 00:00:00","proxypaySurcharge":0.0200000,"foreignPaybackIntever":null,"foreignPaybackIntervalString":"12","cumulativeWeight":326.73,"yesterdayTotalQuantity":null,"yesterdayRetainedQuantity":null,"hasFollowed":true,"isOperations":true,"manageNotifyMessage":"该纸厂已暂停接单,请联系相关负责人!","isPlaceAnOrder":false,"isRecentlySale":true}],"total":1,"size":20,"current":1,"orders":null,"searchCount":true,"pages":1}} ${reps} = <Response [200]> Fails if objects are unequal after converting them to strings. ${reps.json()["message"]} successful Returns a value from the given ``dictionary`` based on the given ``key``. ${reps.json()["data"]} records ${records} ${records} = [{'paperMillId': '660525241717624832', 'name': 'Ceshi_factory', 'paperCategoryList': [{'categoryId': '660529551931215872', 'categoryName': '花纸', 'yesterdayUnitPrice': None, 'unitPrice': 1.65, 'floatin... Returns a value from the given ``dictionary`` based on the given ``key``. ${item} name ${name} ${name} = Ceshi_factory Returns a value from the given ``dictionary`` based on the given ``key``. ${item} paperCategoryList ${paperCategoryList} ${paperCategoryList} = [{'categoryId': '660529551931215872', 'categoryName': '花纸', 'yesterdayUnitPrice': None, 'unitPrice': 1.65, 'floatingPrice': 0.0, 'publicSubsidies': 0.005, 'allowOrder': None}, {'categoryId': '66153696... Returns a value from the given ``dictionary`` based on the given ``key``. ${item} cumulativeWeight ${cumulativeWeight} ${cumulativeWeight} = 326.73 Returns a value from the given ``dictionary`` based on the given ``key``. ${item} paperMillId ${paperMillId} ${paperMillId} = 660525241717624832 Returns a value from the given ``dictionary`` based on the given ``key``. ${item} locProvinceName ${locProvinceName} ${locProvinceName} = 山西省 Returns a value from the given ``dictionary`` based on the given ``key``. ${item} locCityName ${locCityName} ${locCityName} = 大同市 Returns a value from the given ``dictionary`` based on the given ``key``. ${item} locDistrictName ${locDistrictName} ${locDistrictName} = 大同县 Stops executing the enclosing for loop if the ``condition`` is true. '${name}'=='Ceshi_factory' Exiting for loop altogether. Evaluates the given expression in Python and returns the results. random.choice(${paperCategoryList}) random ${value} ${value} = {'categoryId': '660529551931215872', 'categoryName': '花纸', 'yesterdayUnitPrice': None, 'unitPrice': 1.65, 'floatingPrice': 0.0, 'publicSubsidies': 0.005, 'allowOrder': None} Logs the given message to the console. \nvalue: ${value} Returns a value from the given ``dictionary`` based on the given ``key``. ${value} categoryId ${categoryid} ${categoryid} = 660529551931215872 Returns a value from the given ``dictionary`` based on the given ``key``. ${value} categoryName ${categoryName} ${categoryName} = 花纸 Returns a value from the given ``dictionary`` based on the given ``key``. ${value} unitPrice ${unitPrice} ${unitPrice} = 1.65 Catenates the given items together and returns the resulted string. ${locProvinceName} ${locCityName} ${locDistrictName} ${paperMillAddress} ${paperMillAddress} = 山西省 大同市 大同县 Makes a variable available globally in all tests and suites. ${categoryid} ${categoryid} = 660529551931215872 Makes a variable available globally in all tests and suites. ${unitPrice} ${unitPrice} = 1.65 Makes a variable available globally in all tests and suites. ${paperMillId} ${paperMillId} = 660525241717624832 Makes a variable available globally in all tests and suites. ${paperMillAddress} ${paperMillAddress} = 山西省 大同市 大同县 Makes a variable available globally in all tests and suites. ${categoryName} ${categoryName} = 花纸 Makes a variable available globally in all tests and suites. ${name} ${name} = Ceshi_factory Runs the given keyword with the given arguments, if the test failed. Fatal Error Create Session: create a HTTP session to a server ZTBT ${url} ${header} Creating Session using : alias=ZTBT, url=https://api-client-ztb-test.qniao.cn, headers={'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Authorization': 'QNT d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=='}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 Sends a GET request on a previously created HTTP Session. ZTBT recycle-service/get/paper-mill-paper-category-price-details/${paperMillId} ${reps} GET Request : url=https://api-client-ztb-test.qniao.cn/recycle-service/get/paper-mill-paper-category-price-details/660525241717624832 path_url=/recycle-service/get/paper-mill-paper-category-price-details/660525241717624832 headers={'User-Agent': 'python-requests/2.26.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Authorization': 'QNT d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=='} body=None GET Response : url=https://api-client-ztb-test.qniao.cn/recycle-service/get/paper-mill-paper-category-price-details/660525241717624832 status=200, reason= headers={'Server': 'nginx/1.16.1', 'Date': 'Wed, 01 Dec 2021 03:55:41 GMT', 'Content-Type': 'application/json;charset=UTF-8', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive'} body={"code":0,"message":"successful","data":{"paperMillId":"660525241717624832","name":"Ceshi_factory","paperCategoryList":[{"categoryId":"660529551931215872","categoryName":"花纸","unitPrice":1.650,"inspectionNote":null,"floatingPrice":0.000,"publicSubsidies":0.005,"isAllowOrder":true},{"categoryId":"661536965862232064","categoryName":"小白纸","unitPrice":2.200,"inspectionNote":null,"floatingPrice":0.000,"publicSubsidies":null,"isAllowOrder":true},{"categoryId":"661536969788100608","categoryName":"坑卡","unitPrice":1.620,"inspectionNote":null,"floatingPrice":0.000,"publicSubsidies":null,"isAllowOrder":true}],"locProvinceName":"山西省","locCityName":"大同市","locDistrictName":"大同县","attentionsLoadingCar":"","attentionsRegulations":"","attentionsArrival":"","attentionsReportCar":"","locDetails":"","priceDate":"2021-12-01","logoImg":"https://qncloudprintfiletest.oss-cn-shenzhen.aliyuncs.com/cloudprint/1637647859008.jpg","enableSalesAgent":1,"proxypaySurcharge":0.0200000,"foreignPaybackIntever":null,"foreignPaybackIntervalString":"12","cumulativeWeight":326.73,"yesterdayTotalQuantity":null,"yesterdayRetainedQuantity":null,"hasFollowed":true,"isOperations":true,"manageNotifyMessage":"该纸厂已暂停接单,请联系相关负责人!","isCooperate":0}} ${reps} = <Response [200]> Logs the given message with the given level. ${reps.json()} {'code': 0, 'message': 'successful', 'data': {'paperMillId': '660525241717624832', 'name': 'Ceshi_factory', 'paperCategoryList': [{'categoryId': '660529551931215872', 'categoryName': '花纸', 'unitPrice': 1.65, 'inspectionNote': None, 'floatingPrice': 0.0, 'publicSubsidies': 0.005, 'isAllowOrder': True}, {'categoryId': '661536965862232064', 'categoryName': '小白纸', 'unitPrice': 2.2, 'inspectionNote': None, 'floatingPrice': 0.0, 'publicSubsidies': None, 'isAllowOrder': True}, {'categoryId': '661536969788100608', 'categoryName': '坑卡', 'unitPrice': 1.62, 'inspectionNote': None, 'floatingPrice': 0.0, 'publicSubsidies': None, 'isAllowOrder': True}], 'locProvinceName': '山西省', 'locCityName': '大同市', 'locDistrictName': '大同县', 'attentionsLoadingCar': '', 'attentionsRegulations': '', 'attentionsArrival': '', 'attentionsReportCar': '', 'locDetails': '', 'priceDate': '2021-12-01', 'logoImg': 'https://qncloudprintfiletest.oss-cn-shenzhen.aliyuncs.com/cloudprint/1637647859008.jpg', 'enableSalesAgent': 1, 'proxypaySurcharge': 0.02, 'foreignPaybackIntever': None, 'foreignPaybackIntervalString': '12', 'cumulativeWeight': 326.73, 'yesterdayTotalQuantity': None, 'yesterdayRetainedQuantity': None, 'hasFollowed': True, 'isOperations': True, 'manageNotifyMessage': '该纸厂已暂停接单,请联系相关负责人!', 'isCooperate': 0}} Runs the given keyword with the given arguments, if the test failed. Fatal Error Create Session: create a HTTP session to a server ZTBT ${url} ${header} Creating Session using : alias=ZTBT, url=https://api-client-ztb-test.qniao.cn, headers={'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Authorization': 'QNT d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=='}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 Sends a GET request on a previously created HTTP Session. ZTBT recycle-service/proxy-sell/get/relation ${reps} GET Request : url=https://api-client-ztb-test.qniao.cn/recycle-service/proxy-sell/get/relation path_url=/recycle-service/proxy-sell/get/relation headers={'User-Agent': 'python-requests/2.26.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'content-type': 'application/json', 'X-APP-ID': '470236309865238528', 'Authorization': 'QNT d6SX3ESr8Jb2tYq/89Ft7HSef7LjHyTdXqhrqWRDypMxVQPBW+90MWsl9ceYu6powQjqUz9jli2HBV4P628tQQ=='} body=None GET Response : url=https://api-client-ztb-test.qniao.cn/recycle-service/proxy-sell/get/relation status=200, reason= headers={'Server': 'nginx/1.16.1', 'Date': 'Wed, 01 Dec 2021 03:55:41 GMT', 'Content-Type': 'application/json;charset=UTF-8', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive'} body={"code":0,"message":"successful","data":{"id":"249","customerName":"赖勇兰","cusormerId":"554128866793361643","bizUserId":"498985714587930624","bizUserName":"张山","status":0,"createTime":"2021-11-22 13:54:27","mobile":"13060994305","factoryName":null,"factoryId":null}} ${reps} = <Response [200]> Logs the given message with the given level. ${reps,json()} Resolving variable '${reps,json()}' failed: NameError: name 'json' is not defined Runs the given keyword with the given arguments, if the test failed. Fatal Error Stops the whole test execution. AssertionError AssertionError Resolving variable '${reps,json()}' failed: NameError: name 'json' is not defined Also teardown failed: AssertionError robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 创建常规订单 robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 提现申请 robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 实名认证 robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 添加银行卡 robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 查看代卖订单 robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 预约送货 robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 上传磅单-常规 robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 上传磅单-一次付款活动 robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 上次送货单-两次付款活动 robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 运营审核-常规 robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 运用审核-一次付款活动 robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 运营审核-两次付款活动 robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 代卖应付 robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 代卖应收 robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 代卖应收 robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 查看代卖订单(数据对比) robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. 添加银行卡 robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. robot:exit Test execution stopped due to a fatal error. Critical Tests All Tests NOT robot:exit robot:exit Ztb-Trading-Rf-Api Ztb-Trading-Rf-Api.0-Database Ztb-Trading-Rf-Api.1-Client(Test) Ztb-Trading-Rf-Api.1-Client(Test).1-APPlogin(Test) Ztb-Trading-Rf-Api.1-Client(Test).1-APPlogin(master) Ztb-Trading-Rf-Api.1-Client(Test).2.1-CreateRegularorder Ztb-Trading-Rf-Api.1-Client(Test).2.2createActiveorder-1 Ztb-Trading-Rf-Api.1-Client(Test).2.3createActiveorder-2 Ztb-Trading-Rf-Api.1-Client(Test).3-Withdrawal application Ztb-Trading-Rf-Api.1-Client(Test).3.1-Automatic withdrawal Ztb-Trading-Rf-Api.1-Client(Test).4-Real name authentication Ztb-Trading-Rf-Api.1-Client(Test).5-Add bank card Ztb-Trading-Rf-Api.1-Client(Test).7-Consignment order Ztb-Trading-Rf-Api.1-Client(Test).Factory Ztb-Trading-Rf-Api.2-Background system(Test) Ztb-Trading-Rf-Api.2-Background system(Test).1-WebLogin Ztb-Trading-Rf-Api.2-Background system(Test).1-WebLogin.Weblogin Ztb-Trading-Rf-Api.2-Background system(Test).1.1-New PaperMill Ztb-Trading-Rf-Api.2-Background system(Test).1.1-New PaperMill.New paper mill Ztb-Trading-Rf-Api.2-Background system(Test).1.2-Enterprise Management Ztb-Trading-Rf-Api.2-Background system(Test).1.2-Enterprise Management.Enterprise-Management Ztb-Trading-Rf-Api.2-Background system(Test).1.3-Operation Management Ztb-Trading-Rf-Api.2-Background system(Test).1.3-Operation Management.Contract Ztb-Trading-Rf-Api.2-Background system(Test).1.4-Consignment activities Ztb-Trading-Rf-Api.2-Background system(Test).1.4-Consignment activities.Consignment activities Ztb-Trading-Rf-Api.2-Background system(Test).1.5-Information management Ztb-Trading-Rf-Api.2-Background system(Test).1.5-Information management.Information Ztb-Trading-Rf-Api.2-Background system(Test).2.1-Consignment management Ztb-Trading-Rf-Api.2-Background system(Test).2.1-Consignment management.1-Appointment Ztb-Trading-Rf-Api.2-Background system(Test).2.1-Consignment management.2.1-RegularUpload-weightnote Ztb-Trading-Rf-Api.2-Background system(Test).2.1-Consignment management.2.2-RegularUpload-weightnote-1 Ztb-Trading-Rf-Api.2-Background system(Test).2.1-Consignment management.2.3-ActiveUpload-deliverynote Ztb-Trading-Rf-Api.2-Background system(Test).2.1-Consignment management.3.1-Operation audit Ztb-Trading-Rf-Api.2-Background system(Test).2.1-Consignment management.3.2-Operation audit Ztb-Trading-Rf-Api.2-Background system(Test).2.1-Consignment management.3.3-Operation audit Ztb-Trading-Rf-Api.2-Background system(Test).3-Withdrawal application Ztb-Trading-Rf-Api.2-Background system(Test).3-Withdrawal application.4-Financial audit Ztb-Trading-Rf-Api.2-Background system(Test).3-Withdrawal application.5-Sales receivables Ztb-Trading-Rf-Api.2-Background system(Test).3-Withdrawal application.Withdrawal application Ztb-Trading-Rf-Api.2-Background system(Test).3-Withdrawal application.Withdrawal application.1-Automatic receipt Ztb-Trading-Rf-Api.2-Background system(Test).3-Withdrawal application.Withdrawal application.2-Manual receipt Ztb-Trading-Rf-Api.2-Background system(Test).4-Consignment management Ztb-Trading-Rf-Api.2-Background system(Test).4-Consignment management.2.3-ActiveUpload-weightnote Ztb-Trading-Rf-Api.2-Background system(Test).4-Consignment management.3.3--Operation audit Ztb-Trading-Rf-Api.2-Background system(Test).4-Consignment management.4.3-Financial audit Ztb-Trading-Rf-Api.2-Background system(Test).4-Consignment management.5.3-Sales Receivable Ztb-Trading-Rf-Api.2-Background system(Test).5-Data comparison Ztb-Trading-Rf-Api.2-Background system(Test).5-Data comparison.5-Consignment order Ztb-Trading-Rf-Api.2-Background system(Test).6-Parameter Ztb-Trading-Rf-Api.2-Background system(Test).6-Parameter.1-Operation audit Ztb-Trading-Rf-Api.2-Background system(Test).6-Parameter.2-Parameter Ztb-Trading-Rf-Api.3-Pabotdemo Ztb-Trading-Rf-Api.3-Pabotdemo.1-Get List Ztb-Trading-Rf-Api.4-Data-comparison Ztb-Trading-Rf-Api.4-Data-comparison.1-Formula-calculation Ztb-Trading-Rf-Api.DemoApp Ztb-Trading-Rf-Api.DemoApp.APP login Ztb-Trading-Rf-Api.Pabotdemo Ztb-Trading-Rf-Api.Pabotdemo.添加银行卡 Ztb-Trading-Rf-Api.Resource Ztb-Trading-Rf-Api.Resource.关键字使用 Ztb-Trading-Rf-Api.UI-APP Ztb-Trading-Rf-Api.UI-Browser Ztb-Trading-Rf-Api.样例 Ztb-Trading-Rf-Api.样例.001 Ignoring second test suite init file '/root/ztb-trading-rf-api/2-Background_system(Test)/1.2-enterprise_management/__init__.txt'. Error in file '/root/ztb-trading-rf-api': Importing test library 'SeleniumLibrary' failed: ModuleNotFoundError: No module named 'SeleniumLibrary' Traceback (most recent call last): None PYTHONPATH: /usr/local/python3/lib/python36.zip /usr/local/python3/lib/python3.6 /usr/local/python3/lib/python3.6/lib-dynload /usr/local/python3/lib/python3.6/site-packages Error in file '/root/ztb-trading-rf-api': Importing test library 'AppiumLibrary' failed: ModuleNotFoundError: No module named 'AppiumLibrary' Traceback (most recent call last): None PYTHONPATH: /usr/local/python3/lib/python36.zip /usr/local/python3/lib/python3.6 /usr/local/python3/lib/python3.6/lib-dynload /usr/local/python3/lib/python3.6/site-packages Error in file '/root/ztb-trading-rf-api/0-Database.robot': Importing test library 'DatabaseLibrary' failed: ModuleNotFoundError: No module named 'DatabaseLibrary' Traceback (most recent call last): None PYTHONPATH: /usr/local/python3/lib/python36.zip /usr/local/python3/lib/python3.6 /usr/local/python3/lib/python3.6/lib-dynload /usr/local/python3/lib/python3.6/site-packages Error in file '/root/ztb-trading-rf-api/1-Client(Test)/1-APPlogin(Test).robot': Importing test library 'DatabaseLibrary' failed: ModuleNotFoundError: No module named 'DatabaseLibrary' Traceback (most recent call last): None PYTHONPATH: /usr/local/python3/lib/python36.zip /usr/local/python3/lib/python3.6 /usr/local/python3/lib/python3.6/lib-dynload /usr/local/python3/lib/python3.6/site-packages Error in file '/root/ztb-trading-rf-api/1-Client(Test)/1-APPlogin(master).robot': Importing test library 'DatabaseLibrary' failed: ModuleNotFoundError: No module named 'DatabaseLibrary' Traceback (most recent call last): None PYTHONPATH: /usr/local/python3/lib/python36.zip /usr/local/python3/lib/python3.6 /usr/local/python3/lib/python3.6/lib-dynload /usr/local/python3/lib/python3.6/site-packages