[java] Junit 테스트 도구로 void 메소드를 테스트하는 방법은 무엇입니까?


2 Answers

메서드를 호출하기 전과 후에 큐의 크기를 테스트 할 수 있습니다.

int size = queue.length();
followLink(page, link);
assertEquals(size+1, queue.length()); // or maybe size+2?

당신이 할 수있는 또 다른 일은 빈 큐로 시작하고, followLink를 호출 한 다음 첫 번째 항목을 큐에서 빼내고 그 값을 테스트합니다.

Question

방금 페이지 및 링크를 큐에 추가하는 void followlink(obj page,obj link) 메서드를 구현했습니다. 나는 이런 종류의 방법을 테스트하는 데 실패했다.

내가 원하는 것은 followup 메서드에서받은 페이지와 링크가 큐에 있음을 테스트하는 것입니다. 내 테스트 클래스는 이미 TestCase를 확장합니다. 그런 방법을 테스트하는 가장 좋은 방법은 무엇입니까?




메서드에 전달 된 값이 큐에 추가되는 경우 메서드의 호출 후 확인하십시오. 이를 위해 getQueue ()와 같은 큐에 대한 액세스가 필요합니다.




다음을 확인하는 두 가지 방법이 있습니다.

  1. 아래 프로그램에서 Queue / Collection 크기를 사용하여 확인하십시오. (Patrick이 지적한대로)

    @Test
    public void testfollowlinkAdd() {
      int size = queue.length();
      queue.add(pageLink);   //Considering an Object of PageLink
      Assert.assertTrue(size+1, queue.length());
    }
    

또는

  1. MockObject를 사용합니다. Mockito와 같은 프레임 워크가 도움이 될 수 있습니다.





Related