どのアプローチが最善ですか?実デバイスまたはシミュレータ/エミュレータでテストしますか?どちらのオプションもテスト時に異なるレベルのテスト容易性と柔軟性を提供するので、これは難しい質問です。それぞれに関連する多くの問題もあります。それで、私の答えは再び「あなたのニーズ次第です!」となります。
私の考えでは、デバイス上でテストを実行することは、実行環境と完全に一致するテスト環境を提供するため、常に最良のソリューションです。テストは、アプリがストアで公開されると使用されるデバイスで実行されます。ただし、機器は Appiumサーバー少なくともUSB経由で、これはいつもとても良いことではありません。ADBには、しばらくしてもデバイスが切断されるという既知の問題があります(常に接続されているにもかかわらず)。このため、テストはしばらくすると失敗し、Appiumはデバイスが見つからないと報告します。デバイスが切断されないように、しばらくしてからADBをリセットするコンポーネントを作成する必要がありました。