我有一个接口:Show,我有实现类调用ShowImpl,我也有一个实现类调用ManageShowImpl。我已经完成了ManageShowImpl中的所有方法。现在我正在进行Junit测试。我在ManageShowImpl中定义的方法,例如:addShows(Show ... shows),现在我想为show数组赋值:Show [],但在界面:Show中,我没有setter方法(一些专家告诉我如何将值添加到Show []。
答案 0 :(得分:0)
如果我正确理解了您的问题,我认为您只需在构造函数中设置值:
public class ShowImpl implements Show{
private Show[] shows;
public ShowImpl(Show... shows){
this.shows = shows;
}
@Override
public void someInterfaceMethod(){
// ...
}
}
答案 1 :(得分:0)
(我不是 junit专家,甚至是初学者,但也许我可以鼓励一些人回答。我已经进行了大量的测试。)
给定一个带有构造函数的类,您始终可以创建一个实例,用您想要的任何数据填充它,并以您想要的任何方式进行测试。接口更加有限。除了测试,这是一件非常好的事情。它限制了如果他们掌握了接口实现,他们可以做的损害;它安全地封装了数据。但是你不能孤立地测试接口。您需要首先创建实现类的实例。那时你应该填写你的数组。 然后将其作为接口实例传递给测试方法以测试接口。