Watir1.6.7を使用しています。
WatirとCucumberを使用して、PeopleSoftアプリの回帰テストの開発に取り組んでいます。アプリケーションのフォームでいくつかの問題が発生しました。
まず、text_fieldに値を入力すると、ユーザーがtext_fieldの外側をクリックするとページが更新されます。次のtext_field要素が存在するのを待つことは、ページがリロードされる前、またはページが期待どおりにリロードされた後に要素を見つける可能性があるため、問題があります。待機時間を増やすことは、それが「機能する」としても、決して良い解決策のようには感じられません。
2番目の問題は、ユーザーが現在のフィールドの外側をクリックするまでページの更新がトリガーされないことです。この場合、これは、スクリプトが入力される次のtext_fieldにアクセスしようとしたときに発生します。ここでの解決策の1つは、またはキーストロークを送信することですが、このように追加するたびに、スクリプトがより脆弱になるのを感じることができます。
脆弱性が低く、各text_fieldアクションの間に2〜3個の追加コマンドを必要としない他のアプローチはありますか?
実況は次のようになります。
- ブラウザは、フォームを含むページに移動します。
- ブラウザが最初のフォームフィールドに入力します。(修正:キーストロークを送信してページを更新し、2番目のフィールドが再び表示されるまでwait_unt)
- ブラウザは、入力する2番目のフォームフィールドを選択します。(繰り返しますが、keystroke&wait_until)
- ページが更新され、スクリプトが失敗します。(解決済み)
- ブラウザは3番目のフォームフィールドを選択します...