android studio单元测试

  android studio默认会在src目录下创建androidTest这个文件夹,显然它是做测试用的。今天用它做了一次单元测试,效果不错,把步骤记录下来。

测试内容

  CommonUtils类下的moneyFormat2方法,

/**
 * 绝对值小于10000元返回元为单位的价格,大于等于10000返回万元为单位的价格
 **/
public static String moneyFormat2(int price) {
   if (Math.abs(price) < Statics.TEN_THOUAND) {
      return price + "元";
   } else {
      int remainder = price % Statics.TEN_THOUAND;
      int ten_thousand = price / Statics.TEN_THOUAND;
      if(0 == remainder) {
         return ten_thousand + "万元";
      } else {
         String remainderString = String.format("%04d", Math.abs(remainder));
         while (remainderString.endsWith("0")) {
            remainderString = remainderString.substring(0, remainderString.length() - 1);
         }
         return ten_thousand + "." + remainderString + "万元";
      }
   }
}

Step1: 新建测试类

  在androidTest工程下新建CommonUtilsTest类,继承ActivityInstrumentationTestCase2<\LauncherActivity>

Step2: 添加构造方法

  添加一个构造方法如下:

public CommonUtilsTest(){
    super(LauncherActivity.class);
}

Step3: 添加测试方法

  添加测试方法如下:

public void testMoneyFormat2(){
    assertEquals("0元", CommonUtils.moneyFormat2(0));
    assertEquals("1元", CommonUtils.moneyFormat2(1));
    assertEquals("2100元", CommonUtils.moneyFormat2(2100));
    assertEquals("1万元", CommonUtils.moneyFormat2(Statics.TEN_THOUAND));
    assertEquals("2.1万元", CommonUtils.moneyFormat2(21000));
    assertEquals("2.01万元", CommonUtils.moneyFormat2(20100));
    assertEquals("200.1万元", CommonUtils.moneyFormat2(2001000));
    assertEquals("20.0011万元", CommonUtils.moneyFormat2(200011));
    assertEquals("-1万元", CommonUtils.moneyFormat2(-Statics.TEN_THOUAND));
    assertEquals("-2.1万元", CommonUtils.moneyFormat2(-21000));
    assertEquals("-2.01万元", CommonUtils.moneyFormat2(-20100));
    assertEquals("-20.1万元", CommonUtils.moneyFormat2(-201000));
    assertEquals("-20.1001万元", CommonUtils.moneyFormat2(-201001));
}

Step4: 运行测试用例

  运行测试用例,在CommonUtilsTest类文件下右击,选择“Run’CommonUtilsTest’”,等待程序安装、测试用例运行。在Run面板就可以查看运行结果了,
这里写图片描述
运行结果
这里写图片描述

总结

  1. 对于工具类来说,单元测试简单易行、能节省很多调试的时间。
  2. 写代码时尽量将复杂的逻辑拆分成小的可测试的子程序,这样可以通过单元测试增强代码质量。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值