- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
org.openqa.selenium.StaleElementReferenceException: Element not found in the cache - perhaps the page has changed since it was looked upCommand duration or timeout: 30.02 secondsFor documentation on this error, please visit: http://seleniumhq.org/exceptions/stale_element_reference.htmlBuild info: version: '2.18.0', revision: '15704', time: '2012-01-27 17:37:17'System info: os.name: 'Windows XP', os.arch: 'x86', os.version: '5.1', java.version: '1.6.0_17'Driver info: driver.version: RemoteWebDriver at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:147) at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:113) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:439) at org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:231) at org.openqa.selenium.remote.RemoteWebElement.click(RemoteWebElement.java:72) at com.harleydavidson.modelyear.selenium2.testcase.ImageTest.checkColor(ImageTest.java:79) at com.harleydavidson.modelyear.selenium2.testcase.ImageTest.chooseModel(ImageTest.java:62) at com.harleydavidson.modelyear.selenium2.testcase.ImageTest.testImage(ImageTest.java:28) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:30) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) at org.junit.runners.ParentRunner.run(ParentRunner.java:300) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:49) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)Caused by: org.openqa.selenium.remote.ErrorHandler$UnknownServerException: Element not found in the cache - perhaps the page has changed since it was looked upBuild info: version: '2.18.0', revision: '15704', time: '2012-01-27 17:37:17'System info: os.name: 'Windows XP', os.arch: 'x86', os.version: '5.1', java.version: '1.6.0_17'Driver info: driver.version: unknown at .(resource://fxdriver/modules/atoms.js:9557) at .(resource://fxdriver/modules/atoms.js:10153) at .(file:///C:/DOCUME~1/npolic/LOCALS~1/Temp/anonymous3371533678733192941webdriver-profile/extensions/fxdriver@googlecode.com/components/command_processor.js:10200) at .(file:///C:/DOCUME~1/npolic/LOCALS~1/Temp/anonymous3371533678733192941webdriver-profile/extensions/fxdriver@googlecode.com/components/command_processor.js:10219) at .(file:///C:/DOCUME~1/npolic/LOCALS~1/Temp/anonymous3371533678733192941webdriver-profile/extensions/fxdriver@googlecode.com/components/command_processor.js:10026)
Mycode has been written like this. It is for consecutive actions. First action is working fine inside loop for first time. when second loop started, it is throwing StaleElementReferenceException . So please help me , how to perform multiple actions one by one..
List<WebElement> colorButtons = driver.findElements(By.xpath("/html/body/div[4]/div[2]/div/div[4]/div[2]/div/img"));
for(WebElement colorButton : colorButtons)
{
colorButton.click();
}
问候纳尔西
最佳答案
基本上 StaleElementReferenceException
发生在页面仍在加载或更改内容时 - 因此某些元素在那里,但发生了一些事情并且该元素不再出现在 DOM 中。
当您手动单击 colorButton 时,页面上会发生什么?我希望页面开始加载或显示某些内容。
你可能应该添加一些等待,或者点击页面上的其他地方
关于java - Selenium WebDriver java 测试中的 StaleElementReferenceException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10118013/
我刚刚开始使用带有 webdriver 的 geb 进行自动化测试。 As I understand it ,当我在页面上定义内容时,每次调用内容定义时都应该查找页面元素。 //In the cont
我有一个非常简单的脚本,可以找到页面中的所有 HREF 并迭代并记录它: Photo search scroll Go To https://xxx ${elements}=
我正在为鼠标悬停工作,我想通过使用 for 循环单击每个链接来测试所有链接的工作状况。在我的程序中,迭代进行一次,而对于下一次迭代,它不起作用并显示“StaleElementReferenceExce
在我的网页上,我有一个部分链接列表,每个部分都有详细信息的链接。我尝试转到每个部分,然后验证所有链接都没有损坏。 List sections = driver.findElements(By.xpat
我有一个场景,我试图循环遍历条形图上的多个元素,直到找到“rect”标签名称。当我单击“矩形”标签名称时,将从图表中选择单个栏,并且我将重定向到另一个页面。请参阅下面我正在使用的条形图的图像: /im
我已经研究这个错误一段时间了,并尝试了很多方法,但似乎没有任何效果...... while(!driver.findElements(By.className("next")).isE
您好,我是 Selenium 的新手 我正在使用 Java 库,已经尝试了 Chrome 和 Firefox 驱动程序。 我正在运行一个循环。有趣的是,循环有时工作 3、2 次,它并不总是在同一次迭代
我正在测试新建的框架,在 Chrome 浏览器中工作时经常遇到 org.openqa.selenium.StaleElementReferenceException。框架设计会不会有问题?当我在其他浏
显示堆栈溢出错误 public static void main(String[] args) throws Exception { System.setProperty("webdriver
我在这样的测试中有wait: WebDriverWait wait = new WebDriverWait(dr, TimeSpan.FromSeconds(30)); ... wait.Until(
好吧,伙计们...我知道这个问题之前似乎已经得到解答,但我尝试了几种解决方案,但没有一个奏效。如果我再看到一次 StaleElementReferenceException,我就会丢掉它。我妻子的男朋
导航到不同页面并返回后,我收到 StaleElementReferenceException。我尝试过显式等待,再次重写定位器,但似乎不起作用。任何帮助将不胜感激。 Select select
我尝试用selenium 制作一个网络爬虫。我的程序引发 StaleElementReferenceException。我认为这是因为我递归地抓取页面,并且当页面没有更多链接时,该函数导航到下一页,而
我需要获取快速变化元素的值(在本例中是一个以毫秒为单位倒计时的计时器),但是当我尝试使用时 String timeLeftString = driver.findElement(By.xpath(ti
我有一个包含一堆表格的页面。我在外循环中遍历表,然后在内循环中遍历表中的每一行。一切正常。但是有些页面有下一步按钮。当我在完成页面后添加代码以单击它时,我开始在循环遍历表格的行时收到 StaleEle
在我的 Selenium 测试代码中有几行 点击一个复选框 从选择框中选择一个项目 点击按钮提交表单 这是代码 WebElement selectAllElement = driver.findEle
我在 Ubunto 上运行 Web E2E 测试(使用 cucumber、junit、selenium webDriver)。 使用remoteWebDriver时,我的测试偶尔失败(使用local-
我一直在使用 protractor/jasmine2 解决陈旧元素引用异常的问题。 我的规范: var LoginPage = require('../pages/login_page.js'); v
这个问题已经有答案了: Stale element exception python (2 个回答) Selenium clicks one time, but next click returns
运行测试时出现此错误:org.openqa.selenium.StaleElementReferenceException: 元素不再附加到 DOM 关于如何解决上述异常的任何想法?这发生在我的网格中
我是一名优秀的程序员,十分优秀!