gpt4 book ai didi

android - 如何在android中的单元测试和仪器测试之间共享资源?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:04:09 26 4
gpt4 key购买 nike

我正在关注这篇文章,http://blog.danlew.net/2015/11/02/sharing-code-between-unit-tests-and-instrumentation-tests-on-android/ ,共享代码,但如何共享 Assets ?,比如夹具文件?,我想模拟一个 api 响应,所以我有一个 JSON 文件来做,但我试试这个:https://gist.github.com/nebiros/91a68aaf6995fa635507

在单元测试中,这有效:

ClassLoader.getSystemResourceAsStream("some_response.json");

但是在 Android Intrumentation Tests 中,它没有,我可以把那些 fixture 文件放在哪里?

最佳答案

我找到了这种方式,将夹具文件从 test 共享到 androidTest:

  • 将您的夹具文件添加到您的测试resources 文件夹中,此处为:src/test/resources
  • androidTest中添加test资源文件夹,resources.srcDirs += ['src/test/resources'],这里是一个例子:

    android {
    sourceSets {
    String sharedTestJavaDir = 'src/sharedTest/java'

    test {
    java.srcDirs += [sharedTestJavaDir]
    }

    androidTest {
    java.srcDirs += [sharedTestJavaDir]
    resources.srcDirs += ['src/test/resources']
    }
    }
    }
  • 以这种方式从您的 androidTest 环境访问夹具文件:this.getClass().getClassLoader().getResourceAsStream(filename);

关于android - 如何在android中的单元测试和仪器测试之间共享资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34256623/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com