我正在学习如何在android studio中进行单元测试。如下所示,我有一个名为“isValidUrl”的方法,在下面的测试部分中,我使用Mockito编写了该方法的测试 ,但测试总是失败。如何测试方法在Mockito中返回布尔值
你可以请帮忙,并指导我如何测试这种方法?
代码
public boolean isValidUrl(String url) {
return (url != null && !url.equals("")) ? true : false;
}
测试:
public class ValidationTest {
@Mock
private Context mCtx = null;
@Before
public void setUp() throws Exception {
mCtx = Mockito.mock(Context.class);
Assert.assertNotNull("Context is not null", mCtx);
}
@Test
public void isValidUrl() throws Exception {
Validation validation = new Validation(mCtx);
String url = null;
Mockito.when(validation.isValidUrl(url)).thenReturn(false);
}
}
谢谢你的答案..但我可以在同一个方法中使用多个断言..因为我想测试isValid(null),isValid(true)和isValid(false) – user2121
@ user2121是的,你可以。这是一个有趣的问题,大多数人会建议你为每种情况做一个额外的测试方法,但是你也可以在一种测试方法中进行尽可能多的断言。 – FWeigl
谢谢..我在这里发布了另一个与测试有关的问题:https:// stackoverflow。com/questions/46262467/how-to-test-picasso-using-unit-test-and-mockito也许你想看看,你的答案对我来说是一个指导性的线索,因为我是学习测试单位 – user2121