【发布时间】:2017-06-05 19:46:25
【问题描述】:
我需要单击一个确定按钮,该按钮可能会在填写完字段后出现 - 可能需要 5 秒钟才会出现。所以我需要(如果)等待存在 5 秒。我在页面框架中使用 PageFactory,我已经看到了一些解决方案,但无法弄清楚如何在这种情况下实现它们。
[FindsBy(How = How.Name, Using = "OK")]
private IWebElement alertOKBtn;
public void PopulateFields //method to populate the form
{
// Populate fields
dateFromField.SendKeys(DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss"));
// Click on this field
descriptionField.Click();
//OK button might appear, might take 5secs - pseudcode
if ( ***alertOKBtn exists, wait for it for 5 secs..*** )
{
alertOkBtn.Click();
}
//continue populating form
}
从 [Test] 调用 PopulateFields 方法为:-
Pages.PTW.PopulateFields();
其中 Pages.PTW 是 PageFactory.InitElements(browser.Driver, page) 的 get 方法;返回页面;
【问题讨论】:
标签: c# selenium selenium-webdriver