- 印刷
- ダークライト
JSステップでエラーが発生した場合、テスト結果には以下のメッセージが表示されます。
「JavaScriptでエラーが発生しました: 」の後のメッセージは、JSステップのどこに問題があるかを探るヒントになります。
以下JSステップのエラーについて考えられる原因と、その対応方法をいくつか紹介します。
ページの読み込み完了前にJSステップが実行された
JSステップはページの読み込みを待たずに実行されます。たとえばCSSセレクターで取得した要素に対してクリックを実行するJSステップの場合、ページの読み込み完了前に実行されると要素が正しく取得できずに失敗してしまいます。
テスト結果のスクリーンショットやビデオログを確認し、ローディング画面が表示されていたり、ページが不完全な状態だったりした場合は、ページ読み込み完了前にJSステップが実行された可能性があります。
このケースの対応方法は待機ステップです。JSステップの前に待機ステップを挿入し、数秒待機してページの読み込みを待つようにしてください。
エラーメッセージの原因と対応方法
次に、よくお問い合わせをいただくエラーメッセージについていくつか紹介します。
Cannot read properties of null
オブジェクトのプロパティにアクセスをしようとして、そのオブジェクトがnull
の場合に発生します。例えばCSSセレクターで取得した要素に対してクリックをしたいとします。document.querySelector()
に指定したCSSセレクターで取得できる要素がない場合、null
が返ってきます。この返ってきたnull
に対してclick
を実行すると、以下のようにエラーが発生します。
指定したCSSセレクターで要素が取得できるか、こちらの記事を参考に再度確認してください。
xxx is not defined
未定義の変数や関数を参照しようとした時に発生するエラーです。変数や関数が定義されていることを確認してください。
Error: cannot find the element with selector/XPath
Autify JavaScriptスニペットにあるいくつかのスニペットは、要素をCSSセレクター/XPathで取得してからクリックなどの操作を行っています。もし指定したCSSセレクター/XPathが誤っていたり、CSSセレクターにテスト実行のたびに変わる動的な値が含まれていたりすると、要素が取得できずエラーが発生しこのメッセージが表示されます。
指定したCSSセレクター/XPathで要素が取得できるか、こちらの記事を参考に再度確認してください。
それでも問題が解決しない場合...
お気軽にカスタマーサポートチームにご連絡ください。問題を解決するお手伝いをいたします。