いくつかのブラウザ拡張機能とプラグインを使用するページをテストしようとしています。 ただし、Webdriverioが開くブラウザインスタンスでは、デフォルトですべての拡張機能が削除されており、テストは失敗します。 Chromeでは、-user-data-dirをchromeOptionsに渡してデフォルトのプロファイルをロードしようとしましたが、 chrome:// version /はプロファイルがロードされたことを確認しますが、それをオーバーライドするコマンドラインオプションがたくさんあるようです。私の拡張機能はまだなくなっています。 Firefoxでは、拡張機能が削除され、すべてのプラグインが「アクティブ化を要求」に設定されています。 これに対する回避策はありますか?
chromeOptions.extensions
介してChrome拡張機能を追加したことがあります。 たぶん、base64で拡張機能を暗号化して、同じ方法で暗号化することができます。 それ以外は、Seleniumでの拡張の経験はなく、既存のユーザープロファイルを読み込もうとしたこともありません。 希望する機能をどのように設定しますか?
ただし、これはプラグインにも影響します。 たとえば、HTML5ビデオフォールバックプレーヤーが機能していることをテストしたい場合、デフォルトで無効になります。 個別のユーザープロファイルではなく、デフォルトのプロファイルを読み込もうとしていますが、webdriverがプラグインと拡張機能を無効にするカスタムフラグを設定しているようです。 デフォルト設定でブラウザを開く方法はありますか?
mhm ..フラグが機能しない場合、私はアイデアがありません。 このユースケースはありませんでした。 あなたの状況をもう少し詳しく説明していただけませんか。 私はまだここで拡張の役割が何であるかを完全に理解していませんか?
これは、現在WebdriverIOの問題というよりもSeleniumの問題であると思われます。 ただし、明確にするために、ここにもう少し情報を追加します。
HTML5ビデオポリフィルがFlashにフォールバックし、特定の条件が満たされている/満たされていない場合でも機能が正しく機能することをテストしたいと思います。 ただし、デフォルトのプロファイルはFlashの読み込みをまったくブロックするため、これらのテストは常に失敗します。
2014年10月27日には、13:48で、キリスト教のBromannの[email protected]は書きました:
mhm ..フラグが機能しない場合、私はアイデアがありません。 このユースケースはありませんでした。 あなたの状況をもう少し詳しく説明していただけませんか。 私はまだここで拡張の役割が何であるかを完全に理解していませんか?
—
このメールに直接返信するか、GitHubで表示してください。
それが役立つなら、私はそのような拡張機能をロードすることができます:
desiredCapabilities: {
browserName: 'chrome',
"chromeOptions": {
"args": [
"load-extension="+__dirname+"/test/extensions/adblock",
"lang=de-DE","window-size=1280,800"]
}
}
圧縮されていないadblockchrome拡張機能を指す拡張パス(私のマシンのgoogle OS Xアプリケーションサポートディレクトリにあります)
私にとってはすべてが機能しています。 これは、使用しているテクノロジーのフルスタックの影響も受けていると思います。 鉱山スタックは、テストの実行ごとに新しいプロファイルを作成し、後で削除します。 セレンの実行中にプロセスを確認するだけで何が起こっているかを簡単に確認できます。これは、selenium-xxx.jarに可変パスされます。
これはWebdriverIOよりもSeleniumの問題であるため、終了します。
最も参考になるコメント
それが役立つなら、私はそのような拡張機能をロードすることができます:
圧縮されていないadblockchrome拡張機能を指す拡張パス(私のマシンのgoogle OS Xアプリケーションサポートディレクトリにあります)