rom*_*eok 5 testng annotations class
从TestNG doc我可以看到(enabled = false)可以应用于类或方法.但似乎只有在应用于方法时才有效.
有人看到同样的,找到了解决方案?
我顺便在ItelliJ IDEA 7.0中运行测试.
Ced*_*ust 10
它似乎对我有用:
@Test(enabled = false)
public class B {
public void btest1() {
System.out.println("B.btest1");
}
}
Run Code Online (Sandbox Code Playgroud)
结果:
===============================================
SingleSuite
Total tests run: 0, Failures: 0, Skips: 0
===============================================
Run Code Online (Sandbox Code Playgroud)
将false更改为true:
B.btest1
===============================================
SingleSuite
Total tests run: 1, Failures: 0, Skips: 0
===============================================
Run Code Online (Sandbox Code Playgroud)
这可能是绊倒你(很难说,因为你没有提供任何代码):
@Test(enabled = false)
public class B {
@Test
public void btest1() {
System.out.println("B.btest1");
}
}
Run Code Online (Sandbox Code Playgroud)
这种情况将运行测试,因为通过@Test在方法上重复注释,您还将该enabled属性覆盖为其默认值,即true.
解决方案是enabled=false在方法层面重申:
@Test(enabled = false)
public class B {
@Test(enabled = false)
public void btest1() {
System.out.println("B.btest1");
}
}
Run Code Online (Sandbox Code Playgroud)
我知道这有点违反直觉,但为了在方法注释覆盖类注释的方式上保持一致,这是必要的.