Java 元测试,以测试所有JUnit测试是否都是给定测试类的子类

Java 元测试,以测试所有JUnit测试是否都是给定测试类的子类,java,parsing,testing,Java,Parsing,Testing,我们有一个策略,所有的测试类都扩展一个给定的测试类。基类将JUnit运行程序设置为使用,并检查有关测试类的其他内容,因此不从中进行子类化意味着不会检查您做错的其他内容。(其中最严重的情况是,有一个类别表明运行测试的成本很高,但由于没有使用运行程序,因此即使运行快速测试构建目标,测试也会运行。) 我想这将涉及到解析Java代码,但我似乎只能找到类文件的解析器。有没有好的解析器可以解析Java源代码 (这可能与我要问的关于强制使用某些Javadoc标记的另一个问题有关,因为这样的解析器肯定也会解析J

我们有一个策略,所有的测试类都扩展一个给定的测试类。基类将JUnit运行程序设置为使用,并检查有关测试类的其他内容,因此不从中进行子类化意味着不会检查您做错的其他内容。(其中最严重的情况是,有一个类别表明运行测试的成本很高,但由于没有使用运行程序,因此即使运行快速测试构建目标,测试也会运行。)

我想这将涉及到解析Java代码,但我似乎只能找到类文件的解析器。有没有好的解析器可以解析Java源代码

(这可能与我要问的关于强制使用某些Javadoc标记的另一个问题有关,因为这样的解析器肯定也会解析Javadoc。)


或者,有没有一种简单的方法来设置JUnit runner而不进行子类化?整个子类化业务非常非常不方便。

我认为这是一个糟糕的政策。这就是注释和组的用途。看看TestNG。为什么这会涉及到解析源代码?(还有达菲莫所说的。)(1)我没有使用TestNG,所以它不会真正帮助我。(2) 我们已经在使用注释,并且基本测试类正在设置运行程序,该运行程序具有用于遵循这些注释的代码,因为JUnit没有其他选择。您使用的是哪个版本的JUnit?版本4.9(最新的afaik)