Open dgr opened 3 days ago
Also seen on IDE test, Ubuntu Chrome, Babashka.
[ TASK test:bb ]-----------------------------------------------------------------
[ Launching virtual display ]----------------------------------------------------
Waiting for Xvfb process.
Xvfb process looks good.
[ Running tests ]----------------------------------------------------------------
suites: ide
browsers: chrome
runner-args: ["--nses" "etaoin.ide-test"]
Running tests in #{"test"}
Testing etaoin.ide-test
Testing with browsers: (:chrome)
----- Error --------------------------------------------------------------------
Type: clojure.lang.ExceptionInfo
Message: throw+: {:type :etaoin/http-ex, :driver {:args ("chromedriver" "--port=37633"), :capabilities {:goog:loggingPrefs {:browser "ALL"}, :goog:chromeOptions {:w3c true}}, :process {:proc #object[java.lang.ProcessImpl 0x75b15a91 "Process[pid=2540, exitValue=\"not exited\"]"], :exit nil, :in #object[java.lang.ProcessImpl$ProcessPipeOutputStream 0x1894acf2 "java.lang.ProcessImpl$ProcessPipeOutputStream@1894acf2"], :out #object[java.lang.ProcessBuilder$NullInputStream 0xe53ca03 "java.lang.ProcessBuilder$NullInputStream@e53ca03"], :err #object[java.lang.ProcessBuilder$NullInputStream 0xe53ca03 "java.lang.ProcessBuilder$NullInputStream@e53ca03"], :prev nil, :cmd ["chromedriver" "--port=37633"]}, :locator "xpath", :type :chrome, :port 37633, :host "127.0.0.1", :url "http://127.0.0.1:37633/", :created-epoch-ms 1725985241177, :session "bccad74ef2b1f15c4d2d2f58c2e340f4"}, :webdriver-url nil, :host "127.0.0.1", :port 37633, :method :delete, :path "session/bccad74ef2b1f15c4d2d2f58c2e340f4", :payload nil}
Data: {:type :etaoin/http-ex, :driver {:args ("chromedriver" "--port=37633"), :capabilities {:goog:loggingPrefs {:browser "ALL"}, :goog:chromeOptions {:w3c true}}, :process {:proc #object[java.lang.ProcessImpl 0x75b15a91 "Process[pid=2540, exitValue=143]"], :exit nil, :in #object[java.lang.ProcessImpl$ProcessPipeOutputStream 0x1894acf2 "java.lang.ProcessImpl$ProcessPipeOutputStream@1894acf2"], :out #object[java.lang.ProcessBuilder$NullInputStream 0xe53ca03 "java.lang.ProcessBuilder$NullInputStream@e53ca03"], :err #object[java.lang.ProcessBuilder$NullInputStream 0xe53ca03 "java.lang.ProcessBuilder$NullInputStream@e53ca03"], :prev nil, :cmd ["chromedriver" "--port=37633"]}, :locator "xpath", :type :chrome, :port 37633, :host "127.0.0.1", :url "http://127.0.0.1:37633/", :created-epoch-ms 1725985241177, :session "bccad74ef2b1f15c4d2d2f58c2e340f4"}, :webdriver-url nil, :host "127.0.0.1", :port 37633, :method :delete, :path "session/bccad74ef2b1f15c4d2d2f58c2e340f4", :payload nil}
Location: /home/runner/work/etaoin/etaoin/src/etaoin/api.clj:3532:12
----- Context ------------------------------------------------------------------
3528: (try (delete-session driver)
3529: (catch Exception e
3530: (when (not (= 404 (:status (ex-data e))))
3531: ;; the exception was caused by something other than "session not found"
3532: (throw e))))
^--- throw+: {:type :etaoin/http-ex, :driver {:args ("chromedriver" "--port=37633"), :capabilities {:goog:loggingPrefs {:browser "ALL"}, :goog:chromeOptions {:w3c true}}, :process {:proc #object[java.lang.ProcessImpl 0x75b15a91 "Process[pid=2540, exitValue=\"not exited\"]"], :exit nil, :in #object[java.lang.ProcessImpl$ProcessPipeOutputStream 0x1894acf2 "java.lang.ProcessImpl$ProcessPipeOutputStream@1894acf2"], :out #object[java.lang.ProcessBuilder$NullInputStream 0xe53ca03 "java.lang.ProcessBuilder$NullInputStream@e53ca03"], :err #object[java.lang.ProcessBuilder$NullInputStream 0xe53ca03 "java.lang.ProcessBuilder$NullInputStream@e53ca03"], :prev nil, :cmd ["chromedriver" "--port=37633"]}, :locator "xpath", :type :chrome, :port 37633, :host "127.0.0.1", :url "http://127.0.0.1:37633/", :created-epoch-ms 1725985241177, :session "bccad74ef2b1f15c4d2d2f58c2e340f4"}, :webdriver-url nil, :host "127.0.0.1", :port 37633, :method :delete, :path "session/bccad74ef2b1f15c4d2d2f58c2e340f4", :payload nil}
3533:
3534: (dissoc driver :session))
3535:
3536: (defn quit
3537: "Have `driver` close the current session, then, if Etaoin launched it, kill the WebDriver process."
----- Stack trace --------------------------------------------------------------
etaoin.api/disconnect-driver - /home/runner/work/etaoin/etaoin/src/etaoin/api.clj:3532:12
etaoin.api/disconnect-driver - /home/runner/work/etaoin/etaoin/src/etaoin/api.clj:3522:1
etaoin.api/quit - /home/runner/work/etaoin/etaoin/src/etaoin/api.clj:3541:7
etaoin.api/quit - /home/runner/work/etaoin/etaoin/src/etaoin/api.clj:3536:1
etaoin.ide-test - /home/runner/work/etaoin/etaoin/test/etaoin/ide_test.clj:48:3
... (run with --debug to see elided elements)
test-shared/exec - /home/runner/work/etaoin/etaoin/build/test_shared.clj:20:31
test-shared - /home/runner/work/etaoin/etaoin/build/test_shared.clj:20:4
exec-cbffa0ad-0693-47c1-8e77-e59d3f46b5ee/exec - <expr>:24:1
exec-cbffa0ad-0693-47c1-8e77-e59d3f46b5ee - <expr>:4:1
user-861f331c-8c20-4424-9c40-f3f524a55393 - <expr>:27:46
Also one in API test, Ubuntu Firefox, also Babashka.
bb test:bb --suites api --browsers firefox --launch-virtual-display
shell: /usr/bin/bash -e {0}
env:
JAVA_HOME: /opt/hostedtoolcache/Java_Temurin-Hotspot_jdk/21.0.4-7/x64
JAVA_HOME_21_X64: /opt/hostedtoolcache/Java_Temurin-Hotspot_jdk/21.0.4-7/x64
[ TASK test:bb ]-----------------------------------------------------------------
[ Launching virtual display ]----------------------------------------------------
Waiting for Xvfb process.
Xvfb process looks good.
[ Running tests ]----------------------------------------------------------------
suites: api
browsers: firefox
runner-args: ["--patterns" "etaoin.api.*-test$"]
Running tests in #{"test"}
Testing etaoin.api-test
Testing with browsers: [:firefox]
- waiting for test-server to be ready at http://localhost:44627/test.html
[ TASK test-server ]-------------------------------------------------------------
Serving assets at http://localhost:44627
Test server static dir: ./env/test/resources/static
Test server ready
----- Error --------------------------------------------------------------------
Type: clojure.lang.ExceptionInfo
Message: throw+: {:type :etaoin/http-ex, :driver {:type :firefox, :host "127.0.0.1", :port 39493, :url "http://127.0.0.1:39493/", :locator "xpath", :args ("geckodriver" "--port" 39493), :process {:proc #object[java.lang.ProcessImpl 0x4d1a55be "Process[pid=2538, exitValue=\"not exited\"]"], :exit nil, :in #object[java.lang.ProcessImpl$ProcessPipeOutputStream 0x68639dfe "java.lang.ProcessImpl$ProcessPipeOutputStream@68639dfe"], :out #object[java.lang.ProcessBuilder$NullInputStream 0xe53ca03 "java.lang.ProcessBuilder$NullInputStream@e53ca03"], :err #object[java.lang.ProcessBuilder$NullInputStream 0xe53ca03 "java.lang.ProcessBuilder$NullInputStream@e53ca03"], :prev nil, :cmd ["geckodriver" "--port" "39493"]}, :created-epoch-ms 1725985228340}, :webdriver-url nil, :host "127.0.0.1", :port 39493, :method :post, :path "session", :payload {:capabilities {}}}
Data: {:type :etaoin/http-ex, :driver {:type :firefox, :host "127.0.0.1", :port 39493, :url "http://127.0.0.1:39493/", :locator "xpath", :args ("geckodriver" "--port" 39493), :process {:proc #object[java.lang.ProcessImpl 0x4d1a55be "Process[pid=2538, exitValue=143]"], :exit nil, :in #object[java.lang.ProcessImpl$ProcessPipeOutputStream 0x68639dfe "java.lang.ProcessImpl$ProcessPipeOutputStream@68639dfe"], :out #object[java.lang.ProcessBuilder$NullInputStream 0xe53ca03 "java.lang.ProcessBuilder$NullInputStream@e53ca03"], :err #object[java.lang.ProcessBuilder$NullInputStream 0xe53ca03 "java.lang.ProcessBuilder$NullInputStream@e53ca03"], :prev nil, :cmd ["geckodriver" "--port" "39493"]}, :created-epoch-ms 1725985228340}, :webdriver-url nil, :host "127.0.0.1", :port 39493, :method :post, :path "session", :payload {:capabilities {}}}
Location: /home/runner/work/etaoin/etaoin/src/etaoin/api.clj:3578:10
----- Context ------------------------------------------------------------------
3574: (try
3575: (quit driver)
3576: ;; silently ignore failure to quit driver on cleanup
3577: (catch Throwable _ex)))
3578: (throw ex))))))
^--- throw+: {:type :etaoin/http-ex, :driver {:type :firefox, :host "127.0.0.1", :port 39493, :url "http://127.0.0.1:39493/", :locator "xpath", :args ("geckodriver" "--port" 39493), :process {:proc #object[java.lang.ProcessImpl 0x4d1a55be "Process[pid=2538, exitValue=\"not exited\"]"], :exit nil, :in #object[java.lang.ProcessImpl$ProcessPipeOutputStream 0x68639dfe "java.lang.ProcessImpl$ProcessPipeOutputStream@68639dfe"], :out #object[java.lang.ProcessBuilder$NullInputStream 0xe53ca03 "java.lang.ProcessBuilder$NullInputStream@e53ca03"], :err #object[java.lang.ProcessBuilder$NullInputStream 0xe53ca03 "java.lang.ProcessBuilder$NullInputStream@e53ca03"], :prev nil, :cmd ["geckodriver" "--port" "39493"]}, :created-epoch-ms 1725985228340}, :webdriver-url nil, :host "127.0.0.1", :port 39493, :method :post, :path "session", :payload {:capabilities {}}}
3579:
3580: (def ^{:arglists '([] [opts])} firefox
3581: "Launch and return a Firefox driver.
3582:
3583: `opts` map is optionally, see [Driver Options](/doc/01-user-guide.adoc#driver-options)."
----- Stack trace --------------------------------------------------------------
etaoin.api/boot-driver - /home/runner/work/etaoin/etaoin/src/etaoin/api.clj:3578:10
etaoin.api/boot-driver - /home/runner/work/etaoin/etaoin/src/etaoin/api.clj:3546:1
etaoin.api-test/apply - /home/runner/work/etaoin/etaoin/test/etaoin/api_test.clj:122:7
etaoin.api-test/apply - /home/runner/work/etaoin/etaoin/test/etaoin/api_test.clj:107:5
etaoin.api-test - /home/runner/work/etaoin/etaoin/test/etaoin/api_test.clj:103:3
... (run with --debug to see elided elements)
test-shared/exec - /home/runner/work/etaoin/etaoin/build/test_shared.clj:20:31
test-shared - /home/runner/work/etaoin/etaoin/build/test_shared.clj:20:4
exec-cd02c202-0b24-41e4-a14f-ba8b83ba3399/exec - <expr>:24:1
exec-cd02c202-0b24-41e4-a14f-ba8b83ba3399 - <expr>:4:1
user-c5eddc8c-1ea2-4df9-8860-b3275741fbd0 - <expr>:27:46
This happened on MacOS Edge, Babashka. Seems like it could not correctly start the driver in the API test fixture.
=== test-switch-window-next [bb][edge]
----- Error --------------------------------------------------------------------
Type: clojure.lang.ExceptionInfo
Message: throw+: {:type :etaoin/http-ex, :driver {:args ("msedgedriver" "--port=49763"), :capabilities {:goog:loggingPrefs {:browser "ALL"}, :ms:edgeOptions {:args ("--headless"), :w3c true}}, :process {:proc #object[java.lang.ProcessImpl 0x3544dee5 "Process[pid=7783, exitValue=\"not exited\"]"], :exit nil, :in #object[java.lang.ProcessImpl$ProcessPipeOutputStream 0x1d575f30 "java.lang.ProcessImpl$ProcessPipeOutputStream@1d575f30"], :out #object[java.lang.ProcessBuilder$NullInputStream 0x31d403c2 "java.lang.ProcessBuilder$NullInputStream@31d403c2"], :err #object[java.lang.ProcessBuilder$NullInputStream 0x31d403c2 "java.lang.ProcessBuilder$NullInputStream@31d403c2"], :prev nil, :cmd ["msedgedriver" "--port=49763"]}, :locator "xpath", :type :edge, :port 49763, :host "127.0.0.1", :url "http://127.0.0.1:49763/", :created-epoch-ms 1724363261072}, :webdriver-url nil, :host "127.0.0.1", :port 49763, :method :post, :path "session", :payload {:capabilities {:firstMatch [{:goog:loggingPrefs {:browser "ALL"}, :ms:edgeOptions {:args ("--headless"), :w3c true}}]}}}
Data: {:type :etaoin/http-ex, :driver {:args ("msedgedriver" "--port=49763"), :capabilities {:goog:loggingPrefs {:browser "ALL"}, :ms:edgeOptions {:args ("--headless"), :w3c true}}, :process {:proc #object[java.lang.ProcessImpl 0x3544dee5 "Process[pid=7783, exitValue=143]"], :exit nil, :in #object[java.lang.ProcessImpl$ProcessPipeOutputStream 0x1d575f30 "java.lang.ProcessImpl$ProcessPipeOutputStream@1d575f30"], :out #object[java.lang.ProcessBuilder$NullInputStream 0x31d403c2 "java.lang.ProcessBuilder$NullInputStream@31d403c2"], :err #object[java.lang.ProcessBuilder$NullInputStream 0x31d403c2 "java.lang.ProcessBuilder$NullInputStream@31d403c2"], :prev nil, :cmd ["msedgedriver" "--port=49763"]}, :locator "xpath", :type :edge, :port 49763, :host "127.0.0.1", :url "http://127.0.0.1:49763/", :created-epoch-ms 1724363261072}, :webdriver-url nil, :host "127.0.0.1", :port 49763, :method :post, :path "session", :payload {:capabilities {:firstMatch [{:goog:loggingPrefs {:browser "ALL"}, :ms:edgeOptions {:args ("--headless"), :w3c true}}]}}}
Location: /Users/runner/work/etaoin/etaoin/src/etaoin/api.clj:3550:10
----- Context ------------------------------------------------------------------
3546: (try
3547: (quit driver)
3548: ;; silently ignore failure to quit driver on cleanup
3549: (catch Throwable _ex)))
3550: (throw ex))))))
^--- throw+: {:type :etaoin/http-ex, :driver {:args ("msedgedriver" "--port=49763"), :capabilities {:goog:loggingPrefs {:browser "ALL"}, :ms:edgeOptions {:args ("--headless"), :w3c true}}, :process {:proc #object[java.lang.ProcessImpl 0x3544dee5 "Process[pid=7783, exitValue=\"not exited\"]"], :exit nil, :in #object[java.lang.ProcessImpl$ProcessPipeOutputStream 0x1d575f30 "java.lang.ProcessImpl$ProcessPipeOutputStream@1d575f30"], :out #object[java.lang.ProcessBuilder$NullInputStream 0x31d403c2 "java.lang.ProcessBuilder$NullInputStream@31d403c2"], :err #object[java.lang.ProcessBuilder$NullInputStream 0x31d403c2 "java.lang.ProcessBuilder$NullInputStream@31d403c2"], :prev nil, :cmd ["msedgedriver" "--port=49763"]}, :locator "xpath", :type :edge, :port 49763, :host "127.0.0.1", :url "http://127.0.0.1:49763/", :created-epoch-ms 1724363261072}, :webdriver-url nil, :host "127.0.0.1", :port 49763, :method :post, :path "session", :payload {:capabilities {:firstMatch [{:goog:loggingPrefs {:browser "ALL"}, :ms:edgeOptions {:args ("--headless"), :w3c true}}]}}}
3551:
3552: (def ^{:arglists '([] [opts])} firefox
3553: "Launch and return a Firefox driver.
3554:
3555: `opts` map is optionally, see [Driver Options](/doc/01-user-guide.adoc#driver-options)."
----- Stack trace --------------------------------------------------------------
etaoin.api/boot-driver - /Users/runner/work/etaoin/etaoin/src/etaoin/api.clj:3550:10
etaoin.api/boot-driver - /Users/runner/work/etaoin/etaoin/src/etaoin/api.clj:3518:1
etaoin.api-test/apply - /Users/runner/work/etaoin/etaoin/test/etaoin/api_test.clj:122:7
etaoin.api-test/apply - /Users/runner/work/etaoin/etaoin/test/etaoin/api_test.clj:107:5
etaoin.api-test - /Users/runner/work/etaoin/etaoin/test/etaoin/api_test.clj:103:3
... (run with --debug to see elided elements)
test-shared/exec - /Users/runner/work/etaoin/etaoin/build/test_shared.clj:20:31
test-shared - /Users/runner/work/etaoin/etaoin/build/test_shared.clj:20:4
exec-5d39c4dc-468d-473a-8d54-c4602be1de35/exec - <expr>:24:1
exec-5d39c4dc-468d-473a-8d54-c4602be1de35 - <expr>:4:1
user-851c1409-c5c6-4c07-a7d8-178ceb50e7a6 - <expr>:27:46
This seems to be related to Babashka. It happens with Windows, Ubuntu, and MacOS and with Chrome, Firefox, and Edge.
Version [Please specify what version of Etaoin you are using. If you are referencing via
:git/url
, specify the:sha
]Platform CI environment, Windows, Chrome, Babashka
Symptom Exception during CI
Reproduction Not reproducible.
Actual behavior Exception thrown
Expected behavior No exception.
Diagnosis None.
Action Monitor