【发布时间】:2021-08-19 03:51:47
【问题描述】:
我是单元测试的新手。
我试图使用单元测试创建一个文件夹
@Test
public void testGenerateFile() throws IOException {
Context context = ApplicationProvider.getApplicationContext();
File file = new File(context.getFilesDir(),"myfile");
file.createNewFile();
byte[] data1={1,1,0,0};
//write the bytes in file
if(file.exists())
{
OutputStream fo = new FileOutputStream(file);
fo.write(data1);
fo.close();
System.out.println("file created: "+file);
}
assertTrue(true);
}
我也尝试从中获取上下文
Context context = InstrumentationRegistry.getInstrumentation().getTargetContext();
但是生成的文件在文件夹中
file created: /var/folders/yh/mkknvc7n2qx2k4swl_mtj7lw0000gn/T/robolectric-Method_testGenerateFile9017115247567873084/org.robolectric.default-dataDir/files/myfile
这是为 robolectric 仪器测试生成的文件夹。如何将文件夹获取到真正的模拟器或安卓设备?
【问题讨论】:
-
不要为此使用 Robolectric。它是专门为避免使用实际设备或模拟器而设计的,但这正是您想要的。使用在实际 Android 设备/模拟器上执行的检测测试来测试您的文件创建。
-
如何在 Android 设备/模拟器上使用仪器测试?
-
先看看文档here
标签: android unit-testing junit