gpt4 book ai didi

cssSelector 的 Selenium WebDriver 问题

转载 作者:行者123 更新时间:2023-12-04 23:28:56 24 4
gpt4 key购买 nike

我正在尝试使用 Selenium 2.0 WebDriver 中的 CSS 选择器单击按钮。问题是我能够使用 Selenium RC 运行的脚本不适用于 WebDriver。
代码:

Selenium RC:

selenium.click("css=.gwt-Button:contains('Run Query')");

这绝对没问题。

Selenium 网络驱动程序:

driver.findElement(By.cssSelector(".gwt-Button:contains('Run Query')")).click(); 

这不起作用。
我正在使用:selenium-server-standalone-2.9.0.jar 和 Firefox 5.0 版。谁能帮我弄清楚为什么 cssSelector不使用 WebDriver 吗?

最佳答案

CSS 3 中不推荐使用“包含”。Webdriver 支持浏览器 native 支持的任何内容。它适用于 selenium RC,因为 RC 使用 Sizzle 库作为 css 选择器并且它支持“包含”。你有没有尝试过类似的东西,

WebElement element = driver.findElement(By.cssSelector(".gwt-Button[type='button']");
element.click();

如果这不是唯一的,那么您可能需要进一步过滤它。如果您的站点使用 jQuery,那么您可以使用 jQuery 中的“包含”选择器。
JavascriptExecutor js = ((JavascriptExecutor)driver);
WebElement element = (WebElement) js.executeScript("return $(\".gwt-Button:contains('Run Query')\")[0];");
element.click();

关于cssSelector 的 Selenium WebDriver 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7888107/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com