- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我在尝试使用 Selenium 上传文件时遇到问题。由于浏览按钮没有输入标签,我无法使用 sendKeys() 函数传递路径。它是用 Angular 编写的。
这是浏览按钮元素:
<a id="attachmentUpload-browse0" name="attachmentUpload-browse0" ng-click="clickBrowse($index)" class="btn-pri" xpath="1"></a>
我确实在源代码中的上方代码下方找到了一个输入标签,但在尝试使用 .sendKeys()
时出现错误。
<input type="file" id="attachmentUpload-file0" name="attachmentUpload-file0" fileread="$parent.attachments[$index].fileData" class="attachmentUpload-inputfile ng-isolate-scope" onchange="angular.element(this).scope().onFileChange(this)" style="" xpath="1">
编辑:使用 .sendKeys() 输入标签时出错
Exception in thread "main" org.openqa.selenium.InvalidSelectorException: invalid selector: Unable to locate an element with the xpath expression //input[@id="attachmentUpload-file0"]// because of the following error:
SyntaxError: Failed to execute 'evaluate' on 'Document': The string '//input[@id="attachmentUpload-file0"]//' is not a valid XPath expression.
*** Element info: {Using=xpath, value=//input[@id="attachmentUpload-file0"]//}
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:214)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:166)
at org.openqa.selenium.remote.http.JsonHttpResponseCodec.reconstructValue(JsonHttpResponseCodec.java:40)
at org.openqa.selenium.remote.http.AbstractHttpResponseCodec.decode(AbstractHttpResponseCodec.java:80)
at org.openqa.selenium.remote.http.AbstractHttpResponseCodec.decode(AbstractHttpResponseCodec.java:44)
at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:158)
at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:83)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:545)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:319)
at org.openqa.selenium.remote.RemoteWebDriver.findElementByXPath(RemoteWebDriver.java:421)
at org.openqa.selenium.By$ByXPath.findElement(By.java:361)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:311)
at com.ibm.esh.o2c.art.Tester.runTest(Tester.java:61)
at com.ibm.esh.o2c.art.Tester.main(Tester.java:70)
为 attachmentUpload-browse0 使用标签时出错:
Exception in thread "main" org.openqa.selenium.WebDriverException: unknown error: cannot focus element
最佳答案
这个错误信息...
org.openqa.selenium.InvalidSelectorException: invalid selector: Unable to locate an element with the xpath expression //input[@id="attachmentUpload-file0"]// because of the following error:
SyntaxError: Failed to execute 'evaluate' on 'Document': The string '//input[@id="attachmentUpload-file0"]//' is not a valid XPath expression.
...暗示您的 XPath 表达式无效。
您可以使用以下代码行:
driver.findElement(By.xpath("//input[@id='attachmentUpload-file0']")).sendKeys("test");
关于java - 使用 sendKeys 的消息 "org.openqa.selenium.InvalidSelectorException: invalid selector: Unable to locate an element with the XPath expression",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49908244/
我正在使用 Appium 自动化 android 应用程序。我正在尝试使用 Android SDK 提供的 UIAutomatorviewer 工具定位元素。以下是我找到的 xpath,但我认为它可能
我对使用 Selenium 非常陌生。我试图单击以下选择按钮: 这是我的代码: import org.openqa.selenium.By; import org.openqa.selenium.We
动机 利用 Selenium 的 CSS 选择器机制以及 CSS 属性选择器和 HTML5 data- 自定义属性来解决元素的特定 Hook 。 问题 当使用上面的方法来定位分配有 CSS 类名和 d
我正在尝试使用 XPATH 从以下内容中检索值 email1、Email2 和 HT email1 Email2 HT 以下是我的 XPATH 代码: int
将 Weblogic 版本从 10.3.6 升级到 12.1.2 后,我得到 javax.jms.InvalidSelectorException 调用 JMS API 时 javax.jms.Que
我正在尝试使用 CssSelector 在我的网页上定位一个元素。我正在使用 Firefox 驱动程序。 这是我使用定位器的方式(我检查过 Selenium IDE 能够用它定位我的元素 [Finds
当我试图从文本框中获取值时,它抛出 No such element found issues, 以下是我的字段属性: input id="altid" class="firstColumnInput
我正在 firefox 中开发 selenium python。我正在尝试通过 css 选择器查找元素 element = "span:contains('Control panel')" my_dr
我正在 firefox 中开发 selenium python。我正在尝试通过 css 选择器查找元素 element = "span:contains('Control panel')" my_dr
我正在尝试编写一个脚本来处理具有多个元素的网页。单击此元素将打开一个新窗口。但是我的脚本在识别元素时有问题。我需要帮助来定位元素和处理多个窗口 我尝试使用 Chrome 查找 Xpath,但它在 In
我正在学习 Selenium Webdriver 并尝试编写一个简单的测试脚本。 目的是获取About Google Gmail 页面上的链接以练习 CSS 定位器。 代码如下: public cla
HTML Welcome 8828024404, MCGM Log Out 要搜索
org.openqa.selenium.InvalidSelectorException: invalid selector: Unable to locate an element with the
我以前从未遇到过这样的错误。我正在访问的网站是否无法使用自动化测试? 代码: public class DirectoryAutomation { public static void mai
我正在尝试单击以下 HTML 中的最后一个 span 元素 ... 在Java中使用Selenium,代码如下: driver.fin
我在尝试使用 Selenium 上传文件时遇到问题。由于浏览按钮没有输入标签,我无法使用 sendKeys() 函数传递路径。它是用 Angular 编写的。 这是浏览按钮元素: 我确实在源代码中的
我是一名优秀的程序员,十分优秀!