单元测试,build.gradle中 testImplementation and androidTestImplementation的区别

在用Android studio 创建一个新项目的时候,会默认生成三个目录(每个目录都被称为是Source set(源码集合)):

 app/src
* ├── androidTest/java (仪器化单元测试、UI测试,比如Espresso)
* ├── main/java (业务代码)
* └── test/java  (本地单元测试,Junit4、mockito、Robolectric)

这个 androidTest 目录包含了触摸屏幕或者检查在屏幕上显示了什么的测试用例 ,在test目录下,我们最主要是进行单元测试,比如测试一个函数的正确性等等。

But test directory is not only for Unit test. You can also write Integration test like HTTP call. Even you can UI test in test directory using Robolectric library.(It's really fast rather than Espresso)

但是, 这个test目录并不是只能进行单元测试,我们也可以写一些诸如HTTP请求的集成测试。我们甚至可以进行UI测试,通过使用Robolectric类库(实验表明,Robolectric比使用Espresso要快的多)。

了解完上面这些基础知识之后,那么 testImplementation 和androidTestImplementation 到有什么区别呢?

  • testImplementation : 为 test source set 添加依赖
  • androidTestImplementation : 为 androidTest source set 添加依赖

比如:

//本地化测试
// Required -- JUnit 4 framework
testImplementation 'junit:junit:4.12'
// Optional -- Mockito framework(可选,用于模拟一些依赖对象,以达到隔离依赖的效果)
testImplementation 'org.mockito:mockito-core:3.1.0'
//仪器化测试
//Google UI测试框架
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'

 

 

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值