一連のコード化されたUIテストの一部として、メニューがクリックされます。ただし、メニュー(Javascriptを使用)はメニューオプションの読み込みに失敗します。テストを手動で実行すると、メニューは正常に機能します。テストの実行中にページを更新すると(またはブラウザを再起動すると)、メニューオプションが読み込まれます。
しかし、さらに奇妙なのは、これはリモートテスト環境でのみ発生することです。自分のマシンでローカルにテストを実行すると、コード化されたUIテストがテストを実行している場合でもメニューが機能します。
メニューの読み込みに失敗する理由は、私にはまったく意味がありません。コード化されたUIテストは、Javascriptの実行を停止する可能性がありますか(メニューオプションをロードするため)?しかし、ページを更新するとなぜ機能するのですか?
自分の環境とテスト環境を比較すると、違いはわかりません。まったく同じWebアプリケーションに対してテストしています(URLは同じWebサーバーを指しています)。これはInternetExplorerの同じバージョンであり、すべての設定が同じであることがわかります。同じオペレーティングシステム(Windows 7)。
何か案は?
注意すべき点の1つは、テストはIE7ドキュメントモードで正常に機能したことです。ただし、Javascriptの動作はここではおそらく異なる可能性があります。現在、IE9ドキュメントモードでWebアプリケーションに対してテストを実行しています。ドキュメントモードをQuirksモードに変更すると、一部の状況でテストが機能するようになりましたが、一部のテストのみでした。