在我的 UT 代码中,提取下面的内容,我看到警告:
Unchecked generic array creation for varargs parameter of
type Matcher <? extends String> []
我已经阅读了另一个关于使用 varargs 方法的泛型参数的问题的stackoverflow 答案。
但是有没有一种巧妙的方法来稍微重组这个测试来摆脱丑陋的警告并避免@SuppressWarnings
?
package stackoverflow;
import org.hamcrest.CoreMatchers;
import org.junit.Assert;
import org.junit.Test;
import static org.junit.matchers.JUnitMatchers.containsString;
import static org.hamcrest.CoreMatchers.not;
public class FooTest {
@SuppressWarnings({"unchecked"})
@Test
public void sampleTest() {
Assert.assertThat("foo bar",
CoreMatchers.allOf(
containsString("foo"),
containsString("bar"),
not(containsString("baz"))));
}
}