【发布时间】:2011-12-22 06:30:59
【问题描述】:
我正在执行 Android 单元测试用例,对于负测试用例我应该得到异常,但对于某些 API 的异常没有被捕获。
请务必找到以下示例:
public void testInsertSenderType_n() {
DBSms obj = new DBSms(getContext());
obj.open();
int i =0;
int a =0;
boolean result = true;
i=obj.GetToatlCount();
obj.insertSmsText(i+1,"Hello to testInsertSenderType_n");
a=obj.TotalcountSms("Inbox");
try
{
obj.insertSenderType(-100, "Richard", "Inbox", 0);
}
catch (Exception e)
{
// TODO: handle exception
result = false;
}
assertEquals(a,obj.TotalcountSms("Inbox"));
assertEquals(false,result);
obj.close();
}
在这里,obj.insertSenderType(-100, "Richard", "Inbox", 0); 应该抛出异常。但它不会被抛出。
请指导我哪里错了。
【问题讨论】:
-
那么,方法应该会抛出异常,而单元测试显示不是这样,是吗?如果是这样,那么恭喜:由于您的单元测试,您刚刚在 DBSms 的代码中发现了一个错误。修复它并在应用修复后检查单元测试是否通过。
标签: java android unit-testing exception-handling junit