JMockit:测试覆盖抽象方法的方法
JMockit: Testing Methods that override an Abstract Method
我目前有以下类:
public abstract class superClass {
abstract void abstractTest();
}
public class classForTesting extends superClass {
@Override
void abstractTest() {
...
}
}
我目前正在为 classForTesting 编写单元测试(使用 JUnit + JMockit),但我不确定如何测试 abstractTest()。我尝试模拟超类,但我仍然无法调用 abstractTest()。
任何想法将不胜感激。
谢谢!
如果你不想让abstractTest成为public,那就测试调用abstractTest的方法。我还更改了 class 名称以大写字母开头。
public abstract class SuperClass {
abstract void abstractTest();
}
public class ClassForTesting extends SuperClass {
@Override
void abstractTest() {
...
}
public void publicMethod() {
abstractTest()
}
}
现在测试public方法:
public class PublicTest {
private ClassForTesting classForTesting;
@Before
public void setUp(){
classForTesting = ClassForTesting();
}
@Test
public void testMethod() {
classForTesting.publicMethod();
...
}
}
我目前有以下类:
public abstract class superClass {
abstract void abstractTest();
}
public class classForTesting extends superClass {
@Override
void abstractTest() {
...
}
}
我目前正在为 classForTesting 编写单元测试(使用 JUnit + JMockit),但我不确定如何测试 abstractTest()。我尝试模拟超类,但我仍然无法调用 abstractTest()。
任何想法将不胜感激。
谢谢!
如果你不想让abstractTest成为public,那就测试调用abstractTest的方法。我还更改了 class 名称以大写字母开头。
public abstract class SuperClass {
abstract void abstractTest();
}
public class ClassForTesting extends SuperClass {
@Override
void abstractTest() {
...
}
public void publicMethod() {
abstractTest()
}
}
现在测试public方法:
public class PublicTest {
private ClassForTesting classForTesting;
@Before
public void setUp(){
classForTesting = ClassForTesting();
}
@Test
public void testMethod() {
classForTesting.publicMethod();
...
}
}