java - JUnit4 使用测试套件运行特定包中的所有测试

标签 java junit junit4 test-suite

这在 JUnit4 中可行吗?

在 JUnit3 中,我会执行以下操作:

public class MyTestSuite {

  public static Test suite() throws Exception {
     doBeforeActions();

     try {
        TestSuite testSuite = new TestSuite();
        for(Class clazz : getAllClassesInPackage("com.mypackage")){
            testSuite.addTestSuite(clazz);
        }
        return testSuite;
     } finally {
        doAfterActions
     }
  }

...

}

最佳答案

The takari-cpsuite (最初由 Johannes Link 开发)提供了一个可以满足您需求的类路径套件。 它允许通过正则表达式过滤 Classpath 中的类,例如:

import org.junit.extensions.cpsuite.ClasspathSuite.*;
...
@ClassnameFilters({"mytests.*", ".*Test"})
public class MySuite...

关于java - JUnit4 使用测试套件运行特定包中的所有测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7331214/

相关文章:

java - 如何使用Java检查Selenium WebDriver中的必填字段是否为空?

java - 在 Ivy 中使用 Bintray maven 存储库

android - 使用 power mockito 模拟方法调用 - org.powermock.api.mockito.ClassNotPreparedException

java - Java 接口(interface)应该只包含 getter 吗?

java - 运行 gradle 测试时找不到属性文件

java - 如何编写测试代码来测试我的异常处理代码?

java - 更改单元测试的私有(private)方法行为

java - adfm.jar 文件的用途是什么?如何将其从构建中排除?

java - 如何让抽象类更加简洁?

java - 预触发 propertyChangeEvent 的危险