Order of Testng Annotations

Reference URL:

For testng Documentation please click on the link Testng Documentation
@BeforeSuite: The annotated method will be run before all tests in this suite have run.
@AfterSuite: The annotated method will be run after all tests in this suite have run.
@BeforeTest: The annotated method will be run before any test method belonging to the classes inside the tag is run.
@AfterTest: The annotated method will be run after all the test methods belonging to the classes inside the tag have run.
@BeforeGroups: The list of groups that this configuration method will run before. This method is guaranteed to run shortly before the first test method that belongs to any of these groups is invoked.
@AfterGroups: The list of groups that this configuration method will run after. This method is guaranteed to run shortly after the last test method that belongs to any of these groups is invoked.
@BeforeClass: The annotated method will be run before the first test method in the current class is invoked.
@AfterClass: The annotated method will be run after all the test methods in the current class have been run.
@BeforeMethod: The annotated method will be run before each test method.
@AfterMethod: The annotated method will be run after each test method.
@BeforeMethod: The annotated method will be run before each test method.
@AfterMethod: The annotated method will be run after each test method.
Execution Order:

Order of Testng Annotations

Order of Testng Annotations



Console Output:

Noted:

  • @BeforeMethod,@AfterMethod will not be executed if there are no @Test Methods available in the TESTNG class.
  • @BeforeMethod Configuration fails the @Test,@AfterMethod will not be executed.
  • @AfterMethod(alwaysRun=true) executes even if @BeforeMethod Configuration fails.
  • @BeforeClass,@AfterClass will not be executed if there is no @Test Methods available in the TESTNG class.
  • @BeforeClass Configuration fails the @Test methods will be skipped and Afterclass will not be executed.
  • @AfterClass(alwaysRun=true) executes even if @Beforeclass Configuration fails.

Leave a Reply

Your email address will not be published. Required fields are marked *