我收到以下錯誤。我是 Java 新手,因此將不勝感激。
Cannot invoke "org.openqa.selenium.WebDriver.get(String)" because "this.driver" is null
請看下面的代碼:
package steps;
import io.cucumber.java.en.Given;
import io.github.bonigarcia.wdm.WebDriverManager;
import org.junit.After;
import org.junit.Before;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class hotelBookingFormPage {
public WebDriver driver;
@Before
public void startBrowser() {
WebDriverManager.chromedriver().setup();
driver = new ChromeDriver();
}
@After
public void closeBrowser() {
driver.close();
driver.quit();
}
@Given("I navigate to the hotel booking form page")
public void iNavigateToTheHotelBookingFormPage() {
driver.get("http://hotel-test.equalexperts.io/");
}
任何幫助,將不勝感激。
uj5u.com熱心網友回復:
import org.junit.After;
import org.junit.Before;
有了這個,您將匯入 JUnit 掛鉤注釋,而不是 Cucumber 注釋。所以 Cucumber 不知道你想在每個場景之前和之后運行帶注釋的方法。
Cucumbers 注釋位于不同的包中:
import io.cucumber.java.en.Before;
import io.cucumber.java.en.After;
uj5u.com熱心網友回復:
使用 Chromedriver 對 Webdriver 介面的轉換僅在您的 @Before 步驟(未使用的地方)中宣告,其他步驟不知道。修改以下內容:
public class hotelBookingFormPage {
public WebDriver driver = new ChromeDriver();
@Before
public void startBrowser() {
WebDriverManager.chromedriver().setup();
}
@After
public void closeBrowser() {
driver.close();
driver.quit();
}
@Given("I navigate to the hotel booking form page")
public void iNavigateToTheHotelBookingFormPage() {
driver.get("http://hotel-test.equalexperts.io/");
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/351743.html
