我点击确定按钮。点击成功。之后Selenium没有回应。它也没有抛出任何异常。当我手动关闭浏览器窗口时,它会尝试继续执行。
答案 0 :(得分:0)
我有同样的效果,所以我自己写了一个自定义的Click()方法,我在这种情况下调用。
对于Internet Explorer,它会进行双击而不是单击,这有时是Selenium工作所必需的。
在Firefox中,我偶尔会遇到异常("不能再按一个按钮或按下按钮"),所以我编写了以下C#代码,在按下它之前明确释放按钮(应该看看)类似于Java):
public static void Click(this IWebElement element, TestParams testParams)
{
if (testParams.Target.IsFirefox)
{
var actions = new Actions(driver);
actions.MoveToElement(element);
driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.Zero);
actions.Release().Build().TryPerform();
driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(testParams.DefaultTimeoutInSeconds));
actions.MoveToElement(element);
actions.Click().Build().Perform();
}
else if (testParams.Target.IsInternetExplorer)
{
element.DoubleClick(driver);
}
else
{
element.Click();
}
}
这并不总是有效,所以我只在必要时调用我的自定义Click()方法。这在我经常测试的站点上产生稳定的结果。