blob: 65e833eb3368812429e9b31af4b50b6003a6384d [file] [log] [blame]
package org.testng.annotations;
import java.lang.annotation.Target;
import java.lang.annotation.Retention;
/**
* Configuration information for a TestNG class.
*
* @deprecated Use @BeforeSuite, @AfterSuite, @BeforeTest, @AfterTest,
* @BeforeGroups, @AfterGroups, @BeforeClass, @AfterClass, @BeforeMethod,
* @AfterMethod
*
* @author Cedric Beust, Apr 26, 2004
*
*/
@Retention(java.lang.annotation.RetentionPolicy.RUNTIME)
@Target(java.lang.annotation.ElementType.METHOD)
public @interface Configuration {
/**
* If true, the annotated method will be run after the test class is instantiated
* and before the test method is invoked.
*/
public boolean beforeTestClass() default false;
/**
* If true, the annotated method will be run after all the tests in the test
* class have been run.
*/
public boolean afterTestClass() default false;
/**
* If true, the annotated method will be run before any test method is invoked.
*/
public boolean beforeTestMethod() default false;
/**
* If true, the annotated method will be run after any test method is invoked.
*/
public boolean afterTestMethod() default false;
/**
* If true, the annotated method will be run before this suite starts.
*/
public boolean beforeSuite() default false;
/**
* If true, the annotated method will be run after all tests in this suite
* have run.
*/
public boolean afterSuite() default false;
/**
* If true, the annotated method will be run before every test.
*/
public boolean beforeTest() default false;
/**
* If true, the annotated method will be run after all every test.
*/
public boolean afterTest() default false;
/**
* 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.
*/
public String[] beforeGroups() default {};
/**
* 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.
*/
public String[] afterGroups() default {};
/**
* The list of variables used to fill the parameters of this method.
* These variables must be defined in the property file.
*
* @deprecated Use @Parameters
*/
@Deprecated
public String[] parameters() default {};
/**
* Whether methods on this class/method are enabled.
*/
public boolean enabled() default true;
/**
* The list of groups this class/method belongs to.
*/
public String[] groups() default {};
/**
* The list of groups this method depends on. Every method
* member of one of these groups is guaranteed to have been
* invoked before this method. Furthermore, if any of these
* methods was not a SUCCESS, this test method will not be
* run and will be flagged as a SKIP.
*/
public String[] dependsOnGroups() default {};
/**
* The list of methods this method depends on. There is no guarantee
* on the order on which the methods depended upon will be run, but you
* are guaranteed that all these methods will be run before the test method
* that contains this annotation is run. Furthermore, if any of these
* methods was not a SUCCESS, this test method will not be
* run and will be flagged as a SKIP.
*
* If some of these methods have been overloaded, all the overloaded
* versions will be run.
*/
public String[] dependsOnMethods() default {};
/**
* For before methods (beforeSuite, beforeTest, beforeTestClass and
* beforeTestMethod, but not beforeGroups):
* If set to true, this configuration method will be run
* regardless of what groups it belongs to.
* <br>
* For after methods (afterSuite, afterClass, ...):
* If set to true, this configuration method will be run
* even if one or more methods invoked previously failed or
* was skipped.
*/
public boolean alwaysRun() default false;
/**
* If true, this &#64;Configuration method will belong to groups specified in the
* &#64;Test annotation on the class (if any).
*/
public boolean inheritGroups() default true;
/**
* The description for this method. The string used will appear in the
* HTML report and also on standard output if verbose >= 2.
*/
public String description() default "";
}