我正在为我的应用程序实现屏幕截图测试功能,我通过将根视图的位图写入模拟器文件系统中的文件来在JUnit测试中进行屏幕截图。我希望将该截图文件保存到我的存储库所在的主机文件系统中;但是,屏幕截图保存在模拟器的文件系统中。此外,在当前启用的设置中,模拟器会在每个测试运行后重新启动,因此它会在测试运行后丢失屏幕截图。
在我的JUnit测试用例中使用Kotlin代码,我想知道是否有人知道如何在模拟器运行时以编程方式将模拟器中的文件发送到主机文件系统。我不确定这是否可能;然而,如能就如何处理这一问题提供任何指导,将不胜感激。谢谢你!
我试过在测试用例运行后发送文件;然而,除了在最终测试用例中生成的那些屏幕截图之外,所有的屏幕截图都丢失了,因为在每个测试用例运行之后,模拟器都会重新启动,尽管我期望它们会持续存在。
1条答案
按热度按时间z9smfwbn1#
刚刚弄明白了,使用来自
androidx.test.services
的TestStorage
API允许在应用程序的整个状态下维护文件,方法是将它们保存到一个特定的文件夹中,该文件夹在每次测试后都不会重置。