1

どのブラウザーを使用するか (Firefox、Chrome、IE) を単体テストに渡したいと考えています。

    [TestInitialize()]
    public void Initialize(string URL, string Country, string Browser)
    {
        this.URL = URL;
        this.Country = Country;
        this.Browser = Browser;
    }

何かのようなもの:

    public DefaultDriver _webDriver  = new DefaultDriver();

次に、デフォルト ドライバを正しいブラウザ タイプに割り当てます。

        if (Browser == "Firefox")
            _webDriver = _firefoxDriver;
        else if (Browser == "Chrome")
            _webDriver = new ChromeDriver();
        else if (Browser == "IE")
            _webDriver = new InternetExplorerDriver();

しかし、ChromeDriver、FireFoxDriver、および InternetExplorerDriver と互換性のある DefaultDriver が見つからないため、これは機能しません。C# でブラウザ タイプの送信を行うには、これまたは別の方法を行うにはどうすればよいでしょうか? フォーム アプリケーションを使用してテストを実行していて、異なるブラウザーを同じテストに渡したいと考えています。

4

2 に答える 2

3

WebDriver プロジェクトは、インターフェースを広範囲に使用します。現在のブラウザ固有の実装はすべて から派生しRemoteWebDriverていますが、これは必須ではありません。本当に必要なのは、IWebDriverインターフェースを使用することです。

public IWebDriver _webdriver = null;

次に、ファクトリ メソッドで次のようにします。

switch (browser)
{
    case "IE":
        _webdriver = new InternetExplorerDriver();
        break;
    case "Firefox":
        _webdriver = new FirefoxDriver();
        break;
    case "Chrome":
        _webdriver = new ChromeDriver();
        break;
}
于 2013-08-13T21:28:32.693 に答える