我正在用Java编写脚本来自动执行Selenium中的测试用例。
不幸的是,我一步一步被完全封锁了。
我无法使用定位器单击元素。
这就是我在浏览器的开发工具中看到的元素(我想上传照片,但是我需要更高的声誉:()
<li class="x-tree-node"><div ext:tree-node-id="site_~_listUtilities|site" class="x-tree-node-el x-tree-node-leaf x-unselectable file" unselectable="on"><span class="x-tree-node-indent"></span><img src="http://mucs70064.corp.knorr-bremse.com:1080/Windchill/netmarkets/images/sp.gif" class="x-tree-ec-icon x-tree-elbow-end"><img src="http://mucs70064.corp.knorr-bremse.com:1080/Windchill/netmarkets/images/default_leaf.png" class="x-tree-node-icon x-tree-node-inline-icon" unselectable="on"><a hidefocus="on" class="x-tree-node-anchor" href="http://mucs70064.corp.knorr-bremse.com:1080/Windchill/app/#ptc1/site/listUtilities?oid=OR%3Awt.inf.container.ExchangeContainer%3A5&u8=1" tabindex="1"><span unselectable="on">Dienstprogramme</span></a></div><ul class="x-tree-node-ct" style="display:none;"></ul></li>
可以请我继续吗?
提前致谢
巴勃罗
最佳答案
假设您要单击锚元素:
WebElement myAnchor = yourDriver.findElement(By.cssSelector("a.x-tree-node-anchor"));
myAnchor.click();
其中
yourDriver
是您的WebDriver
实例注意:如果您直接从
yourDriver
执行此操作,则可能会找到多个链接,因为这会检查整个页面,因此,除非页面上只有一个带有该类名称的锚定标记,否则我建议缩小通过预先执行另一个findElement
进行搜索,以便找到要单击的确切li
节点(您的帖子中有详细说明)。然后,例如,如果您将
li
节点WebElement
保存为名称myClickableListItem
,则可以通过将yourDriver
替换为myClickableListItem
来调用本文开头提到的代码。