我目前有以下课程:
public abstract class superClass {
abstract void abstractTest();
}
public class classForTesting extends superClass {
@Override
void abstractTest() {
...
}
}
我目前正在为classForTesting编写单元测试(使用JUnit + JMockit),但我不确定如何测试abstractTest()。我试过模拟超类,但我仍然无法调用abstractTest()。
任何想法都将不胜感激。
谢谢!
答案 0 :(得分:1)
如果您不希望abstractTest公开,那么请测试调用abstractTest的方法。我还将类名更改为以大写字母开头。
public abstract class SuperClass {
abstract void abstractTest();
}
public class ClassForTesting extends SuperClass {
@Override
void abstractTest() {
...
}
public void publicMethod() {
abstractTest()
}
}
现在测试publicMethod:
public class PublicTest {
private ClassForTesting classForTesting;
@Before
public void setUp(){
classForTesting = ClassForTesting();
}
@Test
public void testMethod() {
classForTesting.publicMethod();
...
}
}