TestNG framework provides some more features with the @Test to customise execution of test methods
To know basics about the @Test, see the testng annotation.
description: The description for this method.
groups: The list of groups this class/method belongs to.
Refer description and grouping testcases
priority: The priority for this test method. Lower priorities will be scheduled first.
Refer Prioritize test cases
enabled: Whether methods on this class/method are enabled.
Refer @Test method enabled property
dependsOnMethods: The list of methods this method depends on.
dependsOnGroups: The list of groups this method depends on.
alwaysRun: If set to true, this test method will always be run even if it depends on a method that failed.
invocationCount: The number of times a method should be invoked.
threadPoolSize: The size of the thread pool for a method.
timeOut: this works with threadPoolSize
timeOut says how much time a particular thread holds, after the time over, thread will be release and test will not be executed