| package org.testng; |
| |
| |
| import java.io.Serializable; |
| import java.util.List; |
| |
| /** |
| * Describes a TestNG annotated method and the instance on which it will be invoked. |
| * |
| * This interface is not meant to be implemented by users. |
| * |
| * <p> |
| * Modified by Google |
| * <ul> |
| * <li>removed java.reflect.Method</li> |
| * </ul> |
| * |
| * @author Cedric Beust, May 3, 2004 |
| */ |
| public interface ITestNGMethod extends Comparable, Serializable, Cloneable { |
| |
| /** |
| * @return The real class on which this method was declared |
| * (can be different from getMethod().getDeclaringClass() if |
| * the test method was defined in a superclass). |
| */ |
| Class getRealClass(); |
| |
| ITestClass getTestClass(); |
| |
| /** |
| * Sets the test class having this method. This is not necessarily the declaring class. |
| * |
| * @param cls The test class having this method. |
| */ |
| void setTestClass(ITestClass cls); |
| |
| /** |
| * Returns the corresponding Java test method. |
| * @return the corresponding Java test method. |
| */ |
| Object getMethod(); |
| |
| /** |
| * Returns the method name. This is needed for serialization because |
| * methods are not Serializable. |
| * @return the method name. |
| */ |
| String getMethodName(); |
| |
| /** |
| * @return All the instances the methods will be invoked upon. |
| * This will typically be an array of one object in the absence |
| * of an @Factory annotation. |
| */ |
| Object[] getInstances(); |
| |
| /** |
| * Needed for serialization. |
| */ |
| long[] getInstanceHashCodes(); |
| |
| /** |
| * @return The groups this method belongs to, possibly added to the groups |
| * declared on the class. |
| */ |
| String[] getGroups(); |
| |
| /** |
| * @return The groups this method depends on, possibly added to the groups |
| * declared on the class. |
| */ |
| String[] getGroupsDependedUpon(); |
| |
| /** |
| * If a group was not found. |
| */ |
| String getMissingGroup(); |
| public void setMissingGroup(String group); |
| |
| /** |
| * Before and After groups |
| */ |
| public String[] getBeforeGroups(); |
| public String[] getAfterGroups(); |
| |
| /** |
| * @return The methods this method depends on, possibly added to the methods |
| * declared on the class. |
| */ |
| String[] getMethodsDependedUpon(); |
| void addMethodDependedUpon(String methodName); |
| |
| /** |
| * @return true if this method was annotated with @Test |
| */ |
| boolean isTest(); |
| |
| /** |
| * @return true if this method was annotated with @Configuration |
| * and beforeTestMethod = true |
| */ |
| boolean isBeforeMethodConfiguration(); |
| |
| /** |
| * @return true if this method was annotated with @Configuration |
| * and beforeTestMethod = false |
| */ |
| boolean isAfterMethodConfiguration(); |
| |
| /** |
| * @return true if this method was annotated with @Configuration |
| * and beforeClassMethod = true |
| */ |
| boolean isBeforeClassConfiguration(); |
| |
| /** |
| * @return true if this method was annotated with @Configuration |
| * and beforeClassMethod = false |
| */ |
| boolean isAfterClassConfiguration(); |
| |
| /** |
| * @return true if this method was annotated with @Configuration |
| * and beforeSuite = true |
| */ |
| boolean isBeforeSuiteConfiguration(); |
| |
| /** |
| * @return true if this method was annotated with @Configuration |
| * and afterSuite = true |
| */ |
| boolean isAfterSuiteConfiguration(); |
| |
| /** |
| * @return <tt>true</tt> if this method is a @BeforeTest (@Configuration beforeTest=true) |
| */ |
| boolean isBeforeTestConfiguration(); |
| |
| /** |
| * @return <tt>true</tt> if this method is an @AfterTest (@Configuration afterTest=true) |
| */ |
| boolean isAfterTestConfiguration(); |
| |
| boolean isBeforeGroupsConfiguration(); |
| |
| boolean isAfterGroupsConfiguration(); |
| |
| /** |
| * @return The timeout in milliseconds. |
| */ |
| long getTimeOut(); |
| void setTimeOut(long timeOut); |
| |
| /** |
| * @return the number of times this method needs to be invoked. |
| */ |
| int getInvocationCount(); |
| void setInvocationCount(int count); |
| |
| /** |
| * @return the success percentage for this method (between 0 and 100). |
| */ |
| int getSuccessPercentage(); |
| |
| /** |
| * @return The id of the thread this method was run in. |
| */ |
| String getId(); |
| |
| void setId(String id); |
| |
| long getDate(); |
| |
| void setDate(long date); |
| |
| /** |
| * Returns if this ITestNGMethod can be invoked from within IClass. |
| */ |
| boolean canRunFromClass(IClass testClass); |
| |
| /** |
| * @return true if this method is alwaysRun=true |
| */ |
| boolean isAlwaysRun(); |
| |
| /** |
| * @return the number of threads to be used when invoking the method on parallel |
| */ |
| int getThreadPoolSize(); |
| |
| void setThreadPoolSize(int threadPoolSize); |
| |
| public String getDescription(); |
| |
| public void incrementCurrentInvocationCount(); |
| public int getCurrentInvocationCount(); |
| public void setParameterInvocationCount(int n); |
| public int getParameterInvocationCount(); |
| |
| public ITestNGMethod clone(); |
| |
| public IRetryAnalyzer getRetryAnalyzer(); |
| public void setRetryAnalyzer(IRetryAnalyzer retryAnalyzer); |
| |
| public boolean skipFailedInvocations(); |
| public void setSkipFailedInvocations(boolean skip); |
| |
| /** |
| * The time under which all invocationCount methods need to complete by. |
| */ |
| public long getInvocationTimeOut(); |
| |
| public boolean ignoreMissingDependencies(); |
| public void setIgnoreMissingDependencies(boolean ignore); |
| |
| /** |
| * Which invocation numbers of this method should be used (only applicable |
| * if it uses a data provider). If this value is an empty list, use all the values |
| * returned from the data provider. These values are read from the XML file in |
| * the <include invocationNumbers="..."> tag. |
| */ |
| public List<Integer> getInvocationNumbers(); |
| public void setInvocationNumbers(List<Integer> numbers); |
| |
| /** |
| * The list of invocation numbers that failed, which is only applicable for |
| * methods that have a data provider. |
| */ |
| public void addFailedInvocationNumber(int number); |
| public List<Integer> getFailedInvocationNumbers(); |
| |
| /** |
| * The scheduling priority. Lower priorities get scheduled first. |
| */ |
| public int getPriority(); |
| public void setPriority(int priority); |
| } |