簡體   English   中英

如何將Wait.Until與Selenium C#一起用於現有元素

[英]How to use Wait.Until with Selenium C# for existing element

我正在尋找一種在selenium(C#)中使用wait.until的方法,但要用於現有元素。 那樣:

[FindsBy(How = How.Id, Using = "SomeID")]
public IWebElement SearchButton { get; set; }

現在,我想對上面的元素使用wait.until。 有什么辦法可以做到嗎? 謝謝亞尼夫

您可以創建一個抽象頁面對象作為該頁面對象的父對象,並從構造函數中調用一個在子頁面中實現的抽象方法:

public abstract class AbstractPage
{
    protected AbstractPage()
    {
        WaitUntilExist();
    }

    protected abstract void WaitUntilExist();
}

public class MyPage : AbstractPage
{
    [FindsBy(How = How.Id, Using = "SomeID")]
    private IWebElement SearchButton;

    public MyPage()
    {
    }

    protected override void WaitUntilExist()
    {
        wait.Until(ExpectedConditions.ElementExists(By.Id("SomeID")));
    }
}

在子頁面中的元素初始化之前,將從父構造函數中調用方法WaitUntilExist() 由於它是抽象的,因此將繼承子類中的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM