Mattsun さんが書きました:
現在 Firefox をヘッドレスモードで起動し (firefox --headless <URL>),JavaScript コードを実行する実験を行っています.
ヘッドレスモードは使ったことがないのですが、MDN Web Docsでは、
Node.jsとselenium-webdriverを使った例が紹介されていますね。
Linux 環境を用意するのが面倒だったので、とりあえず Windowsのコマンドプロンプト環境で試してみました。
コード:
firefox.exe --headless --screenshot ss.jpg https://www.yahoo.co.jp/
これだと、Yahoo!トップのスクリーンショットを保存して終了するのですが、
コード:
firefox.exe --headless https://www.yahoo.co.jp/
URLだけだとプロセスが動きっぱなしで、画面が出ないので終了させるにはプロセスをkillする必要がありました。
Mattsun さんが書きました:
その過程で,ヘッドレスモードでの起動 → 終了を 5 回ほど繰り返すと,Firefox が正常に動作しなくなるという現象に出会いました.
Linux では状況は違うかもしれませんが、バックグランドプロセスが溜まってるとかはないでしょうか。
Mattsun さんが書きました:
コマンドラインからリフレッシュしたいと考えています.
そのようなオプションやコマンドは用意されていますでしょうか.
リフレッシュを実行するコマンドラインオプションは無いかと思います。(ちなみに --help で一覧出ます)
上の現象との関連はわかりませんが、もしプロファイルを初期化すればいいのであれば、--profile <path> でプロファイルのパスを指定してみるのはどうでしょう。
あらかじめ必要な既定値を用意したプロファイルを作っておき、テストごとにそれをコピーし、そのパスを指定してテスト実行、終わったら削除する。
こうすれば、テストスクリプト側でコントロールできるかと思います。