安卓单元测试(九):使用Mockito Annotation快速创建Mock

2017-03-16
阅读 5 分钟
3.7k
虽然很简单,但是如果一个测试类里面很多测试方法都要用到mock,那写起来就会有点麻烦,这时候我们可以写一个@Before方法来作这个setup工作:

安卓单元测试(八):Junit Rule的使用

2016-07-10
阅读 4 分钟
8.1k
一个JUnit Rule就是一个实现了TestRule的类,这些类的作用类似于@Before、@After,是用来在每个测试方法的执行前后执行一些代码的一个方法。

Android单元测试(七):Robolectric,在JVM上调用安卓的类

2016-06-08
阅读 8 分钟
5.7k
今天讲讲Android上做单元测试的最后一个难点,那就是在JVM上无法调用安卓相关的类,不然的话,会报类似于下的错误: java.lang.RuntimeException: Method isEmpty in android.text.TextUtils not mocked.

Android单元测试(六):使用dagger2来做依赖注入,以及在单元测试中的应用

2016-05-16
阅读 24 分钟
5.5k
注: 代码中的 //<= 表示新加的、修改的等需要重点关注的代码 Class#method表示一个类的instance method,比如 LoginPresenter#login 表示 LoginPresenter的login(非静态)方法。

Android单元测试(五):依赖注入,将mock方便的用起来

2016-05-08
阅读 4 分钟
8.1k
在上一篇文章中,我们讲了要将mock出来的dependency真正使用起来,需要在测试环境下通过某种方式set 到用到它的那个对象里面进去,替换掉真实的实现。我们前面举的例子是:

Android单元测试(四):Mock以及Mockito的使用

2016-04-30
阅读 12 分钟
20.5k
几点说明: 代码中的 //<== 表示跟上面的相比,这是新增的,或者是修改的代码,不知道怎么样在代码块里面再强调几行代码T_T。。。 很多时候,为了避免中文歧义,我会用英文表述

Android单元测试(三):JUnit单元测试框架的使用

2016-04-18
阅读 6 分钟
9k
我们写单元测试,一般都会用到一个或多个单元测试框架,在这里,我们介绍一下JUnit4这个测试框架。这是Java界用的最广泛,也是最基础的一个框架,其他的很多框架,包括我们后面会看到的Robolectric,都是基于或兼容JUnit4的。 然而首先要解决的问题是。。。

Android单元测试(二):再来谈谈为什么

2016-04-16
阅读 5 分钟
5.3k
今天早上8点半坐到桌子前,打开电脑,看了几分钟体育新闻,做其他一些准备工作,到9点开始真正开始着手写这篇文章。于是开始google,找资料,打算列一大段冠冕堂皇的理由,来说明为什么要写单元测试,比如:

Android 单元测试: 首先,从是什么开始

2016-04-13
阅读 5 分钟
19.8k
这是一系列安卓单元测试的文章,目测主要会cover以下的主题: 什么是单元测试 为什么要做单元测试 JUnit Mockito Robolectric Dagger2 一个具体的app例子实践 神秘的bonus 什么是单元测试 首先需要介绍一下什么是单元测试。很多人像我一样,本科并不是计算机专业出身的,如果在职的公司不要求做单元测试的话,可能对这个...

用Robolectric来做Android unit testing

2015-06-14
阅读 7 分钟
34.7k
作为一只本科非计算机专业的程序猿,手动写单元测试是我从来没接触过的东西,甚至在几个月前,我都不知道单元测试是什么东西。倒不是说没听过这个词,也不是不知道它的大概是什么东西——“用来测试一个方法,或者是一小块代码的测试代码”。然而真正是怎么做的?我并没有一个概念,或者说并没有一个感觉。 记得第一份工作在...

Otto: No more callbacks

2015-05-31
阅读 5 分钟
4.7k
你要做一个todo app,有一个Activity里面有一个ListView显示你所有的task,你的数据存储在服务器。假设你没采用任何的软件架构(MVC、MVP、MVVM等等),每次app打开的时候,你从服务器把数据load下来,load完了以后,通过callback把数据传给Activity,然后显示到listview里面。代码结构大概是这个样子

Java 8的Lambda及其在Android 开发中的应用

2015-05-29
阅读 4 分钟
11.9k
上面的两段代码是完全等效的,但是代码行数从11行降低到了一行,更不用说在第一段代码里面,我在run方法的前后以及内部都没有加入任何的空行。由此可以看出,使用lambda可以让你的Java代码在某些情况下达到何等的简洁。那么问题来了。。。