Android Activity单元测试步骤:
1. 添加android单元测试的环境,配置如下(红色部分为添加的android环境配置信息):
配置文件:AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.seed.lee.junit" android:versionCode="1"
android:versionName="1.0">
<!-- android junit用到的配置 -->
<instrumentation android:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.seed.lee.junit" android:label="android junit test"/>
<application android:icon="@drawable/icon"android:label="@string/app_name"><!-- android junit 用到的配置 -->
<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>
<uses-sdk android:minSdkVersion="9" />
</manifest>
2. 写单元测试类(继承自ActivityInstrumentationTestCase2)
例子:
package com.seed.lee.junit;
import android.test.ActivityInstrumentationTestCase2;
import android.widget.TextView;
public class HelloAndroidTest extends
ActivityInstrumentationTestCase2<MainActivity> {
// MainActivity是需要单元测试的android的activity
private MainActivity mActivity;
// TextView是Activity中的一个组件
private TextView mView;
private String resourceString;
// 一个无参构造函数(必须)
public HelloAndroidTest() {
super("com.seed.lee.junit.MainActivity", MainActivity.class);
}
// 复写supper类中的一个方法(初始化Activity使用)
@Override
protected void setUp() throws Exception {
super.setUp();
mActivity = this.getActivity();
mView = (TextView) mActivity.findViewById(R.id.tv);
resourceString = mActivity.getString(R.string.hello);
}
// 单元测试的内容
public void testPreconditions() {
//断言
assertNotNull(mView);
}
public void testText() {
assertEquals(resourceString, (String) mView.getText());
}
}
3. 运行android的单元测试
上面配置文件中
MainActivity为android程序入口,请自已新建代码略
<uses-library android:name="android.test.runner"/>不可修改
android:name="android.test.InstrumentationTestRunner不可修改
android:label="Testing"可不写
如出现Test run failed:Unable to find instrumentation target package
是因为 android:targetPackage="com.neter.test.dao" 必须和
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.neter.test.dao"
package相同的包名
相关推荐
上一篇文章已经介绍了单元测试的作用和简单示例,如果不了解的读者可以先阅读上一篇[ Android单元测试-作用以及简单示例](http://blog.csdn.net/double2hao/article/details/77159380)。 这篇文章主要介绍常见的...
学习Android有一段时间了,虽然前段时间对软件测试有了一些了解,不过接触android的单元测试却是头一次。这几天在物流大赛上也用了不少时间,所以对于android的单元测试没有太深入的研究,所以先写个基本入门吧!...
在Android应用开发中,单元测试是确保代码质量、可维护性和稳定性的关键步骤。通过单元测试,开发者可以针对应用程序中的各个模块进行独立测试,确保它们按照预期工作,从而避免潜在的错误和缺陷。本文将深入探讨...
本Demo旨在提供一个基础的Android单元测试实践,通过实例化和运行测试用例,确保应用程序的各个组件(如Activity、Service、BroadcastReceiver等)在独立环境中正确执行。 单元测试通常使用JUnit框架进行,这是Java...
在Android开发中,单元测试是确保代码质量的重要环节。它允许开发者验证代码的各个部分是否按预期工作,有助于提前发现并修复潜在问题。本话题主要关注Android单元测试,特别是结合了Volley网络库的测试实践,以及...
尽管Activity单元测试主要关注逻辑,但有时可能需要验证UI元素的交互,这时Espresso就派上用场了。 以下是一个基本的Activity单元测试示例: ```java import org.junit.Before; import org.junit.Test; import org...
### Android单元测试框架搭建手册 #### 一、前言 随着移动互联网的快速发展,Android应用的质量成为了用户体验的关键因素之一。为了提高应用的质量,确保代码的可靠性和稳定性,单元测试成为了必不可少的一部分。...
在Android开发中,单元测试是确保代码质量、可维护性和减少缺陷的重要环节。它允许开发者对应用程序中的每个小部分(即“单元”)进行独立测试,以验证它们按预期工作。下面将详细介绍Android单元测试的相关知识点,...
在Android开发中,单元测试是确保代码质量的重要环节。它允许开发者针对应用程序的各个模块进行独立测试,确保每个部分的功能正确性。以下是如何在Android项目中添加单元测试的方法与步骤: 1. **修改配置文件**: ...
在Android应用开发中,单元测试是一项至关重要的任务,它能够帮助开发者确保代码的质量,提高软件的稳定性和可维护性。本项目聚焦于Android中的按键单元测试,特别是针对按钮(button)点击事件的测试。以下是对这个...
- **继承结构**:Android的单元测试类通常继承自特定的基类(如`ActivityTestCase`、`ServiceTestCase`等),这些基类为测试提供了便捷的支持,如自动初始化数据库或启动Activity等功能。 - **选择合适的基类**:...
这篇资料主要涵盖的是Android单元测试的相关知识,通过两个Word文档——"android单元测试2.docx"和"Android单元测试.docx"进行了详尽的阐述。 首先,Android单元测试通常使用JUnit框架进行,这是一个广泛应用于Java...
Robolectric 是一款Android单元测试框架,示例代码: @RunWith(RobolectricTestRunner.class) public class MyActivityTest { @Test public void clickingButton_shouldChangeResultsViewText() throws ...
在Android应用开发中,Activity是用户界面的基本单元,它的启动模式是决定Activity如何启动和运行的关键因素。Android提供了四种不同的启动模式:标准模式(Standard)、单实例模式(SingleTop)、单任务模式...