我使用 testNG 注释编写了以下测试:
public class Create {
WebDriver driver;
@BeforeClass
public void testsetup() {
WebDriverManager.chromedriver().setup();
driver = new ChromeDriver();
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
driver.manage().window().maximize();
}
@BeforeMethod
public void Login() {
driver.get("www.xyz.com");//just an example
}
@Test(priority=3)
public void AccountCreate() {
System.out.println("Test3");
}
}
@Test(priority=1)
public void CompanyCreate() {
System.out.println("Test1");
}
@Test(priority=2)
public void VerifyResult() {
System.out.println("Test2");
}
}
@AfterMethod
public void Logout() {
System.out.println("print after method");
}
@AfterClass
public void CloseBrowser() {
driver.close();
}
}
o/p 是这样的:
print after method
test1
print after method
test2
print after method
test3
观察;@BeforeClass先执行,再@Beforemethod执行,然后@Aftermethod 再执行@Test(priority=1),@Aftermethod然后@Beforemethod再执行,@Test(priority=2)以此类推。
但在所有@Test运行之后,只有@Aftermethod执行。任何人,请帮助我。我真的找不到到底是什么问题。