下面是代码
@RunWith(AndroidJUnit4.class)
public class ScreenshotJavaTest {
// a handy JUnit rule that stores the method name
@Rule
public TestName nameRule = new TestName();
@Rule
public ActivityScenarioRule<MainActivity> activityScenarioRule =
new ActivityScenarioRule<>(MainActivity.class);
/**
* Captures and saves an image of the entire {@link MainActivity} contents.
*/
@Test
public void saveActivityBitmap() throws IOException {
writeToTestStorage(captureToBitmap(onView(isRoot())), getClass().getSimpleName() + "_" + nameRule.getMethodName());
}
/**
* Captures and saves an image of the 'Hello world' view.
*/
@Test
public void saveViewBitmap() throws IOException {
writeToTestStorage(captureToBitmap(onView(withText("Hello World!"))), getClass().getSimpleName() + "_" + nameRule.getMethodName());
}
/**
* Captures and saves an image of the entire device screen to storage.
*/
@Test
public void saveDeviceScreenBitmap() throws IOException {
writeToTestStorage(takeScreenshot(), getClass().getSimpleName() + "_" + nameRule.getMethodName());
}
}
所有测试用例都在运行,但我无法在设备文件管理器的任何地方找到任何屏幕截图。那么我如何找到这些截图或者有一些其他的方法我们可以实现自动化测试中的这些屏幕截图
不能代表真正的设备,但是当使用Android Studio模拟器时,您可以在以下路径下使用设备文件资源管理器找到屏幕截图:
/存储/模拟/0/googletest test_outputfiles
确保在gradle文件中添加以下行:
testInstrumentationRunnerArguments useTestStorageService: 'true'
我已经找了几个小时了,但这似乎没有记录在任何地方。