@beforetest testng 由于某种原因被忽略

我正在使用 TestNG (Selenium + Java) 运行我的 Cucumber 套件测试并收到 java.lang.NullPointerException。


我意识到问题是我的 @BeforeTest() 由于某种原因被忽略,导致 NullPointer 问题。


我正在使用 TestNG 7.0.0(但也尝试使用最新的 Beta)。


@BeforeTest() 

public void setUp() {

    driver = Web.createChrome(); // it call a method that has the Chromedriver

}

Web.java


public class Web {


public static WebDriver createChrome() {


    System.setProperty("webdriver.chrome.driver", webdriver_path);


    WebDriver driver = new ChromeDriver();

    driver.manage().window().maximize();

    driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);

    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);

    driver.get("http://the-internet.herokuapp.com/");


    return driver;

}

}

输出


java.lang.NullPointerException

at br.dsanders.steps.steps.accessing_the_Tnternet_herokuapp_com_website(steps.java:62)

at ?.Given accessing the Tnternet.herokuapp.com website(testing.feature:9)


梦里花落0921
浏览 75回答 1
1回答

慕妹3242003

尝试如下:public class steps {    WebDriver driver = null;    public steps() {        this.driver=Web.createChrome();    }@BeforeMethod() public void setUp() {    driver.get("http://the-internet.herokuapp.com/");  }}注意此处的 ClassName 是steps如果您有其他类名,则更改类名和构造函数名称。更改@BeforeTest为@BeforeMethod
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java