Sat*_*ddu 3 junit unit-testing hbase mockito powermock
我的应用程序中有一个从 HBase 访问数据的方法。它使用scan方法来查询hbase。我想编写单元测试用例来测试这个功能。所以我想模拟 hbase 调用。怎么做?我正在使用 Mockit 进行模拟。
如果您使用 Mockito,您可以存根您的类以使它们返回您想要的内容。
假设您调用了一个类,并在该类中HBaseHelper调用了一个方法,该方法使用扫描仪从 hbase 检索数据。getData()现在假设您useData()在另一个类中调用了另一个方法,如下所示:
public String useData() {
String data = hbaseHelper.getData();
// ... Do things with data
return data;
}
Run Code Online (Sandbox Code Playgroud)
如果您使用 Mockito,您可以在测试中有效地执行类似的操作以返回虚拟“数据”并测试使用此数据的方法:
import org.mockito.Mock;
import org.mockito.Mockito.when;
@Mock
HBaseHelper hbaseHelper;
@Test
public void testFoo() {
when(hbaseHelper.getData()).thenReturn("hello world");
assertThat(useData()).equals("hello world");
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4682 次 |
| 最近记录: |