测试类需要在具体类中将方法定义为静态。但具体类从一个接口实现了一个方法。测试类要求具体类中的方法是静态的
该接口不允许实现的方法是静态的。
接口:
public interface ArithmeticSkeleton {
public int operation(int a, int b);
}
具体类
public class Divide implements ArithmeticSkeleton{
public int operation(int a, int b) {
return (a/b);
}
}
JUnit测试用例:
public class ArithmeticSkeletontest {
private ArithmeticSkeleton as;
@Test
public void testDivision() throws Exception {
assertEquals("5", Divide.operation(10, 2));
}
}
然而,吨他测试代码不允许Divide.operation被访问。
您不能访问的操作方法,以这样一种方式如果你想这样做,你必须使用静态方法,否则只需要新的Divide()。操作(10,2)就足够了 – imoteb
除了在这里使用答案外,还需要将''5''更改为' 5'内'assertEquals'来做这个测试通过。 –