1

我有一个 JUnit 4 测试,它检查我正在测试的代码是否引发了异常。测试如下:

@Test(expected = AmqpRejectAndDontRequeueException.class)
    public void getChannelKeysThrowsAmqpRejectAndDontRequeueExceptionIfProcessIdIsMissing() {
    processNameBasedRouter.getChannelKeys(new GenericMessage<Object>(new Machine()));
}

在 SonarQube 中提出了一个问题,因为没有涵盖分支。在我看来,这个分支被覆盖了,如果我在 IntelliJ 中运行测试,我会得到 100% 的覆盖率。我认为这是因为 JUnit4 中的预期异常检查,还是有其他原因?

在此处输入图像描述

4

0 回答 0