デフォルトでは、ChromeDriver は警告とエラーのみを stderr に記録します。問題をデバッグする場合は、より詳細なログを有効にすると便利です。
詳細ログを有効にするには、--verbose
を chromedriver サーバーに渡すだけです。--log-path
を渡して、ログが stderr ではなくファイルに書き込まれるようにすることもできます。chromedriver サーバーを直接起動しない場合は、WebDriver クライアント ライブラリを介してスイッチを渡す必要があります。残念ながら、一部のクライアントにはまだこの方法がありません。
--log-path
を Chrome の起動コマンドに渡すと、Chrome Linux と Mac の stderr がログファイルに保存されます。ただし、Chrome は GUI アプリケーションであり、OS では ChromeDriver から stderr ハンドルを継承することが許可されていないため、Windows の stderr は保存されません。Windows、Linux、Mac で stderr を保存するには、CHROME_LOG_FILE
環境変数を使用します。このファイルには、Chrome のログのみが含まれます。ChromeOptions で logPath を指定すると、ChromeDriver はその値を CHROME_LOG_FILE
にコピーします。
stderr も stdout も Android ではキャプチャされません。stdout はすべてのプラットフォームのコンソール ウィンドウに送信されます。
C#
var service = ChromeDriverService.CreateDefaultService();
service.LogPath = "D:\\chromedriver.log";
service.EnableVerboseLogging = true;
driver = new ChromeDriver(service);
両方の関数にオーバーロードされたバージョンがあります。API ドキュメントをご覧ください。
Java
System.setProperty("webdriver.chrome.logfile", "D:\\chromedriver.log");
System.setProperty("webdriver.chrome.verboseLogging", "true");
Python
driver = webdriver.Chrome(executable_path="D:\\chromedriver.exe", service_args=["--verbose", "--log-path=D:\\qc1.log"])
すべての言語
コマンド プロンプトまたはターミナルで、フラグを指定して詳細ログを設定し、chromedriver を起動します。
--verbose --log-path=chromedriver.log
http://localhost:9515 で指定された RemoteWebDriver を使用してテストを実行します。