我是junit的新手。 我需要为以下方法做junit。请指导我
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);
}
}
如何在方法中测试web服务?
答案 0 :(得分: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);
}
}