java - 通过 Maven 从内部类运行测试

标签 java unit-testing maven-2 junit

我有以下测试结构:

public class WorkerServiceTest {

    public class RaiseErrorTest extends AbstractDbUnitTest{
        @Test
        public void testSomething(){
        } 

        ...
    }

    ...
}

这样做是因为我不想为每个扩展 AbstractDbUnitTest 的测试用例创建一个单独的类文件。

问题是 mvn test 没有从我的内部类运行测试。有没有办法配置 Maven运行这样的测试?当然,我可以在父类中创建调用内部类方法的方法,但我想要一种更清晰的方法。

最佳答案

是的,这可以使用新的(好吧,它不再是新的了)Enclosed运行器(自 JUnit 4.5 起)运行外部类的所有静态内部类。

要使用它,只需用 @RunWith(Enclosed.class) 注释外部类并将内部类设为静态。

@RunWith(Enclosed.class)
public class WorkerServiceTest {

    public static class RaiseErrorTest extends AbstractDbUnitTest{
        @Test
        public void testSomething(){
        } 

        ...
    }

    ...
}

mvn test 将运行它们。

关于java - 通过 Maven 从内部类运行测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2086569/

相关文章:

java - 如何隔离 void print() 方法进行测试

unit-testing - 测试随机值 - 关于这种方法的想法?

eclipse - 搜索依赖项不返回任何内容

maven - 在 Maven 项目中查找包含类文件的 jar

java - 当没有可用连接时显示 toast 错误并阻止显示 webview

java - Volley 补丁错误

c# - 如何使用 SimpleInjector 3+ 对装饰器注册进行单元测试?

java - 如何将 MimeBodyPart ContentType 设置为 "text/html"?

java - 截断为整数...以及 if 语句确定它是否不是整数

eclipse - 将 Maven 项目导入 Eclipse