浏览器驱动程序的常量类

时间:2018-09-03 06:09:48

标签: c# selenium

是否有任何方法可以为Selenium中的浏览器驱动程序创建一个全局类,所以我可以在每个测试中使用此类来初始化驱动程序,而不必每次都重复相同的方法?

我想一次在测试之间共享的方法:

FirefoxOptions options = new FirefoxOptions();
options.SetPreference("dom.webnotifications.enabled", false);
options.AcceptInsecureCertificates = true;
driver = new FirefoxDriver(options);
driver.Manage().Window.Maximize();

2 个答案:

答案 0 :(得分:0)

要在任何地方提供类,请使用方法签名

public static class CommonTestFunctions
{ ... }

public访问修饰符将允许任何对象或类访问您的类,只需将您在测试方法中多次使用的函数放到该类中,并像下面这样使用它即可:

//CommonTestFunctions class
public FireFoxOptions InitFireFoxOptions();
{
      FirefoxOptions options = new FirefoxOptions(); 
      options.SetPreference("dom.webnotifications.enabled", false);
    options.AcceptInsecureCertificates = true;
    driver = new FirefoxDriver(options);
    driver.Manage().Window.Maximize();
 }

//test method 
var fireFoxOptions = CommonTestFunctions.InitFoxFoxOptions();

答案 1 :(得分:0)

您可以在助手类中创建一个方法,如下所示。

public static class BrowserConfigurationHelper
{
    public static IWebDriver GetDriver()
    {
        FirefoxOptions options = new FirefoxOptions();
        options.SetPreference("dom.webnotifications.enabled", false);
        options.AcceptInsecureCertificates = true;
        var driver = new FirefoxDriver(options);
        driver.Manage().Window.Maximize();

        return driver;
    }
}

在每个Test方法中,您可以简单地调用GetDriver方法来执行以下驱动程序初始化

var driver = BrowserConfigurationHelper.GetDriver();