Junit单元测试

说点啥

今天看了片文章:《程序员必看的六本书》
里面有个《单元测试的艺术》 , 于是觉得有必要尝试经常使用下。 书还没买,不过先研究了下在AS中如何使用Junit
如果你使用的是Eclipse,那么看这篇慕课网的文章吧: JUnit—Java单元测试必备工具

相关链接

AS中没用过,只有百度了。 众说纷纭有木有。
后来看到了这篇文章 使用Android Studio进行单元测试,是篇译文,原文是:Unit Testing With Android Stutio

一开始看译文没看懂,只能说自己笨吧。 其实按照他的思路一步一步走就可以了。写这篇文章只是Mark一下。

基本使用

言归正传,我来说说重点吧:(最好走一遍上面的那文章再来看我的总结,每一小点在后面有配图)

  1. 给自己的测试文件专门安个家(创建个特定的package,方便以后统一删除)
  2. 在这个家里,创建一个我们的测试文件,注意要继承 InstrumentationTestCase 类
  3. 使用Edit Configurations进行Android Test的设置
  4. 运行

第一点-注解


我理解的这个新包的作用,就是为了代码整洁,便于管理

第二点-注解

Calculate是我们待测试的文件,CalculateTest是我们创建的测试文件。右侧是测试文件的代码,很简单:

public class CalculateTest extends InstrumentationTestCase {

    /**
     * 除法测试
     * 这里的函数名 test() ,其实名字可以自己取,只不过有要求,开头必须以test开头,例如:
     *     testDivide() <--> test()
     * 大家可以自己试试
     * @throws Exception
     */
    public void test() throws Exception {
        final int expected = 3; // 预计结果值
        final int reality = new Calculate().divide(5,2); // 实际返回值
        assertEquals(expected, reality); // 对比两个值
    }
}

待测试的代码是:

public class Calculate {
    public int divide(int a, int b) {
        return a / b;
    }
}

预计结果是我们觉得应该的返回值。 实际返回值是通过测试后的返回值。该测试运行后打印结果如下:

右上角的”进度条”是红色,说明出错了。如果你看到右上角是绿色的,you are right !
我们期待结果是3,而实际除法算出的是2 。

第三点-注解

配置这块,就看他的文章就好,说的很明白。

Target Device这里选第一个,就是弹出个框问你选什么手机来运行这个TestCase。默认是Emulator系统自带的模拟器,这个很慢啊。我们选了show chooser dialog后,就可以用Genymotion了。
这说明跑测试文件也是需要手机的

进阶

能不能测试网络请求呢? 可是我的网络请求有两个回调函数啊,怎么破?一个Success的,一个Error的。
后来一琢磨,你丫网络请求有啥可测的,而且返回值千变万化的。

那进阶里能有什么比较叼的内容呢?额,我也没想好。

其他

给明明推荐了两首歌:阿明的《青春万岁》、好妹妹乐队的《我也可以是流浪诗人》,她问我,这就是民谣吗?怎么感觉调调都一样呢 ~

border="0" width="330" height="86" src="http://music.163.com/outchain/player?type=2&id=29810328&auto=0&height=66"> border="0" width="330" height="86" src="http://music.163.com/outchain/player?type=2&id=33166563&auto=0&height=66">
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值