首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

没单元测试,怎能写代码

2012-07-27 
没有单元测试,怎能写代码项目前期的技术点预研完成了,最近开始做原型开发。之前没有在android上写过单元测

没有单元测试,怎能写代码
项目前期的技术点预研完成了,最近开始做原型开发。

之前没有在android上写过单元测试,今天写了几个组件,没有测试过,心里发虚,觉得都是裸代码,不稳啊。就试了一下单元测试怎么弄,总结如下:

1. eclipse里的默认做法是建一个什么测试工程(test project),不知道为啥要这样,以前java也没见这么搞。所以还是按照以前的做法,跟src目录平行地创建一个test目录

2. eclipse里好像不能直接new->junit test,真麻烦,只好手动在test目录下创建同名的package,比如要测试com.xxx.workforce.db下的一个QuestDAO,就在test目录下创建com.xxx.workforce.db

3. 然后创建一个单元测试类,继承android.test.AndroidTestCase,类的命名规范也沿袭以前的junit,在类名后面增加Test,命名为QuestDAOTest

4. 发现也有setUp()和tearDown()方法,这个倒是和junit一样,比较有用的是setUp()方法,可以完成一些初始化工作

5. 然后测试方法的命名也和junit一样,我要测试create()方法,那么测试方法就叫做testCreate()

6. 大功告成,跑一下,选择run->Run As->Android JUnit Test

7. 我日,失败了,居然报缺少instrumentation,instrumentation是啥玩意,上网查了一下,原来还要在manifest文件里增加

<uses-library android:name="android.test.runner" />


<instrumentation android:name="android.test.InstrumentationTestRunner"android:targetPackage="com.huawei.workforce" android:label="Android Unit Test" />


8. 又跑一下,这次可以了,测试都一次通过,心里爽多了

PS:如果需要Context的话,AndroidTestCase类里有一个getContext()方法

热点排行