Click()方法不适用于Chromedriver

问题描述 投票:0回答:1

我使用Selenium C#绑定,我想单击addToCart按钮。

我使用了以下代码:

addToCartBy = By.XPath("/html/body/div[2]/div/div/div[2]/div/div/div/div/div[3]/button[2]");
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(5));
IWebElement addToCart = wait.Until(ExpectedConditions.ElementToBeClickable(addToCartBy));
addToCart.Click();

[当我使用Firefox驱动程序时,它将运行完美。该按钮将被触发,导航将继续。

[当我使用Chrome驱动程序时,将执行单击,但此后将不执行任何操作。如果我想使按钮正常工作(使用购物车),则需要使用System.Threading.Thread.Sleep(2000)Console.ReadLine()才能生效。

为什么同一段代码显然适用于Firefox,但不适用于Chrome驱动程序?] >>

我使用Selenium C#绑定,我想单击addToCart按钮。我使用了以下代码:addToCartBy = By.XPath(“ / html / body / div [2] / div / div / div [2] / div / div / div / div / div / div [3] / button [2]” ); ...

c# selenium-webdriver selenium-chromedriver webdriverwait selenium-firefoxdriver
1个回答
0
投票

可以通过创建更强大的findElement包装器来解决:

© www.soinside.com 2019 - 2024. All rights reserved.