Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JUnit代码覆盖率没有完全覆盖_Junit - Fatal编程技术网

JUnit代码覆盖率没有完全覆盖

JUnit代码覆盖率没有完全覆盖,junit,Junit,我为下面的类编写了测试用例,但问题仍然是它没有得到100%的覆盖,并且我在下面的类中提到了不使用>符号的覆盖代码。有人能建议我如何处理剩余的覆盖代码吗 存储库类 测试用例 我建议在if块中放置一个断点。 如果没有包含代码,显然没有测试进入该块 一个可能的问题是调用baaisnavcidmsrepository.insertproductDetails,然后(测试中的下一行)在Mockito中指定期望值。我不是mockito专家,但在“测试中的主题”执行期间,mockito如何知道您希望它返回0/

我为下面的类编写了测试用例,但问题仍然是它没有得到100%的覆盖,并且我在下面的类中提到了不使用>符号的覆盖代码。有人能建议我如何处理剩余的覆盖代码吗

存储库类 测试用例
我建议在
if
块中放置一个断点。 如果没有包含代码,显然没有测试进入该块

一个可能的问题是调用
baaisnavcidmsrepository.insertproductDetails
,然后(测试中的下一行)在Mockito中指定期望值。我不是mockito专家,但在“测试中的主题”执行期间,mockito如何知道您希望它返回0/1?如果它使用一些默认值,它总是可以返回0,所以如果分支不执行的话

    public RowMapperServerResponse insertproductDetails(RowMapperServerResponse rowMapperServerResponse) {
            try {
                int insertRow = jdbcTemplate.update(
                        "insert into Master_Circuit (id_type,product,seq_no,name,dependent_count,create_time) values(?,?,?,?,?,?)",
                        rowMapperServerResponse.getId_type(), rowMapperServerResponse.getProduct(),
                        rowMapperServerResponse.getSeq_no(), rowMapperServerResponse.getName(),
                        rowMapperServerResponse.getDependent_count(), rowMapperServerResponse.getCreate_time());

        *
> if (insertRow != 0) {
>                       return rowMapperServerResponse;
>                   }
>               } catch (EmptyResultDataAccessException e) {
>                   return null;
>               }

*
            return null;
        }
@Test
    public void insertproductDetailsTest() {

        baaisnEvcIdMSRepository.insertproductDetails(rowResponse());

        Mockito.when(jdbcTemplate.update(Mockito.anyString(), Mockito.anyString(), Mockito.anyString(),
                Mockito.anyInt(), Mockito.anyString(), Mockito.anyInt(), Mockito.any())).thenReturn(1);

        Mockito.verify(jdbcTemplate, Mockito.times(1)).update(Mockito.anyString(), Mockito.anyString(),
                Mockito.anyString(), Mockito.anyInt(), Mockito.anyString(), Mockito.anyInt(), Mockito.any());
    }

    @Test
    public void insertproductDetailsEmptyTest() {

        baaisnEvcIdMSRepository.insertproductDetails(rowResponse());

        Mockito.when(jdbcTemplate.update(Mockito.anyString(), Mockito.anyString(), Mockito.anyString(),
                Mockito.anyInt(), Mockito.anyString(), Mockito.anyInt(), Mockito.any())).thenReturn(0);

        Mockito.verify(jdbcTemplate, Mockito.times(1)).update(Mockito.anyString(), Mockito.anyString(),
                Mockito.anyString(), Mockito.anyInt(), Mockito.anyString(), Mockito.anyInt(), Mockito.any());
    }

    private RowMapperServerResponse rowResponse() {

        RowMapperServerResponse rowMapperServerResponse = mock(RowMapperServerResponse.class);
        Mockito.when(rowMapperServerResponse.getMaster_kit_id()).thenReturn(464662);
        Mockito.when(rowMapperServerResponse.getId_type()).thenReturn("EMSsample");
        Mockito.when(rowMapperServerResponse.getProduct()).thenReturn("sample");
        Mockito.when(rowMapperServerResponse.getSeq_no()).thenReturn(36316);
        Mockito.when(rowMapperServerResponse.getName()).thenReturn("TLS");
        Mockito.when(rowMapperServerResponse.getDependent_count()).thenReturn(0);
        Mockito.when(rowMapperServerResponse.getCreate_time()).thenReturn(new Date());

        return rowMapperServerResponse;
    }