【问题标题】:Selenide and bonigarcia硒化物和博尼加西亚
【发布时间】:2021-05-09 21:17:19
【问题描述】:

我正在尝试将 Selenide 和 bonigarcia 与多个 Web 驱动程序一起使用,例如 Chrome、Mozilla、Edge 等。 这就是我所做的:

public static Selenide driver;

public static void runBrowser(String browserName, String url) throws Exception {
    if(browserName.equals("Chrome")) {
        WebDriverManager.chromedriver().browserVersion(browserConfiguration.chromeVersion).setup();
        Configuration.startMaximized = true;
        driver.open(url);
    }
    else if(browserName.equals("Firefox")) {
        WebDriverManager.firefoxdriver().browserVersion(browserConfiguration.firefoxVersion).setup();
        Selenide.open(url);
    }
    else if(browserName.equals("Edge")) {
        WebDriverManager.edgedriver().browserVersion(browserConfiguration.edgeVersion).setup();
        driver.open(url);
    } else {
        throw new Exception("Something went wrong opening browser");
    }
}

但是,当我尝试使用“Firefox”或“Edge”参数调用该方法时,它总是在 chrome 上运行。因此,每次我调用该方法时,chrome 网络驱动程序都会运行。

我使用 Selenium 实现了它,它们之间的区别在于,我使用 WebDriver.get(url) 而不是 Selenide.open(url),并且当我调用带有“Firefox”或“Edge”参数的方法时,它可以正常工作。

有什么想法吗?

**编辑:**

我添加了Configuration.browser = FirefoxDriverFactory.class.getName();,现在看起来像这样:WebDriverManager.firefoxdriver().browserVersion(browserConfiguration.firefoxVersion).setup(); Configuration.browser = FirefoxDriverFactory.class.getName(); Selenide.open(url); 它将打开我想要的任何浏览器,Chrome、Mozilla、Edge 等。 但是,不知何故,我不认为这是一个真正的解决方案。我什至不知道添加FirefoxDriverFactory.class.getName() 做了什么以及为什么它现在起作用了。

【问题讨论】:

    标签: java selenium selenium-webdriver webdriver selenide


    【解决方案1】:

    Selenide 已经包含来自 bonigarcia 的 WebDriverManager。

    您可以选择浏览器

    Configuration.browser = "firefox";

    或设置 SystemProperty selenide.browser,例如-Dselenide.browser=firefox

    您不需要任何工厂、WebDriverManager 调用等。

    【讨论】:

    • 谢谢,我真的不知道!
    • 我认为这是从 Selenide 5 开始引入的功能。真的很有用!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    • 2022-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-19
    相关资源
    最近更新 更多