TestNG 一测二 类
TestNG one test for two classes
我在某些 classes 中进行了 TestNG 测试,它们扩展了相同的主要 class。
我需要对 class1 和 class2 进行相同的最后一次测试,但是如果我将 @Test(priority = 666)
添加到主 class 它会在所有 class 之后开始。
我应该如何在 main class 中注释 @Test
在每个 class 的所有测试之后它将开始什么?
非常感谢。也抱歉英语不好。
主要class
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(){}
}
您正在寻找的是@AfterClass 注释。在 AfterClass 注释方法中处理要检查日志的部分
这不可能。基本上每个 @Test
只运行一次。如果您需要在每次测试 class 后做一些事情,您必须在 MainTest
中的方法上使用 @AfterClass
注释。您可以在 MethodInterceptor (http://testng.org/doc/documentation-main.html#methodinterceptors) 中使用方法顺序等进行一些 hack,但这不是这种情况的好主意。
我在某些 classes 中进行了 TestNG 测试,它们扩展了相同的主要 class。
我需要对 class1 和 class2 进行相同的最后一次测试,但是如果我将 @Test(priority = 666)
添加到主 class 它会在所有 class 之后开始。
我应该如何在 main class 中注释 @Test
在每个 class 的所有测试之后它将开始什么?
非常感谢。也抱歉英语不好。
主要class
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(){}
}
您正在寻找的是@AfterClass 注释。在 AfterClass 注释方法中处理要检查日志的部分
这不可能。基本上每个 @Test
只运行一次。如果您需要在每次测试 class 后做一些事情,您必须在 MainTest
中的方法上使用 @AfterClass
注释。您可以在 MethodInterceptor (http://testng.org/doc/documentation-main.html#methodinterceptors) 中使用方法顺序等进行一些 hack,但这不是这种情况的好主意。