0

我有以下单元测试架构:

@RunWith(Enclosed.class)
public class ProductTest {

    @RunWith(MockitoJUnitRunner.class)
    public static abstract class Base {...}

    public static class Test1 extends Base{
        @Test
        public void foo(){...}
        }
    }

    public static class Test2 extends Base{
        @Test
        public void bar(){...}
        }
    }
}

如果我运行单元测试,我会看到以下错误消息:

org.mockito.exceptions.base.MockitoException: 

No tests found in Base
Haven't you forgot @Test annotation?

Mockito 试图说我Base是测试位没有注释的方法@Test

我找到了决定——忽略基类。

位看起来像黑客。有没有更优雅的方式?

4

1 回答 1

1

移出类(可以在同一个文件中)并移至Base具体类。ProductTestRunWith

于 2015-02-11T16:39:36.767 回答