Selenium Webdriver - 元素无法点击错误

时间:2015-07-21 21:05:55

标签: selenium

其中一个测试用例在chrome驱动程序中随机失败

我正在检查wait.until(ExpectedConditions.elementToBeClickable(ele)); 我也试过线程。睡眠

我收到以下错误。谢谢..

  

org.openqa.selenium.WebDriverException:未知错误:元素不是   点击(547,498)。其他元素将收到点击:   ......(会议信息:   chrome = 43.0.2357.134)(驾驶信息:chromedriver = 2.15.322455   (ae8db840dac8d0c453355d3d922c91adfb61df8f),platform = Mac OS X 10.9.5   x86_64)(警告:服务器未提供任何堆栈跟踪   信息)命令持续时间或超时:56毫秒构建信息:   版本:' 2.43.1',修订版:' 5163bce',时间:' 2014-09-10 16:27:58'   系统信息:主持人:' Maitris-MacBook-Pro.local',ip:' 10.9.20.70',   os.name:' Mac OS X',os.arch:' x86_64',os.version:' 10.9.5',   java.version:' 1.7.0_71'会议ID:dba4c84dc3f18442e47aeae5d05e5655   驱动程序信息:org.openqa.selenium.chrome.ChromeDriver功能   [{platform = MAC,acceptSslCerts = true,javascriptEnabled = true,   browserName =铬,   铬= {userDataDir = /变种/文件夹/ C6 / sn_7hhjj7mqdjp12gk50p4kw0000gn / T / .org.chromium.Chromium.2Ug99c},   rotating = false,locationContextEnabled = true,   mobileEmulationEnabled = false,version = 43.0.2357.134,   takesHeapSnapshot = true,cssSelectorsEnabled = true,   databaseEnabled = false,handlesAlerts = true,   browserConnectionEnabled = false,nativeEvents = true,   webStorageEnabled = true,applicationCacheEnabled = false,   takeScreenshot = true}] at   sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)     在   sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)     在   sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)     at java.lang.reflect.Constructor.newInstance(Constructor.java:526)     在   org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:204)     在   org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:156)     在   org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:599)     在   org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:268)     在   org.openqa.selenium.remote.RemoteWebElement.click(RemoteWebElement.java:79)     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at   sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)     在   sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)     在java.lang.reflect.Method.invoke(Method.java:606)at   org.openqa.selenium.support.pagefactory.internal.LocatingElementHandler.invoke(LocatingElementHandler.java:50)     在com.sun.proxy。$ Proxy10.click(未知来源)at   com.baublebar.pages.BaublebarPage.addBundleProduct(BaublebarPage.java:493)     在   com.baublebar.testcases.shoppingcart.AddBundleProductTest.addBundleTest(AddBundleProductTest.java:28)     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at   sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)     在   sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)     在java.lang.reflect.Method.invoke(Method.java:606)at   org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:84)     在org.testng.internal.Invoker.invokeMethod(Invoker.java:714)at   org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)at at   org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)at at   org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)     在   org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)     在org.testng.TestRunner.privateRun(TestRunner.java:767)at   org.testng.TestRunner.run(TestRunner.java:617)at   org.testng.SuiteRunner.runTest(SuiteRunner.java:334)at   org.testng.SuiteRunner.runSequentially(SuiteRunner.java:329)at at   org.testng.SuiteRunner.privateRun(SuiteRunner.java:291)at at   org.testng.SuiteRunner.run(SuiteRunner.java:240)at   org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)at   org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)at   org.testng.TestNG.runSuitesSequentially(TestNG.java:1224)at at   org.testng.TestNG.runSuitesLocally(TestNG.java:1149)at at   org.testng.TestNG.run(TestNG.java:1057)at   org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:111)at at   org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:204)at at   org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:175)

2 个答案:

答案 0 :(得分:0)

可能你的元素改变了它的定位器,或者'real'元素有一个不同的定位器 只是一些问题:
- 您是否在此错误出现时检查元素是否存在?它是同一个定位器吗? - 引起错误的是不是有些褪色? - 你想点击什么样的元素,一个普通的按钮?

答案 1 :(得分:0)

  

元素在点(547,498)处无法点击。其他元素将收到点击:

表示您尝试点击的元素之上有“某些内容”。

你需要弄清楚它是什么并等待它消失,或者添加一些条件代码以使其消失。

我们遇到的问题是滚动到页面的“你接受我们的cookie”对话框。在大型开发人员监视器上,它从未覆盖任何东西,但在我们的selenium测试客户端的较小屏幕上它覆盖了一些按钮。