假如你有一款安卓应用,其包含一系列测试类,其中一部分是 unit 测试(位于 src/test
),其余为 instrument 测试(位于 src/AndroidTest
)。
那么问题来了:你有一些想在所有测试之间共享的实用程序代码,但是 src/test
无法使用来自 src/androidTest
的代码,反之亦然。虽然 也可以 把代码放入 src/main
中,但还是想尽量避免移动测试代码。那么,到底怎样在测试之间共享代码呢?
我想到的解决办法就是,利用源集 (source sets) 定义公共代码。首先,将共享测试代码放入 src/sharedTest/Java1
中,然后往 build.gradle
中添加如下代码:
android {
sourceSets {
String sharedTestDir = 'src/sharedTest/java'
test {
java.srcDir sharedTestDir
}
androidTest {
java.srcDir sharedTestDir
}
}
}
以上代码会将共享代码目录 添加 到 test
和 androidTest
源集(source sets)中。现在,这些源集中不仅包括默认的 Java 源码,还包括共享代码。
哈哈!现在 test
和 androidTest
就可以共享实用程序代码了。
OneAPM Mobile Insight 以真实用户体验为度量标准进行 Crash 分析,监控网络请求及网络错误,提升用户留存。访问 OneAPM 官方网站感受更多应用性能优化体验,想阅读更多技术文章,请访问 OneAPM 官方技术博客。
你好
嗯讲得一般……
星雾
Lambda表达式的条件限制很多,应用面不多,我不知道是否应该要花时间来掌握这个表达式,求解……
修道小仙
感谢分享,来龙去脉,深入浅出,非常清晰……
小布丁
写的棒棒哒……
小布丁
写的真可以……
wuxin
受教了……
爱码物联
博客使用……
yancy_01
很喜欢文字的描述,特别是理论性质的,相比于代码,理论知识更加有意思,谢谢分享……
阿萨德
台风压力测试系统http://taifeng.yunyc.top/……
台风DDOS网页版
台风压力测试系统http://taifeng.yunyc.top/……