0

我想在我之前录制的 Android Studio 中运行 Espresso 测试。测试需要访问作为资产包一部分的文件,并且由于“FileNotFoundException”而失败。

资产包被定义为安装时交付,并且记录 Espresso 测试工作正常。只是运行测试失败。

我相信这是因为该文件不是主应用程序的资产,而是在资产包中。要从 Android Studio 运行应用程序,必须将默认交付从默认 apk 更改为“来自应用程序包的 apk”,如此处所述https://developer.android.com/guide/app-bundle/test。我猜测试运行程序会使用默认的 apk 交付安装应用程序,这就是缺少资产的原因。当我启动从测试运行器安装的应用程序时,我可以看到缺少资产包。在运行测试之前使用资产包手动安装应用程序没有帮助,因为测试运行程序会在没有资产包的情况下重新安装应用程序。

编辑:我确认它是错误的安装类型。当我像往常一样从 Android Studio 运行应用程序,然后从控制台手动运行测试时,adb shell am instrument -w -m -e debug false -e class 'com.example.somethingsomething#homeActivityTest' com.example.somethingsomething/androidx.test.runner.AndroidJUnitRunner测试运行完美。所以安装需要从app bundle而不是普通的apk安装应用程序。

知道如何让 Espresso 测试运行程序安装包含资产包的应用程序吗?

4

0 回答 0