Sonar抱怨断言使用nullValue

时间:2018-03-02 13:48:53

标签: java junit sonarqube hamcrest

使用JUnit 4.12测试用例:

import static org.hamcrest.CoreMatchers.nullValue;
import static org.junit.Assert.assertThat;

//...

@Test
public void testShouldReturnNull() {
    final Long result = getIdFunction.apply(null);
    assertThat(result, is(nullValue()));
}
索纳说:

  

在此测试用例中添加至少一个断言。

为什么Sonar说没有断言以及如何解决它?

SonarQube v6.7

1 个答案:

答案 0 :(得分:0)

我刚刚为这种情况找到了解决方案:

这里应该使用来自Hamcrest的MatcherAssert类的assertThat方法而不是JUnit的Assert类。所以这里应该使用下一个导入:

import static org.hamcrest.MatcherAssert.assertThat;

而不是:

import static org.junit.Assert.assertThat;