检查是否通过系统属性安装了FirefoxDriver或ChromeDriver?

时间:2014-12-30 02:21:53

标签: java selenium selenium-webdriver webdriver

我有一组在各种浏览器中运行的Web测试。如果没有安装相应的驱动程序,我想跳过测试。

然而,这些将由不同机器执行的测试,即OS和驱动程序设置将有所不同。我想知道是否有某种方法可以使用JUnit.assumeNotNull()来检查驱动程序的系统属性值是否为空?

例如:

@Before
public void checkForDriver() {
    assumeNotNull(System.getProperty("webdriver.chrome.driver"));
}

@Before
public void setupCheck() {        
    assumeNotNull(System.getProperty("webdriver.safari.driver"));
}

这适用于chrome和其他人,但对于firefox,我一直在检查“webdriver.firefox.bin”和“webdriver.firefox.driver”,测试仍然会跳过。我知道firefoxDriver应该工作正常(如果我删除了假设,测试运行并通过)。

检查是否安装了驱动程序/浏览器的任何建议或其他好方法?

1 个答案:

答案 0 :(得分:-1)

要使用IE或Chrome运行Selenium,您需要在测试客户端计算机上安装一些额外的二进制文件。相比之下,FirefoxDriver是Selenium不可或缺的一部分。因此,如果你运行Selenium,测试是否安装了FirefoxDriver并不合理。

如果您的测试客户端计算机上未安装Firefox浏览器,则应探测 Firefox浏览器系统属性,而不是 FirefoxDriver