对此的新手,只有我的第二天,但我很难完全覆盖这种方法......我想我只是不理解 lambdas 正确吗?或者也许我只是不了解所有 Mockito 吗?也许两者都...
以下是单元测试下的源代码:
List<String> domains = jdbcTemplate.query(
query,
(rs, rownum) -> rs.getString(1)
);
这是我目前编译的一些覆盖范围:
@Test
public void test_Repository_getAIPDomains() throws DataAccessException {
when(jdbcTemplate.query(anyString(), Mockito.any(RowMapper.class))).thenReturn(testStringList);
List<String> testList = Repository.getAIPDomains();
Assertions.assertEquals("junit", testList.get(0));
}
这不提供以下覆盖范围:
(rs, rownum) -> rs.getString(1)
我已经尝试了很多不同的方法来尝试覆盖,但是它与 resultSetExtractor 和其他 rollbackcallhandler 有点混乱。非常感谢任何帮助,甚至是一些资源的链接。
回答1
你在哪里使用 testStringList(expected ) ? Assertions.assertEquals(testStringList, testList.get(0));你需要在你期望的列表中设置 value ,然后是comapre/assert