我在 JUnit 3 中有以下版本的测试,我尝试将其转换为 JUnit 4,但没有成功。这个想法是有一个基本的测试用例,对接口进行实际测试,比如Service接口。我想ServiceImpl使用基本测试用例来测试这个类。
公共抽象类 ServiceBaseTest 扩展 TestCase {
受保护的服务服务;
受保护的抽象服务 getService();
@覆盖
公共无效设置(){
服务 = 获取服务();
}
公共无效测试方法(){
//测试代码
}
...
}
ServiceImplTest类如:
公共类 ServiceImplTest 扩展 ServiceBaseTest {
@覆盖
公共无效设置(){
服务 = 新的 ServiceImpl();
}
}
我知道我可以删除TestCase扩展名并将@BeforeClass 用于该setup方法。但不同的是,@BeforeClass需要的方法setup是static。这对我来说很棘手,因为我不能制作getService()静态,因为它会与abstract关键字冲突。
Question:使用 JUnit 4 实现替代方案是一种干净的方式吗?