我必须为具有多个抽象类和方法的应用程序开发JUnit测试用例。是否有可能为抽象类创建JUnit测试用例而不被另一个类扩展? 如果子类扩展了一个抽象类,那么它是否足以测试子类?如何为抽象类的非抽象方法创建测试用例?
答案 0 :(得分:4)
由于无法创建抽象类的实例,因此必须使用派生类来测试它。您可以创建一个非常简单的类来扩展抽象类以进行测试。测试时确保子类用于测试抽象类中需要测试的所有方法。
答案 1 :(得分:1)
以下是我将如何处理这个......
protected
方法,该方法返回名为abstract
getInstance()
类的实例
getInstance()
/ setup
方法调用@Before
方法,以填充将用于测试的字段这种方法允许您在测试扩展抽象类的类时重用这组测试。您可以通过对具体类进行测试来扩展抽象类的测试并覆盖getInstance
方法以返回具体类的实例。
答案 2 :(得分:0)
你可以像Kevin Bowersox所说的那样做,或者你也可以使用一些模拟框架。
答案 3 :(得分:0)
在抽象方法中使用您想要的任何实现的匿名类。