Android-junit 单元测试:
一个好的软件不是写出来的是测出来的,接下来手工引入 junit 框架
为你的application 做单元测试,使它更强壮吧!
首先创建工程,我们需要一个service 类进行测试 待测试的 service方法
Java 代码:
package com.liwei.junittest.services; /** * 业务方法,junit 测试用 * * @author liwei * */ public class CalcService { public int add(int x, int y) { return x + y; } public static void main(String[] args) { System.out.println("1111"); } /** * Invalid layout of java.lang.String at value # # A fatal error has been * detected by the Java Runtime Environment: # # Internal Error * (javaClasses.cpp:129), pid=19356, tid=19740 # fatal error: Invalid layout * of preloaded class # # JRE version: 7.0_25-b17 # Java VM: Java * HotSpot(TM) 64-Bit Server VM (23.25-b01 mixed mode windows-amd64 * compressed oops) # Failed to write core dump. Minidumps are not enabled * by default on client versions of Windows # # An error report file with * more information is saved as: # * D:\android_code\junittest\hs_err_pid19356.log # # If you would like to * submit a bug report, please visit: # * 右击直接运行,发生错误 * http://bugreport.sun.com/bugreport/crash.jsp # 安装到虚拟机时错误, log * 保存到D:\android_code\junittest\hs_err_pid19356.log 如果你想上传 bug * 请上传到http://bugreport.sun.com/bugreport/crash.jsp # * 原因:右键运行,不能直接运行在java虚拟机中 * android-运行 首先打包apk 上传到手机, 运行在 手机dvk 虚拟机中 */ }
创建一个 测试方法 extends AndroidTestCase
代码:
package com.liwei.junittest.test; import com.liwei.junittest.services.CalcService; import android.test.AndroidTestCase; public class TestCalcService extends AndroidTestCase { /** * add 方法的测试代码 把异常抛给测试框架 * * @throws Exception */ public void testAdd() throws Exception { CalcService service = new CalcService(); int result = service.add(3, 5); assertEquals(8, result);// 断言是否为正确结果 } }
引入框架需要 引入 函数库 和指令集
指令集
<instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="com.liwei.junittest" > </instrumentation>
函数库在application 节点下 引入
<uses-library android:name="android.test.runner"/>
接下来进行测试,右击 Run As Android JUnit Test 以 Android JUnit 运行
junit 运行流程
首先 检查 android虚拟机是否启动
Adb 是否连接
执行 指令集
然后把junit 的apk装到 虚拟机上 成功后
执行指令集, 发送测试信息
期待值失败
相关推荐
"android-junit-report"项目便是针对Android环境优化的JUnit测试报告生成工具,旨在帮助开发者更有效地管理和理解测试结果。本文将深入探讨这个工具的核心功能、工作原理以及如何在实际项目中进行集成和使用。 首先...
4. **易于集成**:与现有的JUnit测试无缝衔接,无需大量修改现有测试代码。 在实际开发中,这个库可以帮助团队快速识别和修复问题,提高软件质量。对于持续集成环境,可以自动发送测试报告邮件,让团队成员实时了解...
《使用JUnit5进行Android测试详解》 随着软件开发技术的快速发展,测试自动化成为了不可或缺的...通过它的帮助,我们可以编写出更加清晰、可读性强的测试代码,提升测试的质量和速度,从而更好地保证我们的应用质量。
1、 在应用tests目录文件下新建一个libs文件夹,将android-junit-...10、在应用代码根目录下(与sonar-project.properties同目录下)执行sonar-scanner命令,则可以在sonar网站中得到相关代码的覆盖率和单元测试数。
例如,使用 `@RunWith(AndroidJUnit4.class)` 指定 `AndroidJUnit4` 作为运行器。 2. **规则(Rules)**:用于简化常见的测试任务,如启动 Activity、注入依赖等。 3. **注解(Annotations)**:除了基本的 `@Test` ...
总的来说,JUnit在Android开发中提供了高效、全面的单元测试支持,通过管理测试用例、定义测试代码、设置测试环境和检查测试结果,确保了代码的质量和稳定性。通过理解和熟练运用JUnit,开发者可以更自信地进行软件...
- **方式**:通过命令行或者集成开发环境(IDE)如Android Studio来运行JUnit测试。 - **结果**:JUnit测试的结果会被记录下来,包括通过的测试、失败的测试以及任何异常情况。 #### 四、JUnit在Android中的实际...
JUnit 4 是一款广泛应用于Java开发中的单元测试框架,它极大地简化了测试代码的编写和执行。作为Java事实上的标准单元测试库,JUnit 4 的易用性和灵活性使其成为开发者首选的测试工具。本文将深入讲解JUnit 4的关键...
一个简单的Android JUnit测试类通常会继承自`androidx.test.ext.junit.runners.AndroidJUnit4`。这个运行器使得我们可以在Android环境中使用JUnit 4的特性。例如: ```java import androidx.test.ext.junit.runners...
总的来说,有效地进行Android单元测试需要理解各种测试工具和框架,合理组织测试代码,使用模拟和隔离技术,以及利用自动化测试和CI流程。通过这些实践,开发者可以节省大量时间,提高代码质量和应用稳定性。
Android单元测试(三):JUnit单元测试框架的使用 代码和测试代码在junit子package下面 Android单元测试在蘑菇街支付金融部门的实践 代码和测试代码在groupshare子package下面 Android单元测试(四):Mock以及Mockito...
在Android开发中,单元测试是确保代码质量、稳定性和可维护性的重要环节。Junit作为Java领域最流行的单元测试框架,自然也被广泛应用于Android开发。本文将深入探讨如何在Android项目中结合Junit进行测试,以及相关...
这个类通常位于`app/src/test/java`目录下,并且需要继承自`androidx.test.ext.junit.runners.AndroidJUnit4`,这样就可以在Android环境中运行JUnit测试。例如,如果你要测试名为`MainActivity`的Activity,你可以...
10. **单元测试与集成测试**:源代码可能包含JUnit和Espresso测试用例,用于确保应用功能的正确性。 11. **Android Jetpack组件**:Jetpack是一套可提高开发效率的库,包括Room(数据库)、Lifecycle(组件生命周期...
在Android项目中,我们通常会创建一个单独的模块或目录来存放测试代码,这样可以避免混淆主应用代码。 `ActivityUnitTestCase`是Android提供的用于单元测试Activity的类,它继承自`AndroidTestCase`。与`...