在测试项目中存储测试文件

gre*_*561 5 xml android unit-testing android-testing

我写了一些使用XML文件的测试.我有两个带有代码的项目,第二个带有测试.我想在测试项目中存储这些XML文件(它们包含测试期间使用的一些数据).但这是不可能的,因为似乎只有来自src项目的文件被加载到设备.有谁知道解决这个问题的方法?

yor*_*rkw 11

假设您在android项目和测试项目中都有assets文件夹,并将XML文件放在assets文件夹中.在测试项目下的测试代码中,这将从android项目资产文件夹中加载xml:

getInstrumentation().getTargetContext().getResources().getAssets().open(testFile);
Run Code Online (Sandbox Code Playgroud)

这将从测试项目资产文件夹中加载xml:

getInstrumentation().getContext().getResources().getAssets().open(testFile);
Run Code Online (Sandbox Code Playgroud)

确保扩展TestCase类android.test.InstrumentationTestCase而不是android.test.AndroidTestCase访问this.getInstrumentation()方法.