0

好的,所以我想测试我闪亮的新 hamcrest Matchers。

是否有任何匹配器匹配自定义匹配器匹配或不匹配的东西?这将极大地帮助编写自定义匹配器的测试。

4

2 回答 2

1

在我看来,Matcher您的Matcher. 您应该编写一个单元测试并使用您Matcher的 .

 @Test
 public void testPass(){
    assertThat(input, myMatcher);
 }


 @Test
 public void testFail(){
    assertThat(input, not(myMatcher));
 }

对您需要测试的所有情况重复冲洗。

于 2013-07-30T12:16:56.623 回答
-1

您可以使用 org.mockito.Matchers 类来存根您的输入。此类公开了许多方法来使用您的存根。

  • Matchers.anyString()
  • Matchers.anyInt() 等。

假设您在 A 类中有一个函数为

class A{

public void loadFile(){
 file = new FileInputStream("/test/webapps/test.properties");
...
....
}

并且您想编写一个测试用例,您必须使用 Matchers 类进行存根编写如下-

class Atest{
@Test
    public void testLoadFile()
       {
           final FileInputStream fileInputStreamMock = PowerMockito.mock(FileInputStream.class);
          PowerMockito.whenNew(FileInputStream.class).withArguments(Matchers.anyString())
                              .thenReturn(fileInputStreamMock);
}
于 2013-07-30T10:56:09.743 回答