我是NUNIT的新手,并且对如何关闭对话框感到难过。
我正在尝试的网站是Google翻译。部分代码“点击”“发送反馈链接”。
以下是我正在使用的功能:
public void CloseModalWindow(string className)
{
WebController wPage = new WebController(driver);
wPage.waitUntilExistsByXPath(className);
wPage.waitUntilVisibleByXPath(className);
IWebElement clickButtonXPATH = driver.FindElement(By.XPath(className));
clickButtonXPATH.Click();
}
基本逻辑是,我试图模拟的是点击出现的Google反馈弹出窗口右上角的“X”。
请注意:
/html/body/div[3]/div/span[2]
。span[class='modal-dialog-title']
发送到函数中。Nunit将完成没有任何错误,但弹出窗口并没有像我期待的那样关闭。
提前感谢您的意见和建议。
答案 0 :(得分:0)
从XPath中我发现“X”不是本机可点击元素 - 如<a>
或<button>
。我经历过,在这些元素上调用Click()
并不是人们所期望的。相反,您可以尝试使用action builder功能来模拟一般鼠标或键盘输入。取代
clickButtonXPATH.Click();
与
new Actions(driver).Click(clickButtonXPATH).Build().Perform();