美文网首页
1.单元测试

1.单元测试

作者: 奈何人别离 | 来源:发表于2021-03-15 16:15 被阅读0次

android中的单元测试基于JUnit,可分为本地测试和instrumented测试,在项目中对应

  • module-name/src/test/java/.
      该目录下的代码运行在本地JVM上,其优点是速度快,不需要设备或模拟器的支持,但是无法直接运行含有android系统API引用的测试代码。
  • module-name/src/androidTest/java/.
      该目录下的测试代码需要运行在android设备或模拟器下面,因此可以使用android系统的API,速度较慢。

JUnit4

JUnit4是一套基于注解的单元测试框架。在android studio中,编写在test目录下的测试类都是基于该框架实现,该目录下的测试代码运行在本地的JVM上,不需要设备(真机或模拟器)的支持。
  JUnit4中常用的几个注解:

  • @BeforeClass 测试类里所有用例运行之前,运行一次这个方法。方法必须是public static void
  • @AfterClass 与BeforeClass对应
  • @Before 在每个用测试例运行之前都运行一次。
  • @After 与Before对应
  • @Test 指定该方法为测试方法,方法必须是public void
  • @RunWith 测试类名之前,用来确定这个类的测试运行器
public class DateUtil {
    /**
     * 英文全称  如:2017-11-01 22:11:00
     */
    public static String FORMAT_YMDHMS = "yyyy-MM-dd HH:mm:ss";

    /**
     * 掉此方法输入所要转换的时间输入例如("2017-11-01 22:11:00")返回时间戳
     *
     * @param time
     * @return 时间戳
     */
    public static long dateToStamp(String time) throws ParseException {
        SimpleDateFormat sdr = new SimpleDateFormat(FORMAT_YMDHMS, Locale.CHINA);
        Date date = sdr.parse(time);
        return date.getTime();
    }

    /**
     * 将时间戳转换为时间
     */
    public static String stampToDate(long lt){
        String res;
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat(FORMAT_YMDHMS, Locale.CHINA);
        Date date = new Date(lt);
        res = simpleDateFormat.format(date);
        return res;
    }
}

比如这是一个时间格式转化的工具类,下面对其中的方法做测试,首先把鼠标放在类名上,按alt+enter,弹出的提示框选择Create Test


image.png

在生成的方法上加上注解

@Before
    public void setUp(){
        System.out.println("开始测试");
    }

    @After
    public void tearDown(){
        System.out.println("结束测试");
    }

然后添加测试方法,必须public修饰,在方法名上加上@Test注解

    @Test
    public void testDateToStamp() throws ParseException {
        assertEquals(null, DateUtil.dateToStamp(time));
    }

assertEquals(null, DateUtil.dateToStamp(time));方法传入两个参数,第一个为预期结果,第二个是要测试的方法
然后就可以运行测试了;

一次性测试多个情况:

@RunWith(Parameterized.class)
public class DateUtilTest

@Parameterized.Parameters
public static Collection primeNumbers() {
        return Arrays.asList(new String[]{
                "2017-11-01 22:11:00",
                "2017-11-01",
                "2017年11月01日 22时11分00秒"
        });
    }

相关文章

  • 1.单元测试

    最近学习Springboot,教程中大多数都是 springboot 1..的版本,我们都知道springboot...

  • 1.单元测试

    android中的单元测试基于JUnit,可分为本地测试和instrumented测试,在项目中对应 module...

  • 9.第一个数据库迁移

    1.单元测试用例添加类ItemModelTest 运行单元测试报错: 3.运行单元测试python manage....

  • 聊聊单元测试

    本篇主要是聊一聊以下几个方面的内容: 为什么要单元测试 单元测试框架 单元测试的好处 单元测试与重构 1. 为什么...

  • 软件测试理论基础 Zero to Hero 测试类型

    软件测试分类 1.按阶段划分 单元测试,集成测试,系统测试,验收测试 2.单元测试 单元测试(unit testi...

  • 测试过程

    一、测试过程简介 单元测试 集成测试 系统测试 二、测试过程单元集成系统及比较 1.单元测试--函数 单元测试时针...

  • 单元测试 & EasyMock

    1.单元测试 1.1 使用testng & mockito进行单元测试 pom.xml 测试类 2.EasyMoc...

  • jest前端单元测试搭建和基础使用和测试些啥

    [TOC] 单元测试阿里巴巴准则 1.【强制】好的单元测试必须遵守AIR原则。说明:单元测试在线上运行时,感觉像空...

  • Junit单元测试概念(测试语言Java)

    一、单元测试概念 1. 什么是的单元测试 单元测试是针对最小的功能单元编写测试代码 java程序最小的功能单元式方...

  • 软件测试理论

    1.软件测试分类 软件测试分:单元测试,集成测试,系统测试,验收测试。 单元测试:单元测试是对程序中的单个子程序或...

网友评论

      本文标题:1.单元测试

      本文链接:https://www.haomeiwen.com/subject/fxukcltx.html