zoukankan      html  css  js  c++  java
  • Android Junit单元测试

    很久以前就已经学过JUNIT的了,但是一直没用,今天复习了一下。

    Junit单元测试,使用时一般分为两种:

    一种是项目内测试,另一种是新建一个Junit工程。

    第一种情况时,

    要在本项目AndroidManifest.xml中作出配置:

    <!-- 在本应用中导入需要使用的包,放在application里面activity外面 -->

    <uses-library android:name="android.test.runner"/>

    <!-- 记住这个一要放在application外面,不然会出现配置错误 信息 -->

    意思是,注册测试机。com.example.demo_junit为要测试的包。

    <instrumentation
    android:name="android.test.InstrumentationTestRunner"
    android:targetPackage="com.example.demo_junit">
    </instrumentation>

    下面写一个具体的例子:

    首先配置AndroidManifest.xml,具体如上

    接着新建Service类:

    1 public class Service {
    2     public int add(int a,int b){
    3         return a+b;
    4     }
    5 }

    然后在建立Junit类时,一定要继承AndroidTestCase:

    1 public class Junit extends AndroidTestCase {
    2         public void test(){
    3             Service service=new Service();
    4             System.out.println(service.add(2, 5)); 
    5         }
    6 }

    好了,现在可以测试了。

    将鼠标光标移至Junit类的test()方法上,单击右键,选择Run As/Android JUnit Test即可。

    如果出现绿色条纹则表示测试的代码是正确的,红色为错误的:

    在Junit中,Assert类的assertEquals()会被经常用到。assertEquals(预期值,实际值)。

    详情请参考:http://developer.android.com/intl/zh-cn/reference/junit/framework/Assert.html

    由于第一种情况需要注册测试类,如果经常使用的话建议新建一个XML模板,就可以使用快捷键来快速的注册了。

    步骤:

    1. 单击菜单栏上的Window,选择Preferences。
    2. 然后选择XML,选择XML Files,选择Editor中的Templates。
    3. 在对话框的右侧点击新建(New...)
    4. 在弹出的对话框(New  Template)中,填入:

          

      然后点击OK,New  Template对话框关闭,继续点击OK。此时,新的XML模板就已经建好了。

    需要注意的是:1、${package}代表测试类所在的包名。(新建时,需要手动填写)

           2、<uses-library android:name="android.test.runner"/>该代码需要移动到清单文件(即AndroidMainfest.xml)的<application>的节点中,否则将不能正常使用。

      

    第二种情况时,首先是新建项目,选择Android Test Project:

    然后是选择要测试的项目:

    项目新建完成后,此时第一种情况中配置文件的配置已经自动配置完成。其余的和第一种情况完全一样的,接着直接测试即可。

    第二种测试的好处是不污染原项目文件,如果是第一种情况的话,因为测试部分与项目实际功能代码无关还需要删除。

    作者:af74776
    文章出处:http://www.cnblogs.com/scetopcsa/
    欢迎关注微信公众号:yilu_yiyou(一路一游),一个不仅仅是代码的世界!
    如果文中有什么错误,欢迎指出。以免更多的人被误导。
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    20200910-3 命令行和控制台编程
    C语言1作业04
    C语言1博客作业03
    c语言1博客作业02
    2018寒假作业--3抓老鼠啊~亏了还是赚了?
    2018寒假作业2--币值转换
    2018寒假作业-1 打印沙漏
    记叙在人生路上对我影响最大的三位老师
    自我介绍
    抓老鼠啊~亏了还是赚了?编程总结
  • 原文地址:https://www.cnblogs.com/scetopcsa/p/3640371.html
Copyright © 2011-2022 走看看