}
下面是Mock对象,我们来Mock我们写好的方法
public class MockSystemEnvironment extends Environmental{
private long currentTime;
public long getTime(){
return currentTime;
}
public void setTime(long currentTime){
this.currentTime=currentTime;
}
public void playWavFile(String fileName){
playedWav=true;
}
public boolean wavWasPlayed(){
return playedWav;
}
public void resetWav(){
playedWav=false;
}
}
这样我们通过Mock出来的对象,就可以随时模拟时间的流动的。
Mockito
是Mock框架下的一种实现,所以Mockito的测试思想就是Mock的测试思想。
目前Android较为普遍的单元测试工具的使用就是 Junit4+Mocikto, 除了Mockito还有像 powermock
、jmock
,从名字上就可以看出他们都离不开Mock对象。
注意 Junit和Mockito是可以组合使用的,它们本身并不冲突,反而相得益彰。
===============================================================================
Mockito在mockito包下,所以和junit4不一样,需要我们手动导入:
dependencies {
…