優れたWebdriverJS (Selenium を使用) を使用して、Web アプリの受け入れテストを実行しています。すべてが正常に動作し、Firefox と Safari を使用すると、テストが正常に実行されます。
ただし、PhantomJS を使用すると、役に立たないエラーでテストが失敗します。まるで... Javascript がクライアント ページ内で実行されていないかのようです。これは、PhantomJS の JavaScript 環境でエラーが発生した場合に発生します。残念ながら、WebdriverJS で PhantomJS を使用する場合、Javascript エラーにアクセスする方法が見つからないようです。
PhantomJS を直接使用している場合は、簡単に実行できます ( PhantomJS サイトから):
page.onError = function(msg, trace) {
console.log(msg);
trace.forEach(function(item) {
console.log(' ', item.file, ':', item.line);
});
}
page
残念ながら、 WebdriverJS 内で PhantomJS を使用する場合、この不思議なオブジェクトにアクセスする方法がわかりません。何かご意見は?