Android-Junit-TestCase-ClassLoader 讨论下Android的单元测试
2010-08-21 06:18:00 来源:WEB开发网近期在自学android开发,在做例子的时候,发现单元测试方面的资料好像不多,希望能在这儿和大家一起讨论下。
有一个问题在问答频道放了好几天,都无人回答,先拿过来重发下,也想依借此为引子,说说android下的测试驱动开发。
问题是这样, 测试类继承TestCase,其中有试图mock一个Cursor进行单元测试,一跑就ClassNotFoundException
测试类:
Java代码
import junit.framework.TestCase;
import android.database.Cursor;
public class ContactHandlerTest extends TestCase {
private ContactHandler handler;
@Override
protected void setUp() throws Exception {
super.setUp();
handler = new ContactHandler();
}
public void testConvertToString() {
Cursor mockCursor = new MockCursor();
String [] result = handler.convertToString(mockCursor);
assertEquals("kkkk(2222)", result[0]);
assertEquals("aaaa(3333)", result[1]);
}
}
import junit.framework.TestCase;
import android.database.Cursor;
public class ContactHandlerTest extends TestCase {
private ContactHandler handler;
@Override
protected void setUp() throws Exception {
super.setUp();
handler = new ContactHandler();
}
public void testConvertToString() {
Cursor mockCursor = new MockCursor();
String [] result = handler.convertToString(mockCursor);
assertEquals("kkkk(2222)", result[0]);
assertEquals("aaaa(3333)", result[1]);
}
}
MockCursor: 仅仅mock了一些想要的动作
Java代码
import android.content.ContentResolver;
import android.database.CharArrayBuffer;
import android.database.ContentObserver;
import android.database.Cursor;
import android.database.DataSetObserver;
- ››Android 当修改一些代码时,使用什么编译命令可以最...
- ››Android 如何添加一个apk使模拟器和真机都编译进去...
- ››Android 修改Camera拍照的默认保存路径
- ››Android 如何修改默认输入法
- ››android开发中finish()和System.exit(0)的区别
- ››Android手势识别简单封装类
- ››android中查看项目数字证书的两种方法
- ››Android中获取IMEI码的办法
- ››android 相机报错 setParameters failed
- ››Android重启运用程序的代码
- ››Android为ListView的Item设置不同的布局
- ››android bitmap与base64字符串的互相转换
更多精彩
赞助商链接