Class @Test(enabled=false)是否适用于TestNG中的类?

Class @Test(enabled=false)是否适用于TestNG中的类?,class,annotations,testng,Class,Annotations,Testng,从TestNG文档中,我可以看到(enabled=false)可以应用于类或方法。但它似乎只适用于一种方法 有人看到了同样的情况,找到了解决方案吗?这似乎对我有用: @Test(enabled=false) 公共B级{ 公共测试1(){ System.out.println(“B.btest1”); } } 结果: =============================================== 单人套房 运行的测试总数:0,失败:0,跳过:0 =================

从TestNG文档中,我可以看到
(enabled=false)
可以应用于类或方法。但它似乎只适用于一种方法


有人看到了同样的情况,找到了解决方案吗?

这似乎对我有用:

@Test(enabled=false)
公共B级{
公共测试1(){
System.out.println(“B.btest1”);
}
}
结果:

===============================================
单人套房
运行的测试总数:0,失败:0,跳过:0
===============================================
将false更改为true:

B.btest1
===============================================
单人套房
运行的测试总数:1,失败:0,跳过:0
===============================================

可能原因 以下是可能让您感到困惑的内容(很难说,因为您没有提供任何代码):

@Test(enabled=false)
公共B级{
@试验
公共测试1(){
System.out.println(“B.btest1”);
}
}
本例将运行测试,因为通过重复方法上的
@test
注释,您也
enabled
属性覆盖为其默认值,即
true

解决方案是在方法级别重申
enabled=false

@Test(enabled=false)
公共B级{
@测试(已启用=错误)
公共测试1(){
System.out.println(“B.btest1”);
}
}

我知道这有点违反直觉,但为了在方法注释可以覆盖类注释的方式上保持一致,这是必要的。

为了读者的利益,它不能
启用
,必须
启用
。刚刚发现,最好使用
测试组
测试组的命令行用法来挑出单个测试。