PDFファイルのダウンロード
画面からPDFを押すと別タブでPDFが表示される場合に、
 nightwatchで自動打鍵した時は自動でダウンロードして欲しいという設定。
nightwatch.json
{
    "src_folders": [
        "test"
    ],
    "output_folder": "reports",
    "webdriver": {
        "start_process": true,
        "server_path": "./lib/chromedriver",
        "cli_args": [
            "--verbose"
        ],
        "port": 9515
    },
    "test_settings": {
        "default": {
            "desiredCapabilities": {
                "browserName": "chrome",
                "javascriptEnabled": true,
                "acceptSslCerts": true,
                "chrome.switches": "--disable-extensions",
                "chromeOptions": {
                    "args": [
                        "safebrowsing-disable-download-protection",
                        "--disable-extensions",
                        "--disable-print-preview",
                        "--ignore-certificate-errors"
                    ],
                    "prefs": {
                        "download": {
                            "default_directory": "C:\\opt\\nightwatch\\pdf\\download",
                            "prompt_for_download": false,
                            "always_open_pdf_externally": true,
                            "directory_upgrade": true
                        },
                        "pdfjs.disabled": true,
                        "plugins": {
                            "plugins_disabled": [
                                "Chrome PDF Viewer"
                            ],
                            "always_open_pdf_externally": true
                        }
                    }
                }
            }
        }
    }
}
default_directoryはダウンロード先のディレクトリを絶対指定できるが、\はエスケープさせないとエラーになる。
chromeOptionsでchromeの設定は一通り変えられるみたい。
 PDF以外にも、公式でOptionの変更方法があった。
参考
Capabilities & ChromeOptions
 公式のドキュメント
 【golang】ChromeOptionsを設定する
 別の言語でchromedriverを動かしているが、設定の内容はほとんど同じ。これを参考にしました。

 
 
 
 
 
コメントを書く