この方法については、すぐにはわからない重要な点が 2 つありますclickInList(int)
。まず、リスト アイテムは 1 インデックスなので、リストの最初のアイテムをクリックするには、clickInList(1)
notを使用しますclickInList(0)
。次に、クリックは画面に表示されているアイテムに関連しているため、clickInList(1)
全体の最初のアイテムではなく、リストの最初に表示されているアイテムをクリックします。
ダイアログの動的処理に関しては、任意のポップアップは実際には Robotium が処理することを意図したものではありません。既知の制御された再現可能な条件下で、アプリとのユーザーのやり取りをテストすることになっています。接続が失われるなど、テストの途中で予期しない事態が発生した場合は、失敗と見なす必要があります。とにかく、テストを最後まで実行できない可能性は十分にあります。ハックな回避策として、次のように、各イベントの前にダイアログの存在を確認できます。
if(solo.searchText("Dialog text") {
//handle closing dialog
}
ただし、これはお勧めしません。テストの速度が大幅に低下します。また、ダイアログを閉じたとしても、最初にエラーが発生したという事実により、テストの後半で問題が発生する可能性があります。不合格。