美文网首页程序媛代码优化代码改变世界
安卓 unit 测试与 instrument 测试的代码共享

安卓 unit 测试与 instrument 测试的代码共享

作者: OneAPM | 来源:发表于2016-03-23 11:15 被阅读44次

    假如你有一款安卓应用,其包含一系列测试类,其中一部分是 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
            }
        }
    }
    

    以上代码会将共享代码目录 添加testandroidTest 源集(source sets)中。现在,这些源集中不仅包括默认的 Java 源码,还包括共享代码。

    哈哈!现在 testandroidTest 就可以共享实用程序代码了。

    OneAPM Mobile Insight 以真实用户体验为度量标准进行 Crash 分析,监控网络请求及网络错误,提升用户留存。访问 OneAPM 官方网站感受更多应用性能优化体验,想阅读更多技术文章,请访问 OneAPM 官方技术博客

    原文地址:http://blog.danlew.net/2015/11/02/sharing-code-between-unit-tests-and-instrumentation-tests-on-android/

    本文转自 OneAPM 官方博客

    相关文章

      网友评论

        本文标题:安卓 unit 测试与 instrument 测试的代码共享

        本文链接:https://www.haomeiwen.com/subject/pjbllttx.html