我曾经尝试过在主要方法中使用System.setProperty
时没有问题,但是当我在进行Selenium学习时切换到TestNG
时,我意识到我们无法在课程级别编写System.setProperty
。它应该在方法级别或在static
块中。我只想了解Java的功能是什么促使我们这样做。
public class NewTest {
public String baseUrl = "http://newtours.demoaut.com/";
static {
System.setProperty("webdriver.chrome.driver","D:\\paths\\chromedriver.exe");
}
WebDriver driver = new ChromeDriver();
@Test
public void f1() {
...}
}
在静态块之外编写此代码将显示编译错误,例如
“此行有多个标记,语法错误”
最佳答案
我只想了解Java的功能是什么促使我们这样做。
“ Java的功能”是您只能在类级别编写方法和声明,而System.setProperty()
都不是:这是一个方法调用。