2013-01-24 2 views
0

나는 junit을 처음 시작했다. 다음 방법으로 junit을 수행해야합니다. 친절하게 안내해주세요junit이 webservice를 호출하는 메소드를 테스트한다.

public boolean binlist(params hpproxy, calendarparam cpxproxy) 

     { 

     Getbinresponse binresponse; 
     cpproxy.setid(hpproxy.getId()); 
     binresponse= cpproxy.getBinlist(); // resturns a list calling webservice 
    if (binresponse.size>0) 
     { 
     result=true; 
      } 
     else 
     { 
      result=false; 
     } 
     return result;  
     } 

모의 객체를 사용하여 binlist 메소드를 테스트 해 보았습니다.

class testbin 
    { 
    @test 
    public void testbinlist() 
     { 
      Testbin mocktestbin=mock(testbin.class); 
     calendarproxy cpproxy=mock(calendarproxy.class); 
     params hpproxy= mock(cparams.class); 
     hpproxy.setId("123"); 
     stub(cpproxy.getBinList()).toReturn(gettestbins()) // mocked getbinlist() 
     boolen result= mocktestbin.binlist(); 
      assertTrue(result); 


     } 

    } 

방법 내에서 웹 서비스를 테스트하려면 어떻게해야합니까?

+0

다른 사람이 아닌 다른 모든 사람 대신'return binresponse.size> 0;'을 사용하십시오. – blank

답변

1

나는 당신이 당신의 테스트에서 꽤 좋은 자리라고 생각합니다. 테스트중인 클래스이기 때문에 Testbin을 조롱 할 필요가 없다고 생각합니다. 그냥 인수로 전달되는 calendarproxy의 조롱을 만듭니다.

그래서 bin을 테스트하기위한 테스트 방법은 아래 내용과 같습니다.

class testbin 
{ 
    @test 
    public void testbinlist() 
    { 
     Testbin mocktestbin= new Testbin(); 
     calendarproxy cpproxy=mock(calendarproxy.class); 
     params hpproxy= mock(cparams.class); 
     hpproxy.setId("123"); 
     when(cpproxy.getBinList()).thenReturn(gettestbins()); // mocked getbinlist() 
     boolen result= mocktestbin.binlist(hpproxy,cpproxy); 
     assertTrue(result); 
    } 
} 
관련 문제