[Android学习十一]Android开发单元测试
2016-01-21 16:09
701 查看
网上关于Android单元测试的文字帖子不胜枚举,看完之后能解决问题是好事,不能解决问题那就是浪费时间和经历。大多数文章来自于这篇文章:http://rexstjohn.com/unit-testing-with-android-studio/
如果在AS中使用不依赖AndroidAPI的单元测试,一图顶万言:
图一 图二
如图二所示,在Build Variants的Test Artifact设置为Unit tests之后,test源码目录呈现出IDEA风格的绿色目录。 这是就可以运行测试类或测试套件,比较容易就不多解释了。
2. 依赖Android API的单元测试
2.1 AS中配置Android单元测试
Android基于junit3框架提供了Android的单元测试框架,要在Android中使用单元测试就需要依赖android.test包下的具体类。下面是AS中配置Android单元测试的方法:
图三
2.2 Android单元测试示例
2.2.1 一个单元测试类:
关于Android的单元测试基类参见: http://www.oschina.net/question/54100_27061?fromerr=NydwIvQR 。 http://www.uml.org.cn/mobiledev/201306074.asp 注意:Android单元测试的测试类写法遵循的是Junit3.
2.2.2 执行单元测试
在执行单元测试之前,讲Build Variant的Test Artifact设置为图一所示值。
执行Android Tester之后,输出截图:
图四
从截图上得知未授网络访问权权限。
2.2.3 AS中Android单元测试控制台
图五
在网上找关于Android单元测试的案例时,比较杂乱,遂作此文予以整理,Android单元测试如何去做当是另外的主题,需要参考android.test包中提供的具体类。
文中的android测试类的包直接创建在了main代码目录下,比较好的方式如下Android测试代码目录结构图:
图 六
本文出自 “野马红尘” 博客,请务必保留此出处http://aiilive.blog.51cto.com/1925756/1737254
自从投入到Android Studio IDE之后基本上就赖着不走了。这里仅讨论AS(Android Studio)中Android单元测试。 开发一个Android应用单元测试这种程序员的自我修养和基本道德测试是必不可少的。其单元测试分为两块,一块是依赖Android API(平台)的单元测试,一块是不依赖Android API的单元测试。 1.不依赖AndroidAPI的单元测试 这一块就和通常开发JavaSE,EE应用的单元测试一样,测试框架更加需要自行选择即可。在通过AS创建Android应用模块时,默认在build.gradle文件中添加了测试库junit依赖。
如果在AS中使用不依赖AndroidAPI的单元测试,一图顶万言:
图一 图二
如图二所示,在Build Variants的Test Artifact设置为Unit tests之后,test源码目录呈现出IDEA风格的绿色目录。 这是就可以运行测试类或测试套件,比较容易就不多解释了。
2. 依赖Android API的单元测试
2.1 AS中配置Android单元测试
Android基于junit3框架提供了Android的单元测试框架,要在Android中使用单元测试就需要依赖android.test包下的具体类。下面是AS中配置Android单元测试的方法:
图三
2.2 Android单元测试示例
2.2.1 一个单元测试类:
package secondriver.heathfood.test; import android.test.InstrumentationTestCase; import com.orhanobut.logger.Logger; import secondriver.heathfood.App; import secondriver.heathfood.logic.TianGou; import secondriver.heathfood.pojo.FoodClassResult; import secondriver.heathfood.pojo.FoodDetail; import secondriver.heathfood.pojo.FoodDetailResult; /** * Author : secondriver * Created : 2016/1/20 */ public class TestTianGou extends InstrumentationTestCase { public TianGou tianGou; public void setUp() { tianGou = new TianGou(App.restTemplate()); } public void test_queryFoodClassByParentId1() { FoodClassResult result = tianGou.queryFoodClassByParentId(0); assertTrue(result.isStatus()); } }
关于Android的单元测试基类参见: http://www.oschina.net/question/54100_27061?fromerr=NydwIvQR 。 http://www.uml.org.cn/mobiledev/201306074.asp 注意:Android单元测试的测试类写法遵循的是Junit3.
2.2.2 执行单元测试
在执行单元测试之前,讲Build Variant的Test Artifact设置为图一所示值。
执行Android Tester之后,输出截图:
图四
从截图上得知未授网络访问权权限。
2.2.3 AS中Android单元测试控制台
图五
在网上找关于Android单元测试的案例时,比较杂乱,遂作此文予以整理,Android单元测试如何去做当是另外的主题,需要参考android.test包中提供的具体类。
文中的android测试类的包直接创建在了main代码目录下,比较好的方式如下Android测试代码目录结构图:
图 六
本文出自 “野马红尘” 博客,请务必保留此出处http://aiilive.blog.51cto.com/1925756/1737254
相关文章推荐
- Android——最简单的图片裁剪 调用系统原生裁剪图片(+保存不成功)
- Android计时器Timer的使用方法
- Android将后台应用唤起到前台的方法
- [Android] 更好的解决 "返回键或取消时自动回调DatePickerDialog的方法onDateSet()" 的问题
- Android 动态显示隐藏EditText 输入框内容
- Android5.X (六) : RecycleView
- android开发问题汇总
- 31.Android之常用单位px、dip、sp学习
- android之屏幕适配之一理论知识
- Android之Toolbar的使用
- Android开发之Intent.Action
- 走向Android5.0之toolbar,Snackbar
- android 录制短音频
- Android 获取系统联系人并排序
- Android学习历程7-Activity详解
- android代码集锦
- AndroidManifest.xml配置文件详解
- Android Studio 图片资源引用杂谈
- Android小问题:android studio怎么查看数字签名 sha1(地图)
- Cordova / PhoneGap开发入门,基于HTML、CSS和JavaScript的Android移动开发框架