java - 用于测试的 Android Assets

标签 java android testing android-assets

我有一个 CSV 文件,我想将其用于我的 Android 测试套件。不过,我不希望它可用于主应用程序。我将它保存在我的测试项目的 assets 文件夹中。然后我尝试使用

从测试中访问它
context.getAssets().open(DATA_ASSET);

DATA_ASSET 声明为

DATA_ASSET = "cards.csv"

我将 context 设置为引用我正在测试的 Activity。但是,这显然不会像我那样工作,因为它会查看主应用程序的 Assets 。我看到了解决此问题的两种可能性:

  1. 提供与测试项目一起安装的 Assets 的正确路径
  2. 获取指向测试项目资源和 Assets 的Context

我还没有找到任何方法来做这两个中的任何一个。也许还有我没有想到的第三种解决方案。如何访问与测试项目一起安装的 Assets ?

最佳答案

如果您是 InstrumentationTestCase 或类似类的子类,您可以通过执行以下操作为测试项目获取 Context:

Context ctx = getInstrumentation().getContext();

关于java - 用于测试的 Android Assets ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13148958/

相关文章:

java - 关于数据建模的非常基本的问题

android - Google Play 控制台崩溃报告 - 多个 OR

java - 以编程方式获取 Android 设备的 MAC

android - 使用 ArrayAdapter 和 Material v7 支持库在 Espresso 中选择对话框选项

java - 类文件中不兼容的魔法值 1008813135

java - 以编程方式启动 OSGi 文件夹包

java - 将独立的 Tomcat 实例迁移到 Eclipse

java - 适用于交互式移动 map 的语言/框架

mysql - SpringBoot 的 DataJpaTest 与 Flyway

java - MAMP中如何处理 'CommunicationsException: Communications link failure'?