Android中使用自身携带的Junit新建一个测试工程

1、新建立一个Android工程

package com.shellway.junit;

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

Service.java.作为被测试类

package com.shellway.junit;

import junit.framework.Assert;
import android.test.AndroidTestCase;

public class TestT extends AndroidTestCase {
    public void test1(){
        Service service = new Service();
        System.out.println(service.divide(10, 2));
    }
    public void test2(){
        Service service = new Service();
        System.out.println(service.divide(10, 0));
    }
    public void test3(){
        Service service = new Service();
        Assert.assertEquals(2.5, service.divide(10, 4));
    }
}

TestT继承AndroidTestCase,作为测试类

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.shellway.junit"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="16"
        android:targetSdkVersion="21" />
       <instrumentation
        android:targetPackage="com.shellway.junit"
        android:name="android.test.InstrumentationTestRunner" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <uses-library android:name="android.test.runner" />
        <activity
            android:name=".MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>

AndroidManifest.xml

注意:在配置文件中要加入的内容是:

 <instrumentation
      android:targetPackage="com.shellway.junit"
      android:name="android.test.InstrumentationTestRunner" />

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

并且要注意他们加入的位置。这是一种测试自身工程的方法。

另一种方法是:新建一个Android Junit工程来测试另外的一个工程,这里需要注意的是建立这个测试工程名的时候不能以Test来命名,不然出现错误都很难找出问题所在,下面给出以Test来命名工程的出错信息。

时间: 2024-09-29 23:54:24

Android中使用自身携带的Junit新建一个测试工程的相关文章

##很多时候,我们新建一个Maven工程,第一步都是添加依赖,可是其中的scope代表了什么呢?

maven工程中scope详解: Maven的一个哲学是惯例优于配置(Convention Over Configuration), Maven默认的依赖配置项中,scope的默认值是compile,项目中经常傻傻的分不清,直接默认了. 一,scope的分类 ~1,compile 默认就是compile,什么都不配置也就是意味着compile.compile表示被依赖项目需要参与当前项目的编译,当然后续的测试,运行周期也参与其中,是一个比较强的依赖.打包的时候通常需要包含进去. ~2,test

Intellij IDEA新建一个EJB工程(二)

从博文:http://www.cnblogs.com/yangyquin/p/5328344.html 中可以知道如何利用Intellij IDEA建立一个EJB Module,还有新建一个测试Module. 但是我发现新建的EJB项目可以优化一下,在EJB Module里面建立一个JSP文件,用来调用EJB项目. 1.在Intellij IDEA新建一个EJB工程(一)中新建的EJB项目是包含web应用的,所以先优化一下项目结构, 主要将META-INF统一到web目录下,而lib文件夹放在W

Android问题-打开DelphiXE8与DelphiXE10新建一个空工程提示&quot;out of memory&quot;

错误信息: [DCC Error] E2597 d:\XE8\Embarcadero\Studio\16.0\PlatformSDKs\android-ndk-r9c\toolchains\arm-linux-androideabi-4.6\prebuilt\windows\bin\arm-linux-androideabi-ld.exe: out of memory 问题现象:之前的工程可以编译的,今天打开突然不行了.新建一个空的工程也不行. 问题原因:可能Delphi编译需要大量的内存吧,电

1. 如何新建一个ARM工程

学习stm32,第一步就是选择开发工具了,GCC,MDK,IAR每一种都有自己的优劣势,不再赘述.在这里,我选择使用的时MDK5.14.首次使用MDK,如果有开发板,那么例程就提供了了很多的模板供我们学习.但是我发现直接使用这些模板虽然让我快速的实现功能,是很有趣,但是解析代码时却让我感觉迷茫,我甚至不知道程序的运行流程,也不知道为什么如此设计,因此我就有了脱离例程,自己建立工程的想法,初次建立错误一堆,通过百度以及自己查找解决这一个个错误花费了我接近4个小时,我把自己的整个经历记录下来,虽然以

新建一个maven工程

软件151  徐中飞 使用spring boot新建maven工程不在需要建立maven web工程,只要一般的maven工程就好了. 二.maven包的导入 清单如下: <!-- Inherit defaults from Spring Boot --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</

Android review Android中的测试

Android中的测试无非是分为两种: 一.在一个工程里面写测试代码. 二.专门新建一个工程写测试代码. 一.在一个工程里面写测试代码 步骤: 1.写一个类继承AndroidTestCase 如: package com.example.junittest; import junit.framework.Assert; import android.test.AndroidTestCase; public class MyTest extends AndroidTestCase { public

Android中如何使用JUnit进行单元测试 eclipse

Android中如何使用JUnit进行单元测试 在我们日常开发android app的时候,需要不断地进行测试,所以使用JUnit测试框架显得格外重要,学会JUnit可以加快应用的开发周期. Android中建立JUnit测试环境有以下两种方法. 一.直接在需要被测试的工程中新建测试类 集成步骤: 1.在androidManifest.xml文件中添加以下代码: <instrumentation android:name="android.test.InstrumentationTestR

Android中的 Multiple dex files define 编译错误引发的思考

昨天我龙哥问我一个问题,他说如果一个工程中,有一个com.x.A枚举,导入的第三方jar中也有一个com.x.A枚举,那么我在工程中用A枚举的时候,会用到那个枚举呢?我当时一想,这个不是类(枚举是个特殊类)定义冲突吗?应该在编译的时候就报错呢,而且这个问题我之前遇到过,所以我很自信的和他说,这个应该在编译的时候就报错,结果他来了一句:没有呀?运行成功了,而且导入的是工程中的那个枚举A,我擦,我一想这不是打我脸吗?我记得非常清楚,是会报错的呀,所以我就自己写了一个AndroidDemo工程: 工程

Android中Activity的四大启动模式实验简述

作为Android四大组件之一,Activity可以说是最基本也是最常见的组件,它提供了一个显示界面,从而实现与用户的交互,作为初学者,必须熟练掌握.今天我们就来通过实验演示,来帮助大家理解Activity的四大启动模式. 演示效果如下: 第一步:实验前准备,相关配置文件以及Activity的建立 (1)AndroidMainfest.xml配置文件 1 <?xml version="1.0" encoding="utf-8"?> 2 <manif