UI AutomatorでSpoonを試そうと思ってスクリーンショットをUiDevice#takeScreenshot()で取ろうとしたところ、エミュレータが固まってしまった。一度この状態になるとテスト全体が失敗し、エミュレータを再起動するしかなくなってしまった。
Issue 227734: Emulator hangs after UiDevice.getInstance(InstrumentationRegistry.getInstrumentation()).takeScreenshot(path)
によるとどうやらエミュレータのSDKをアップデートすれば直るらしい。
確かに以下環境にアップデートしてエミュレータを作り直したところ動くようになった。
- Google APIs Intel X86 Atom_64 System Image(API23) 20
- Android Emulator 26.0.0
- Android SDK Platform-Tools 26.0.1
- Android SDK Tools 26.0.1
- Intel x86 Emulator Accelerator(HAXM Installer) 6.1.1
- Android Support Repository 47.0.0