TestNG对两个班级进行一次测试

时间:2015-04-22 10:14:36

标签: java testng

我在某些类中有TestNG测试,它扩展了相同的主类。 我需要对class1和class2进行相同的最后一次测试,但如果我将@Test(priority = 666)添加到主类,它将在所有类之后启动。 我应该如何在主类中注释@Test在每个类的所有测试之后它会启动什么?

非常感谢。也很抱歉英语不好。

主要班级

    public class MainTest {

    @BeforeClass()
    public void setup() {
    //something 
    }

    @AfterClass()
    public void tearDown() {
    //something
    }

    @AfterMethod()
    public void log_writer(Method method) {
    //something
           }

    @Test(priority = 666) {}
    }

的Class1

    public class Class1 extends MainTest {

    @Test
    public void test1(){}

    @Test
    public void test2(){}  

    }

和class2

    public class Class2 extends MainTest {

    @Test
    public void test1(){}

    @Test
    public void test2(){}  
    }

2 个答案:

答案 0 :(得分:1)

您正在寻找的是@AfterClass注释。处理要在AfterClass注释方法中检查日志的部分

答案 1 :(得分:0)

这是不可能的。基本上每个@Test只运行一次。如果您需要在每个测试类之后执行某些操作,则必须在@AfterClass中对方法使用MainTest注释。您可以在MethodInterceptor(http://testng.org/doc/documentation-main.html#methodinterceptors)中使用方法顺序等执行一些操作,但这种情况并不是一个好主意。