1

ここで何かが足りませんか?

@Test
public void testAnything(){
    Random random = new Random();
    assertThat(random.nextInt(), is(equalTo(anything())));
}

これはコンパイルされません。Eclipseは、「MatcherAssert型のメソッドassertThat(T、Matcher)は、引数(int、Matcher>)には適用できません」と文句を言います。

何か()を使用するために私が見逃したものはありましたか?私は過去に他のハムクレストの方法を使用しました...それで、これについて何が違うのですか?

4

1 に答える 1

2

それはどのようにequalTo機能するかではありません。Object#equals(Object)内部で呼び出し、を渡す必要がありanything()ます。それは意味がありません。省略するだけで機能します。

Random random = new Random();
assertThat(random.nextInt(), is(anything()));
于 2012-12-12T11:35:05.877 に答える