我正在尝试测试一个抽象类“Comando”,它有几十个继承的类。我真正想要测试的是许多不同的chuld类,用于测试每个不同的行为(“Comando”转换为Command),我的测试用例如下:
public void testComandoGetInfo() {
ComandoGetInfo cmd = new ComandoGetInfo(equip);
equip.executarComando(cmd, true, true);
cmd.getStatus();
}
注意第cmd.getStatus()
行。当我写这行时,NetBeans给了我一个“找不到方法”的编译错误。当我切换代码完成时,我看不到任何Comando的方法,只有TestCase测试方法和ComandoGetInfo类上的单个方法。
ComandoGetInfo是一个扩展Comando的类,它有许多方法和变量,包括公共和私有。
那么为什么我不能访问父类Comando的任何方法(我的意思是任何,甚至是getter,setter,公共方法或变量,任何东西,甚至不是静态的),以及如果我不能的话如何测试它?
编辑:发现错误是什么。我只是将我的测试类命名为我的原始类,因此Comando.java的测试类是... Comando.java,位于测试文件夹的同一个包中。将文件重命名为正确名称“ComandoTest.java”后,一切恢复正常。