2016-11-18 2 views
0

私は最初にUIが1秒間利用可能になったときに、いくつかの非同期呼び出しが発生し、1秒間画面がブロックされるページをテストしようとしています。非同期呼び出しの後、ドロップダウンのいくつかのオプションが設定され、UIが更新されます。私はCapybaraがその分割されたフィールドでいくつかのテキストをフィールドに入力していると思うので、非同期呼び出しの前にUIが利用可能です。その後、フィールドがクリアまたは変更されます(私のカピバラの入力の一部が欠落しているように見えます)。私はカピバラが自然に何かを扱うことができると聞いて以来、手作業による待つことを避けようとしています。それを行う方法はありますか?私はカピバラで小さなウェイトを扱うにはどうすればいいですか?

答えて

2

キャピバラが待機するようにするには、何を待つかを伝える必要があります。非同期コールが完了するまで待つ場合は、非同期コールの応答がページにどのような変更を加えるかを判断する必要があります。それがないすべてのドロップダウンでいくつかのオプションを取り込む場合にはRSpecの

expect(page).to have_select('select_id_name_or_label_text', with_options: ['option populated by call', 'another option populated by call']) 

を使用している場合

page.assert_selector(:select, 'select_id_name_or_label_text', with_options: ['option populated by call', 'another option populated by call']) 
RSpecの

を使用していない場合、あなたは

ような何かを行うことができます

関連する問題