使用 Eclipse 运行 TestNg 测试组时出现 NPE 错误

Sco*_*ter 3 testng nullpointerexception

我试图通过右键单击作为测试套件的 TestNG.xml 在 TestNG 中运行测试组并获得错误。

java.lang.NullPointerException
at execution_Engine.TestCase1_Login.Login(TestCase1_Login.java:54)
Run Code Online (Sandbox Code Playgroud)

注意:当我自己运行测试(而不是作为测试套件)时,它运行良好。

任何人都可以善意地指出问题所在吗?和解决这个问题。

测试NG文件

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Smoke tests">
<test name="regressions Test Suite">
    <groups> 
        <run> 
            <include name="Regression"/> 
        </run> 
    </groups> 
    <classes> 
        <class name="execution_Engine.TestCase1_Login"/> 
        <class name="execution_Engine.TestCase2_InvalidLogin"/>
    </classes>
            <packages>
        <package name="execution_Engine" />
        </packages> 
</test>
</suite>

@SuppressWarnings("unused")
public class TestCase1_Login  {

public static WebDriver driver = null;

 @BeforeMethod
  public static void LaunchIEandNavigate() {  

      /*** Launch IE **/ 
    System.setProperty "webdriver.ie.driver", "C:\\IE\\IEDriverServer.exe");
      driver = new InternetExplorerDriver();

      /*** implicit Wait **/
      driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

      /*** Navigate to URL **/
      driver.get("http://google.com");



@Test(enabled = true, groups = "Regression")
public void Login() {

       /*** Login Action  **/
       driver.findElement(By.id("UserId")).sendKeys("DummyUser"); Line 54
       driver.findElement(By.id("Password")).sendKeys("password");
       driver.findElement(By.id("Submit-button")).click();

   System.out.println("Testcase1 - ValidLogin executed sucessfully.");

}

@AfterMethod
public void CloseIEandQuit() {
//driver.switchTo().defaultContent();   
  /** Close and quit browser*/
  driver.close();
  driver.quit();

}
Run Code Online (Sandbox Code Playgroud)

小智 5

Just Add (alwaysRun = true) to the @BeforeMethod annotation.