我正在使用 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.javapublic 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.NullPointerExceptionat br.dsanders.steps.steps.accessing_the_Tnternet_herokuapp_com_website(steps.java:62)at ?.Given accessing the Tnternet.herokuapp.com website(testing.feature:9)
1 回答

慕妹3242003
TA貢獻1824條經驗 獲得超6個贊
嘗試如下:
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
添加回答
舉報
0/150
提交
取消