【发布时间】:2020-06-07 05:44:36
【问题描述】:
我有一个下拉列表,我想单击其中一项并跟踪页面上的一些活动。
我的 HTML 结构看起来像这样
<slot>
#shadowroot
<myoption-cmp> #shadowroot <some anchor text>
<myoption-cmp> #shadowroot <some anchor text>
</slot>
.....
如果您可以看到有 2 个 <myoption-cmp> 元素,我尝试使用 findElements(By.cssSelector('myoption-cmp')。我不断收到“org.openqa.selenium.WebDriverException: javascript error: Cannot read property ' querySelectorAll' of null"。我的 Selenium 示例代码:
WebElement solt = parentElement.findElement(By.cssSelector("slot"));
WebElement shadowSlot = expandShadow(slot);
List<WebElement> menuCmp = shadowSlot.findElements(By.cssSelector("myoption-cmp"));
// I expect to get the list of elements nd then I'd like to access it as below.
WebElement shadow2 = expandShadow(menuCmp.get(0));
WebElement anchor = shadow2.findElement(By.cssSelector("a"));
anchor.click();
只是想知道我是否做错了什么。
我尝试使用 findElement 和 findElements,但都给了我错误 像“org.openqa.selenium.WebDriverException:javascript错误:不能 读取属性 'querySelector/querySelectorAll' of null"。
感谢任何帮助或建议。
【问题讨论】:
标签: javascript java selenium