11-1.Android 项目结构 - androidTest 包与 test 包(单元测试与仪器化测试)

androidTest 包与 test 包

  • 在 Android 项目中,androidTest 包与 test 包用于存放不同类型的测试代码的
1、测试类型
(1)androidTest 包
  1. 主要用于存放单元测试(Unit Tests)代码

  2. 单元测试是针对应用程序中的独立模块或类进行的测试,它们不依赖于 Android 框架或设备

  3. 这些测试通常在 JVM 上运行,不需要 Android 设备或模拟器

(2)test 包
  1. 用于存放仪器化测试(Instrumented Tests)代码

  2. 仪器化测试是针对整个应用程序或应用程序的某些部分进行的测试,它们依赖于 Android 框架和设备

  3. 这些测试需要在 Android 设备或模拟器上运行,它们需要访问 Android 系统的 API 和应用程序的 UI 元素

2、测试范围与速度
(1)androidTest 包
  1. 测试范围较小,通常只测试应用程序中的某个类或模块的功能

  2. 由于不依赖于 Android 框架,测试速度相对较快

(2)test 包
  1. 测试范围较大,可以测试应用程序的整体功能、UI 交互、性能等

  2. 由于需要运行在 Android 设备或模拟器上,因此测试速度相对较慢

3、测试框架
(1)androidTest 包
  • 通常使用 JUnit 等测试框架进行单元测试(创建项目时已经自动在模块级 build.gradle 文件中引入)
groovy 复制代码
testImplementation 'junit:junit:【版本号】'
androidTestImplementation 'androidx.test.ext:junit:【版本号】'
(2)test 包
  • 通常使用 Espresso 等测试框架进行仪器化测试(创建项目时已经自动在模块级 build.gradle 文件中引入)
groovy 复制代码
androidTestImplementation 'androidx.test.espresso:espresso-core:【版本号】'
相关推荐
小羊没烦恼!4 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
千里马学框架4 天前
一起学 Android 14:ShellTransition 屏幕旋转过程深度剖析
android·智能手机·性能优化·framework·性能·屏幕旋转·rotation
美狐美颜SDK开放平台4 天前
开发直播APP时如何接入视频美颜SDK?开发流程与注意事项
android·人工智能·计算机视觉·音视频·直播美颜sdk
AFinalStone4 天前
Android7 SystemUI源码解析(七)Keyguard锁屏模块深度解析
android·systemui
伞伞悦读4 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
致远ccc4 天前
Google Play 上架前如何测试 App?多国家 Android 环境测试
android·app测试·googleplay·多国家应用测试
C语言小火车4 天前
C/C++ 为什么需要编译器?
开发语言·c++
霍霍的袁4 天前
【C++】map 和 set 的使用 | 从用法到底层
开发语言·c++·学习·visual studio
ttyyttemo4 天前
Kotlin 协程中的 Job 结构化并发与取消
android
孙启超4 天前
【AI开发之Rust】第 11 课:智能指针与内部可变性
开发语言·后端·rust