TestNG @Factory

遇到TestNG不能正常执行@Test,加@Factory解决了,简记如下:

1
2
3
4
5
6
7
8
9
10
11
12
public class TestA {

// 有参构造方法
public TestA(String s){
// ...
}

@Test
public void test(){
// ...
}
}

上面的@Test方法是无法执行的,加@Factory即可解决:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public class TestA {

// 有参构造方法
public TestA(String s){
// ...
}

@Factory
public static Object[] create() throws IOException{
List<TestA> result = new ArrayList<TestA>();
TestA te = new TestTest("hi");
result.add(te);
return result.toArray();
}

@Test
public void test(){
// ...
}
}

这个例子抽象得不够好,有时间再总结一下@Factory。