当前位置:首页 » 安卓系统 » androidjunittest

androidjunittest

发布时间: 2022-09-02 01:37:10

‘壹’ android studio怎么用junit

java开发中使用junit进行单元测试是常有的事,那么android中呢?答案是肯定的,也可以!

使用方式也非常的简单,只需要在AndroidManifest.xml几加入两行配置,然后写个一类继承AndroidTestCase类即可,其它的跟java使用junit是一样的(比如http://www.tiecou.com)。

AndroidManifest.xml示例代码:

<?xmlversion="1.0"encoding="utf-8"?>
<manifestxmlns:android="http://schemas.android.com/apk/res/android"
package="com.javake.hzy.filesave"
android:versionCode="1"
android:versionName="1.0">
<uses-sdkandroid:minSdkVersion="8"/>
<!--junit测试配置关键配置第一处-->
<instrumentationandroid:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.javake.hzy.filesave"android:label="myapptest"/>
<applicationandroid:icon="@drawable/icon"android:label="@string/app_name">
<!--junit测试配置关键配置第二处-->
<uses-libraryandroid:name="android.test.runner"/>
<activityandroid:name=".FileSave"
android:label="@string/app_name">
<intent-filter>
<actionandroid:name="android.intent.action.MAIN"/>
<categoryandroid:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>

</application>
</manifest>

单元测试类示例代码:

packagecom.javake.hzy.filesave;
importjava.io.FileOutputStream;
importandroid.content.Context;
importandroid.test.AndroidTestCase;

/**
*测试类用于测试文件读写相关操作
*单元测试只需要继承AndroidTestCase类
*测试方法前用test做为前缀即可
*测试时右键runas弹出菜单中选择AndroidJUnitTest
*@authorhzy
*
*/
{
/**
*测试方法1,创建文件并写入字符串
*/
publicvoidtest01(){
Contextcontext=this.getContext();
System.out.println(context);
try{
FileOutputStreamout=context.openFileOutput("hello.txt",Context.MODE_PRIVATE);
out.write("helloworldmynameishzy".getBytes());
out.close();
}catch(Exceptione){
e.printStackTrace();
}
}
}

‘贰’ android junit测试用例怎么写

JUnit 基本原理
一个 JUnit 测试包含以下元素:
测试用例组成
开发代码部分 测试代码部分 测试工具部分
待测试类 A 通过扩展 TestCase 或者构造 TestSuit 方法
编写测试类 B 一个测试运行器(TestRunner)R,可以选择图形界面或文本界面
操作步骤:
将 B 通过命令行方式或图形界面选择方式传递给 R,R 自动运行测试,并显示结果。
首先看下junit测试类库和android中单元测试类库:
SDK 功能说明
junit.framework JUnit测试框架
junit.runner 实用工具类支持JUnit测试框架
android.test Android 对JUnit测试框架的扩展包
android.test.mock Android的一些辅助类
android.test.suitebuilder 实用工具类,支持类的测试运行
在这些包中最为重要的是: junit.framework、 android.test,其中前者是JUnit的核心包,后者是Andoid SDK在Junit.framework的基础上扩展出来的包。

‘叁’ 怎么用

添加测试用例类
添加新类,基类设置为android.test.<HelloAndroid>
添加构造函数
添加setUp()方法,这个方法在所有的测试之前进行变量和测试环境的初始化。
@Override
protected void setUp() throws Exception {
super.setUp();
mActivity = this.getActivity();
mView = (TextView) mActivity.findViewById(com.example.helloandroid.R.id.textview);
resourceString = mActivity.getString(com.example.helloandroid.R.string.hello);
}
添加testPreconditions()方法,检查初始化环境,只执行一次
public void testPreconditions() {
assertNotNull(mView);
}
添加单元测试
public void testText() {
assertEquals(resourceString,(String)mView.getText());
}
测试 Run As... > Android JUnit Test

‘肆’ 帮我用android junit test测试一下。问题注释里。 可以加分。谢谢。

要看报什么错先了。

‘伍’ 怎么删除android studio中的测试单元

Android 自带的 junit单元测试的一些测试类(androidTest测试 需要运行在模拟机或真机上)

1、InstrumentationTestCase框架:

Instrumentation和Activity有点类似,只不过Activity是需要一个界面的,而Instrumentation并不是这样的,我们可以将它理解为一种没有图形界面的,具有启动能力的,用于监控其他类(用Target Package声明)的工具类。

举个例子,利用InstrumentationTestCase 启动一个activity:

在androidTest下新建一个java类,并且继承自InstrumentationTestCase编写一个public void的方法,但是必须要是方法名以test打头,比如testPublishSubject,并不需要@Test注解
?

1
2
3
4
5
6
7
8

public class TestSubject extends InstrumentationTestCase {
private static final String LOG_TAG = "test";

public void testPublishSubject() {

launchActivity("demo.zts.com.demo",SecondActivity.class,null);
}
}

2、ApplicationTestCase——测试整个应用程序的类。它允许你注入一个模拟的Context到应用程序中,在应用程序启动之前初始化测试参数,并在应用程序结束之后销毁之前检查应用程序。

使用Context,你可以浏览资源,文件,数据库等等。基类是AndroidTestCase,一般常见的是它的子类,和特定组件关联。

测试代码如下:
?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

public class MyApp extends Application {
@Override
public void onCreate() {
super.onCreate();

‘陆’ as中android junit单元测试怎么用

进行Android单元测试 Menifest.xml中加入: <application>中加入: <uses-library android:name="android.test.runner" /> <application>外面加入: <uses-permission android:name="android.permission.RUN_INSTRUMENTATION" /> <instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="name.feisky.android.test" android:label="Test for my app"/> 编写单元测试代码:必须继承自AndroidTestCase类 package name.feisky.android.test; import android.test.AndroidTestCase; import junit.framework.Assert; public class MyTest extends AndroidTestCase { private static final String Tag="MyTest"; public void testSave() throws Throwable { int i=4+8; Assert.assertEquals(5,i); } public void testSomethingElse() throws Throwable { Assert.assertTrue(1 + 1 == 12); } } 执行测试 IntelliJ中: eclipse中:右键 run as Android JUnit Test 命令行工具: adb shell am instrument -w name.feisky.android.test/android.test.InstrumentationTestRunner 也可以新建一个测试项目进行测试 New > Project > Android > Android Test Project. 添加测试用例类 添加新类,基类设置为android.test.<HelloAndroid> 添加构造函数 添加setUp()方法,这个方法在所有的测试之前进行变量和测试环境的初始化。 @Override protected void setUp() throws Exception { super.setUp(); mActivity = this.getActivity(); mView = (TextView) mActivity.findViewById(com.example.helloandroid.R.id.textview); resourceString = mActivity.getString(com.example.helloandroid.R.string.hello); } 添加testPreconditions()方法,检查初始化环境,只执行一次 public void testPreconditions() { assertNotNull(mView); } 添加单元测试 public void testText() { assertEquals(resourceString,(String)mView.getText()); } 测试 Run As... > Android JUnit Test

‘柒’ Android Junit Test测试原理

我也在弄这个啊,android的单元测试是要把测试的目标apk和编译出来的那个测试apk都要安装上才可以测试的啊,你这不用模拟器在么测试啊,那就只能是在真机上面测试了啊,测试程序会调用你的被测试的程序代码的,你如果不信可以打log看看啊。

‘捌’ 如何在Android中利用Instrumentation来进行测试

Android单元测试是通过junit框架来测试的。Android中建立JUnit测试环境有以下方法。集成步骤:1.在androidManifest.xml文件中添加以下代码:2.新建一个测试测试类并继承AndroidTestCase类,编写测试方法,在测试方法内使用断言assert来测试要测试的方法。3.点击右面的大纲视图,选择要测试的方法,右键,runas--->AndroidJUnittest。

‘玖’ android junit单元测试怎么获得context

package com.test.hellojunit;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}

‘拾’ 运行android里的android Junit test时出现以下结果,搞不懂,求解,谢谢

要测试的方法前面要加test,你应该这样命名

publicvoidtestResult()

不然是不会执行unit test的。

热点内容
大众车一般有哪些配置 发布:2025-01-12 10:11:01 浏览:205
解压香皂视频合集完整版全集 发布:2025-01-12 10:03:33 浏览:572
hill密码的加密 发布:2025-01-12 09:56:33 浏览:614
组卷源码 发布:2025-01-12 09:51:12 浏览:997
java文件夹改名 发布:2025-01-12 09:49:01 浏览:117
脚本函数未定义 发布:2025-01-12 09:39:44 浏览:636
页面PHP 发布:2025-01-12 09:38:07 浏览:201
邮政银行打电话登录密码是什么 发布:2025-01-12 09:37:27 浏览:564
linuxroot远程登录 发布:2025-01-12 09:37:26 浏览:303
怎么算服务器ip 发布:2025-01-12 08:59:19 浏览:855