我有一个监听器,它实现了 IResultListener2 的 onTestSuccess 和 onTestFailure 方法。在我的测试中,我在 @after 注释方法中创建了侦听器所需的屏幕截图。但是 testng 在 @after 方法之前调用侦听器中的方法。
是否有先运行@after 方法的参数?
AFAIK,没有这种参数。after 方法将特定于一组特定的情况。您不希望为所有案例而不是特定集合执行捕获屏幕截图的逻辑吗?在这种情况下,您的屏幕截图捕获逻辑应该在您的侦听器方法中,并且您的特定案例集的任何清理逻辑都应该在 after 方法中。
如果您想在 aftermethods 之后做一些特定的事情,那么您可以尝试实现 IconfigurationListener,并在检查调用方法是否是 aftermethod 之后实现这些方法,例如..
public void onConfigurationSuccess(ITestResult arg0) {
if(arg0.getMethod().isAfterMethodConfiguration())...do something;
}
希望能帮助到你..