Правила довольно легко эмулировать, например, с суперклассами:
public void Base {
@BeforeMethod
public void createTempDir() { ... }
@AfterMethod
public void deleteTempDir() { ... }
}
public void MyTest extends Base {
@Test
...
}
Если вы расширяете Base, временный каталог всегда будет автоматически создаваться, а затем удаляться.
ПреимуществоЭтот подход по сравнению с Правилами заключается в том, что Правила всегда ограничены областью классов, а с помощью TestNG вы можете реализовать их вокруг методов, тестов, классов, групп и даже наборов.