2017-06-27 34 views
0

每次创建另一个测试时,是否需要添加geckodriver?例如:geckodriver许多测试 - Java

public class JUnit4 { 

    @Test 
    public void test1() { 
     System.setProperty("webdriver.gecko.driver", 
       "D:\\...\geckodriver.exe"); 
     WebDriver driver = new FirefoxDriver(); 
     driver.get("https://www.google.pl/"); 
     driver.close(); 
     } 

    @Test 
    public void test2() { 
     System.setProperty("webdriver.gecko.driver", 
       "D:\\...\geckodriver.exe"); 
     WebDriver driver = new FirefoxDriver(); 
     driver.get("https://www.google.pl/"); 
    driver.close(); 
    } 

} 

上面的代码工作。

如果我在测试名称前插入一个geckodriver,它显然不起作用。我曾尝试将geckodriver添加到系统变量,但它也不起作用。我也观察过它会怎么处理@Before,但也没有工作。如果我在测试前拉动驱动程序,那么这是一个错误,因为它首先必须是geckodriver。

尽管进行了很多测试,有没有办法只使用一次geckodriver?

感谢您的回答

回答

2

您应该只在@Before中定义它一次,并使Web驱动程序成为全局变量。

public class JUnit4 { 

public WebDriver driver; 

@Before 
    public void setup() { 
    System.setProperty("webdriver.gecko.driver", "path of the geckodriver "); 
     driver = new FirefoxDriver(); 
        } 
@Test 
public void test1() { 
    driver.get("https://www.google.pl/"); 
    } 
} 
0

现在好了,我知道,这是非常简单的:

如果你是系统变量只是用“;”在路径例如

path1; path2;并将你的路径粘贴到系统变量 - >比你不需要每次都粘贴:

System.setProperty(“webdriver.gecko.driver”, “C:\ ... \ geckodriver.exe”);