机器人框架硒的错误: -
方案: 通过Robotframework自动化脚本更新网页上的元素时,页面会刷新并且元素会更新。
错误消息
WebDriverException: Message: Page reload detected during async script
*记录
11:17:09.064 TRACE参数:[ “xpath =。// [@ name ='adapter_name'] //选项[包含(。,'ADPT-1AX')]”]
11:17:09.064 INFO单击元素 '的xpath = // [@名称=' ADAPTER_NAME '] //选项[含有(。,' ADPT-1AX ')]'。
11:17:09.064调试发布 http://127.0.0.1:60462/session/47657269-6060-405d-929d-aewfyuefuiux/elements {“using”:“xpath”,“sessionId”: “47657269-6060-405d-929d-aewfyuefuiux”,“value”: ” .//*[@name='adapter_name']//option[contains(.,'ADPT-1AX')]“}
11:17:09.164调试完成请求11:17:09.165调试发布 http://127.0.0.1:60462/session/47657269-6060-405d-929d-aewfyuefuiux/execute {“sessionId”:“47657269-6060-405d-929d-aewfyuefuiux”,“args”: [{ “元素6066-11e4-a52e-4f735466cecf”: “8ffad05f-25db-4b70-821b-f395fd70359e”,“ELEMENT”: “8ffad05f-25db-4b70-821b-f395fd70359e”}],“脚本”: “arguments [0] .scrollIntoView()”} 11:17:09.248 DEBUG完成 请求11:17:09.249调试帖子 http://127.0.0.1:60462/session/47657269-6060-405d-929d-aewfyuefuiux/element/8ffad05f-25db-4b70-821b-f395fd70359e/click {“sessionId”:“47657269-6060-405d-929d-aewfyuefuiux”,“id”: “8ffad05f-25db-4b70-821b-f395fd70359e”} 11:17:11.641调试 完成请求11:17:12.142调试发布 http://127.0.0.1:60462/session/47657269-6060-405d-929d-aewfyuefuiux/element {“using”:“标签名称”,“sessionId”: “47657269-6060-405d-929d-aewfyuefuiux”,“value”:“html”}
11:17:12.697调试完成请求11:17:12.697调试 http://127.0.0.1:60462/session/47657269-6060-405d-929d-aewfyuefuiux/element/9f198a5c-56e2-4358-bb44-cb39930f3a8b/enabled {“sessionId”:“47657269-6060-405d-929d-aewfyuefuiux”,“id”: “9f198a5c-56e2-4358-bb44-cb39930f3a8b”} 11:17:13.233调试 完成请求11:17:13.234调试发布 http://127.0.0.1:60462/session/47657269-6060-405d-929d-aewfyuefuiux/execute_async {“sessionId”:“47657269-6060-405d-929d-aewfyuefuiux”,“args”:[], “script”:“if(!window.jQuery){var 一个= document.getElementsByTagName( '头')[0];无功 B =使用document.createElement( '脚本'); b.type = '文本/ JavaScript的'; b.src = document.location.protocol + '// code.jquery.com/jquery-1.11.3.min.js'; a.appendChild(b);} VAR CB =参数[的arguments.length-1];如果(window.angular){风险 $损伤;尝试{$ = INJ angular.element(document.querySelector( '[数据-NG-应用],[NG-APP] ,. NG-范围')||文件).injector()|| angular.injector ([ 'NG'])}赶上(EX){$ = INJ angular.injector([ 'NG'])}; $ inj.get = $ inj.get || $损伤; $ inj.get('$浏览器“).notifyWhenNoOutstandingRequests(函数(){CB(真)})}其他{CB(假)}“ 11:17:13.739调试完成请求11:17:13.808失败 WebDriverException:消息:在异步脚本期间检测到页面重新加载 11:17:13.809 DEBUG Traceback(最近一次调用最后一次):文件 在click_element文件中,“”,第2行 “C:\ Python27 \ LIB \站点包\ Selenium2Library \关键字\ keywordgroup.py” 第15行,在_run_on_failure_decorator中 return方法(* args,** kwargs)文件“C:\ Users \ user1 \ eclipse-workspace \ RobotWorkspace \ Projects \ Library \ ExtendedSelenium2Library \ keywords \ extendedelement.py”, 第57行,在click_element中 self._wait_until_page_ready()文件“C:\ Users \ user1 \ eclipse-workspace \ RobotWorkspace \ Projects \ Library \ ExtendedSelenium2Library \ keywords \ extendedwaiting.py”, 第421行,在_wait_until_page_ready中 响应['response'] = self._wait_until_script_ready(浏览器,超时,脚本,* args)文件 “C:\用户\ USER1 \ Eclipse的工作空间\ RobotWorkspace \项目\库\ ExtendedSelenium2Library \关键字\ extendedwaiting.py”, 第435行,在_wait_until_script_ready中 response = browser.execute_async_script(script,* args)文件“c:\ Python27 \ lib \ site-packages \ selenium \ webdriver \ remote \ webdriver.py”, 第564行,在execute_async_script中 'args':converted_args})['value']文件“c:\ Python27 \ lib \ site-packages \ Selenium2Library \ webdrivermonkeypatches.py”, 第11行,执行中 result = self._base_execute(driver_command,params)文件“c:\ Python27 \ lib \ site-packages \ selenium \ webdriver \ remote \ webdriver.py”, 第308行,执行中 self.error_handler.check_response(response)文件“c:\ Python27 \ lib \ site-packages \ selenium \ webdriver \ remote \ errorhandler.py”, 第194行,在check_response中 raise exception_class(message,screen,stacktrace)11:16:07.972 TRACE参数:[]
答案 0 :(得分:-1)
此错误消息...
WebDriverException: Message: Page reload detected during async script
...表示 ChromeDriver 无法与浏览上下文即 Chrome浏览器会话进行交互。
有关以下内容的更多详细信息:
本来可以帮助我们更好地分析问题。
但是,根据Page reload detected during async script. What does this mean?中的文档,此错误表示:
在浏览器中有命令挂起时发生了导航或重载事件。通常,这是因为单击操作或导航导致页面加载。量角器试图等待Angular变得稳定,但由于重新加载而中断。
作为解决方案,您可能需要插入browser.wait
条件以确保加载完成后再继续。