【发布时间】:2012-10-30 23:14:03
【问题描述】:
我有一个 CSV 文件,我想将它用于我的 Android 测试套件。不过,我不希望它可用于主应用程序。我将它保存在我的测试项目的assets 文件夹中。然后我尝试使用
context.getAssets().open(DATA_ASSET);
DATA_ASSET 声明为
DATA_ASSET = "cards.csv"
我将context 设置为引用我正在测试的活动。但是,这显然不会像我拥有的那样工作,因为它将查看主应用程序的资产。我看到了解决此问题的两种可能性:
- 提供与测试项目一起安装的资产的正确路径
- 获取一个
Context,它指的是测试项目的资源和资产
我还没有找到任何方法来做这些。也许还有我没有想到的第三种解决方案。如何访问与测试项目一起安装的资产?
【问题讨论】:
-
如果您将
AndroidTestCase子类化,这不是一个干净的解决方案,但this answer 可能会帮助您为您的测试项目获得Context。 -
@acj 大多数情况下我是子类化
ActivityInstrumentationTestCase2,但我的一些测试是子类ActivityUnitTestCase。 -
@acj 这看起来像是我需要的解决方案。谢谢!我会试试看它是否有效。
-
@acj 甜!它似乎有效。
标签: java android testing android-assets