sonar集成测试覆盖率问题
给一个方法写了个单元测试,在eclipse里面debug都可以看到程序按照单元测试写的正常在跑,但使用sonar分析的时候,一直提示它里面的那个判断没有被覆盖。
@Test @PrepareForTest(ReSendMessageHandler.class) public void testGetFinalSubmitMessage() { try { CMPPSubmitMessage[] commonSubmit = new CMPPSubmitMessage[2]; ReSendMessageHandler spy = PowerMockito.spy(reSendMessageHandler); PowerMockito.doReturn(null).when(spy, "getStreamControlErrorNeedResendMessage"); assertArrayEquals(commonSubmit, spy.getFinalSubmitMessage(commonSubmit)); PowerMockito.doReturn(new CMPPSubmitMessage[0]).when(spy, "getStreamControlErrorNeedResendMessage"); assertArrayEquals(commonSubmit, spy.getFinalSubmitMessage(commonSubmit)); } catch (Exception e) { e.printStackTrace(); } }
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
看我第一个回复,已经说出了答案
默认用的是jacoco,改成 Cobertura就可以了?我改了之后,所有单元测试什么都统计不到了,不知道是哪里配置处了问题
我也遇到了,兄弟,你怎么解决的?
唉,伤心呀。都没有人回答的。 其实是因为sonar默认集成的那个单元测试覆盖检测工具不对powermock进行检测才会出现上面的 情况。