我正在尝试通过右键单击作为测试套件的 TestNG.xml 在 TestNG 中运行测试组,然后出现错误。
java.lang.NullPointerException
at execution_Engine.TestCase1_Login.Login(TestCase1_Login.java:54)
注意:当我自己运行测试(而不是作为测试套件)时,它运行良好。
谁能指出问题所在?和解决这个问题。
TestNG.xml
<!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();
}
最佳答案
只需将 (alwaysRun = true) 添加到 @BeforeMethod 注释。
关于nullpointerexception - 使用 eclipse 运行 TestNg 测试组时出现 NPE 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33989750/