[android]_[初级]_[android studio中使用单元测试]

来源:互联网 发布:软件项目成功案例 编辑:程序博客网 时间:2024/05/29 08:32

场景: 1.app集成功能很多的时候,验证某一个功能是否正确,可以单独测试该功能的业务逻辑部分代码接口,而不必启动整个程序进行验证。

            2.在底层接口和界面进行交互的时候,可以很方便界面对接口数据的匹配。

            3.不知原因造成的bug,找了很久找不错问题所在,可以很快找出是底层接口还是界面的问题,大大缩小问题的范围。


单元测试的好处

      我们在做app的时候,做好一个功能,通常绝大部分人都会直接在界面显示数据来判断该功能是否实现,或者是我们期望的。做单个功能这样验证不会耗费太多的时间,但是当我们做的功能越来越多的时候,要验证某一个功能,还启动程序界面来验证,这样就太耗费时间了。单元测试可以很好的解决这个问题,我们只需要把要测的功能直接加入到单元测试中就可以了,运行单元测试,直接就验证该功能,大大的减少时间的浪费。还有我们在做功能的时候,业务逻辑部分代码接口做好了单元测试,那么在与界面交互的时候就很方便匹配数据了。如果程序由于不知道的原因造成bug,我们还可以通过单元测试来排查是底层接口出错,还是界面的问题。使用单元测试的好处还有很多,这里就不多做介绍了,下面我们看看怎么做单元测试。


在Android Studio中可以进行单元测试

刚刚开始用Android Studio做单元测试,发现网上有很多的文章指导你应该在“build.gradle” 文件里面添加几行代码从而允许单元测试,并且告诉你应该在项目依赖中添加Android测试库。其实Android Studio在创建项目的时候已经帮我们把单元测试的环境配置好了,本身就支持Android单元测试,我们肯定就不需要在build.gradle文件中做其他操作,只需要在项目中创建我们做单元测试所需要的类就可以了,下面是单元测试的示例。

创建你的单元测试文件夹

为了更加方便的管理代码,我们可以把单元测试类创建在与Android Studio默认的ApplicationTest类相同的路径下面;或者自己建立一个”test“目录,把单元测试类创建在test目录下。

下面我们以创建MyTest为例,首先创建一个单元测试类MyTest”,可以分别继承InstrumentationTestCaseAndroidTestCase


package com.example.administrator.androidapplication;import android.test.InstrumentationTestCase;import android.test.AndroidTestCase;/** * Created by Administrator on 2016/2/22. *///MyTest分别可以继承InstrumentationTestCase和AndroidTestCasepublic class MyTest extends AndroidTestCase {    public void testAdd() throws Exception    {        int a =5,b =3;        int c =a+b;        assertEquals(8,c);    }    public void testSub()    {        int a =23,b =8;        int sub =a-b;        assertEquals(15,sub);    }    public void testBool()    {        assertEquals(true,false);        assertEquals(true,true);    }    public void testString()    {        assertEquals("hello","hello");    }    public void testNotObject()    {        String str =null;        assertNotNull(str);        assertNull(str);    }    public void testObject()    {        String obj1 ="object1";        String obj2 ="object1";        assertSame(obj1,obj2);        assertNotSame(obj1,obj2);    }

注意:所有的测试方法必须以"test"开头,否则Android Studio不能找到要进行单元测试的方法,你将会得到各种各样的错误,并且无法正常执行。

运行单元测试类

选中MyTest单元测试类(网上很多文章对单元测试类在Run/Debug Configurations进行添加单元测试设置,然后在运行Run,我们这里就一步到位,效果也是一样的,减少一些配置步骤)

测试结果:

通过控制台Run工具项窗口的输出,我们可以看到单元测试出错的地方,我们可以把断言失败的地方进行修改,如注释

// assertEquals(true,false);
// assertNotNull(str);
// assertNotSame(obj1,obj2);

则单元测试可以测试通过了。

注意:

进度条显示红色,则表示单元测试失败。


进度条显示绿色,则表示单元测试成功。

以上就是Android Studio的单元测试。

0 0
原创粉丝点击