selenium - 无法在 selenium 中使用“$”字符编译 xpath
问题描述
我试图使用下面的 xpath 点击一个元素
driver.findElement(By.xpath("//android.widget.RadialTimePickerView$RadialPickerTouchHelper[@index='4']")).click();
但它给了我以下错误
造成的:org.jaxen.XPathSyntaxException: Unexpected '$'
解决方案
有效 XPath 节点测试的语法由https://www.w3.org/TR/2017/REC-xpath-31-20170321/#node-tests给出。它基本上归结为允许的名称由https://www.w3.org/TR/REC-xml/#NT-Name定义,这不包括 $ 符号。
所以 Selenium 抱怨这个$
标志是不允许的是正确的。
不过,您也许可以使用 Selenium 提供的其他一些定位技术。
推荐阅读
- azure-webjobs - 如何使用 WebJobs SDK 3.x 中的新 HostBuilder 注册自定义 NameResolver?
- python - 如何修复缺少“自我”参数的 TypeError
- android - 我将如何发出基本警报?
- python - 如何在 author_id 中设置“电子邮件”继承 Odoo 上的 mail.thread
- c# - 从 2d 整数数组制作 NSImage
- erlang - 如果记录存在,如何更新记录,否则在 Mnesia 中插入新记录
- dask - 是否所有 Dask Worker 都需要使用相同的操作系统?
- object - ExtJS如何在extraParams AjaxRequest中传递一个对象
- authentication - 如何去除 cakephp 认证中的“redirect”参数?
- android - 在 Android Studio 3.2 上找不到 R.java