2月7日以降、すべてのテストが同じエラーで失敗します。ログエントリの読み取り:
RESPONSE MaximizeWindow unknown error: cannot get automation extension
from unknown error: page could not be found: chrome-extension://aapnijgdinlhnhlmodcfapnahmbfebeb/_generated_background_page.html
(Session info: chrome=57.0.2987.21)
これがChromeの更新によるものなのか、他の何かによるものなのかはわかりません。
EDIT:C#と最新のChromedriverを使用しています。
Chromedriver.exeの最新バージョンが必要です。 https://sites.google.com/a/chromium.org/chromedriver/downloads
これはchromedriverバージョン57+に必要です
私はこれと同じ問題を抱えていました。 chromedriverのバージョンを更新すると、すべてが再び機能しました。
突然このエラーが発生しました->追加情報:不明なエラー:不明なエラーから自動化拡張機能を取得できません:ページが見つかりませんでした:chrome-extension ..
この問題はChromeDriver 2.29を使用している場合でも存在します
それを解決したのは、この行を削除することでした。
driver.Manage().Window.Size = new Size(1024, 768);
簡単な修正ですが、私が探していたものではありません。まだサイズ変更メカニズムを使用するのは素晴らしいことです。
これはおそらく、テストを実行している環境がchromeブラウザのすべてのサードパーティの拡張機能をブロックしているためです。拡張機能を無効にしてみてください。
以下のようなもの:
ChromeOptions o = new ChromeOptions();
o.addArguments("disable-extensions");
o.addArguments("--start-maximized");
WebDriver driver = new ChromeDriver(o);
上記のように、それはchromedriverに関連しています。 バージョン2.33のリリースノート では、サイズ変更/配置に関連する問題を修正したことが記載されています。
最新リリース:ChromeDriver 2.33
Chrome v60-62をサポート
変更点は次のとおりです。
- Chrome 62+でウィンドウのサイズ変更/位置決めコマンドが失敗するバグを修正しました。
chromeドライバーを手動でダウンロードする代わりに、package.json
(または同様のファイル)のchromedriver
のバージョンを更新し、npm install
を起動して、最新バージョンの自動ダウンロードを取得することをお勧めします。
chromeドライバーexeを更新しても、この問題は実際には修正されませんが、chrome driver.Manage().Window.Maximize();
のサイズを変更しているときに発生します。
この行をコメントして、もう一度試してください。
これは簡単な修正であり、この根本原因が見つかったら回答を更新します(ただし、コードが変更されていないため、ブラウザが更新されたためと思われます)。
更新:私にとっては、ブラウザの更新が原因であるようです。もう一度更新すると、この問題はなくなりました。
からWebdrivermanagerを使用してみてください
io.github.bonigarciaライブラリ
最新バージョンのWebdriverが自動的にロードされるため、随時更新する必要はありません。例を挙げてください:
ChromeDriverManager.getInstance().setup();
webDrive自体を呼び出して、ChromeDriverの最新バージョンを取得する前に。
同じ問題がありました。 chromedriverの最新リリースをダウンロードするだけで問題は解決しました。
https://sites.google.com/a/chromium.org/chromedriver/downloads
ありがとう
自動化拡張機能を取得できません
ChromeOptions o = new ChromeOptions();
o.addArguments("disable-extensions");
o.addArguments("--start-maximized");
WebDriver driver = new ChromeDriver(o);
私の問題は、このコメントを追加した投稿で解決しました。ありがとうございました。
ChromeOptions o = new ChromeOptions();
o.addArguments("disable-extensions");
o.addArguments("--start-maximized");
o.addArguments("--start-maximized");
WebDriver driver = new ChromeDriver(o);
分度器を更新し、実行を開始するテストケースを実行します。分度器から追加された新しいものはほとんどありません。この方法はうまくいきました。
分度器の更新-npm install -g分度器の更新webdrvier-webdriver-managerの更新
最新のヘッドレスバージョンでは、ウィンドウがもうないため、ウィンドウのサイズを変更できません。
私自身の場合、behatでこの問題が発生していました。以前のバージョンのfirefoxのchromeでウィンドウのサイズを変更していたので、次の行を囲みました。
$this->getSession()->resizeWindow(1600, 1200, 'current');
ドライバーの簡単なチェックで:
if (($this->getSession()->getDriver() instanceof Selenium2Driver)) {
$this->getSession()->resizeWindow(1600, 1200, 'current');
}
この質問の直後、4月に同じエラーが発生し始めました。新しいベータ版をインストールし、次のように開始することで回避できました:webdriver-manager start --versions.standalone 3.0.0-beta4 --versions.chrome=2.28
これは数日前まで完璧に機能していました。問題のあるsetSize()をProtractorのconfファイルから削除しようとしましたが、再び機能します。ただし、テストが開始されるたびに、chrome://settings/help
に移動する別のChromeウィンドウも生成されます。奇妙な。
Chrome更新履歴を確認し、先週v61からv62に更新されたので、それが壊れているに違いありません。ドライバーをもう一度更新する必要があると思います。
更新:ドライバーの更新方法をすばやく知りたい場合:
webdriver-manager update --versions.chrome=2.33
サーバーの起動時にドライバーを指定することを忘れないでください。
私も問題に直面しました。 Cフォルダーにある既存のchromeドライバーを、 https://sites.google.com/a/chromiumからダウンロードした新しいchromeドライバーに置き換えました。 org/chromedriver/downloads で問題が解決しました。