1

querySelectorAllドキュメントを使用して、オプションの配列を選択しようとしています。私たちは直接、それは私に NightwatchJS:document.querySelectorAllで選択した要素をループする方法は?

"ReferenceError: document is not defined"

エラー

を与えるよう document.querySelectorAllを使用し、代わりに thisの回答で述べたが、まだ未定義になって browser.executeでそれを使用傾けることが分かりました。コンソールステートメントは未定義でログを記録するので、代わりに配列の要素を渡す必要があります。開発者ツールでこのcssセレクタを実行すると、私は期待していたが、ここではない配列を手に入れることができます。私が何か間違っているのであれば、どんな考えですか?

browser.execute(function (data) { 
    console.log(document.querySelectorAll('div#question_' + quesNo + ' .answerBlock .answer-value')); 
    return true; 
},[],null); 

答えて

0

browser.executeに引数を渡す方法が原因である可能性があります。以下を試してください:

browser.execute((data) => 
{ 
    console.log(document.querySelectorAll('div#question_' + arguments[0] + ' .answerBlock .answer-value')); 
    return true; 
}, [quesNo]); 
+0

試してみてください、うまくいきませんでした! –

+0

多かれ少なかれ私が投稿したのと同じコードが、自分のプロジェクトの1つでnightwatchを使用して多数のテストでうまく動作します。あなたの問題はどこか他の場所です。 – Amid