我正在使用Android Studio 1.2.2创建一些Junit测试。这是我的TestClass。它从ActivityTestCase(或InstrumentationTestCase)扩展。
public class TypeTest extends ActivityTestCase
{
TypesMeth typesMeth = new TypesMeth();
public void testTypes()
{
typesMeth.setValue((short) 1000000);
assertEquals(exception, typesMeth.getValue());
}
}
参数必须很短。因此范围从-32768到32767.
如果我传递1000000的值,它应该抛出异常并且应该传递测试。
我该怎么检查?类似于:assertExceptionIsThrown(true, typesMeth.getValue());
答案 0 :(得分:2)
在经典的JUnit 4中,您可以在测试用例之前添加一些注释
@Test(expected = IllegalArgumentException.class)
public void myUnitTest() {
...
}
据我所知,Android中没有支持这种情况的注释,所以你需要以前JUnit 4方式使用try和catch
进行注释。try {
doSomethingThatShouldThrow();
fail("Should have thrown Exception");
} catch (IllegalArgumentException e) {
// success
}