kazurayam / selenium-webdriver-java

Examples of the O'Reilly book "Hands-On Selenium WebDriver with Java"
https://oreil.ly/1E7CX
Apache License 2.0
0 stars 0 forks source link

Error HTTP 404 executing https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver #14

Closed kazurayam closed 10 months ago

kazurayam commented 10 months ago

In the kazurayam8d branch, I executed

Then I got the following error:

2023-10-27 22:25:36 [Test worker] DEBUG i.g.bonigarcia.wdm.WebDriverManager.<init>(225) - Using WebDriverManager 5.5.3
2023-10-27 22:25:36 [Test worker] DEBUG i.g.b.wdm.cache.ResolutionCache.checkKeyInResolutionCache(186) - Resolution firefox=119 in cache (valid until 23:22:21 27/10/2023 JST)
2023-10-27 22:25:36 [Test worker] DEBUG i.g.b.wdm.cache.ResolutionCache.checkKeyInResolutionCache(186) - Resolution firefox119=0.33.0 in cache (valid until 22:22:21 28/10/2023 JST)
2023-10-27 22:25:36 [Test worker] INFO  i.g.bonigarcia.wdm.WebDriverManager.resolveDriverVersion(1217) - Using geckodriver 0.33.0 (resolved driver for Firefox 119)
2023-10-27 22:25:36 [Test worker] INFO  i.g.bonigarcia.wdm.WebDriverManager.logSeekRepo(1568) - Reading https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver to seek geckodriver
2023-10-27 22:25:37 [Test worker] ERROR i.g.bonigarcia.wdm.online.HttpClient.execute(176) - Error HTTP 404 executing https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver
2023-10-27 22:25:37 [Test worker] WARN  i.g.bonigarcia.wdm.WebDriverManager.fallback(1419) - There was an error managing geckodriver 0.33.0 (Error HTTP 404 executing https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver) ... trying again using latest driver stored in cache
2023-10-27 22:25:37 [Test worker] DEBUG i.g.b.wdm.cache.ResolutionCache.checkKeyInResolutionCache(186) - Resolution firefox=119 in cache (valid until 23:22:21 27/10/2023 JST)
2023-10-27 22:25:37 [Test worker] DEBUG i.g.b.wdm.cache.ResolutionCache.checkKeyInResolutionCache(186) - Resolution firefox119=0.33.0 in cache (valid until 22:22:21 28/10/2023 JST)
2023-10-27 22:25:37 [Test worker] INFO  i.g.bonigarcia.wdm.WebDriverManager.resolveDriverVersion(1217) - Using geckodriver 0.33.0 (resolved driver for Firefox 119)
2023-10-27 22:25:37 [Test worker] INFO  i.g.bonigarcia.wdm.WebDriverManager.logSeekRepo(1568) - Reading https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver to seek geckodriver
2023-10-27 22:25:37 [Test worker] ERROR i.g.bonigarcia.wdm.online.HttpClient.execute(176) - Error HTTP 404 executing https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver
2023-10-27 22:25:37 [Test worker] ERROR i.g.bonigarcia.wdm.WebDriverManager.handleException(1408) - There was an error managing geckodriver 0.33.0 (Error HTTP 404 executing https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver)
io.github.bonigarcia.wdm.config.WebDriverManagerException: Error HTTP 404 executing https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver
    at io.github.bonigarcia.wdm.online.HttpClient.execute(HttpClient.java:177)
    at io.github.bonigarcia.wdm.WebDriverManager.openGitHubConnection(WebDriverManager.java:1592)
    at io.github.bonigarcia.wdm.WebDriverManager.getDriversFromGitHub(WebDriverManager.java:1606)
    at io.github.bonigarcia.wdm.managers.FirefoxDriverManager.getDriverUrls(FirefoxDriverManager.java:102)
    at io.github.bonigarcia.wdm.WebDriverManager.createUrlHandler(WebDriverManager.java:1430)
    at io.github.bonigarcia.wdm.WebDriverManager.download(WebDriverManager.java:1258)
    at io.github.bonigarcia.wdm.WebDriverManager.manage(WebDriverManager.java:1177)
    at io.github.bonigarcia.wdm.WebDriverManager.fallback(WebDriverManager.java:1425)
    at io.github.bonigarcia.wdm.WebDriverManager.handleException(WebDriverManager.java:1402)
    at io.github.bonigarcia.wdm.WebDriverManager.manage(WebDriverManager.java:1183)
    at io.github.bonigarcia.wdm.WebDriverManager.setup(WebDriverManager.java:425)
    at io.github.bonigarcia.wdm.WebDriverManager.create(WebDriverManager.java:430)
    at io.github.bonigarcia.webdriver.junit4.ch05.cdp.FullPageScreenshotFirefoxJUnit4Test.setup(FullPageScreenshotFirefoxJUnit4Test.java:46)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
    at org.junit.internal.runners.statements.RunBefores.invokeMethod(RunBefores.java:33)
    at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
    at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
    at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
    at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
    at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
    at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
    at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:112)
    at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
    at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:40)
    at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:60)
    at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:52)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
    at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
    at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
    at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
    at jdk.proxy1/jdk.proxy1.$Proxy2.processTestClass(Unknown Source)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker$2.run(TestWorker.java:176)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60)
    at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)
    at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:113)
    at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:65)
    at worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)
    at worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)

io.github.bonigarcia.wdm.config.WebDriverManagerException: io.github.bonigarcia.wdm.config.WebDriverManagerException: Error HTTP 404 executing https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver
    at io.github.bonigarcia.wdm.WebDriverManager.handleException(WebDriverManager.java:1409)
    at io.github.bonigarcia.wdm.WebDriverManager.manage(WebDriverManager.java:1183)
    at io.github.bonigarcia.wdm.WebDriverManager.fallback(WebDriverManager.java:1425)
    at io.github.bonigarcia.wdm.WebDriverManager.handleException(WebDriverManager.java:1402)
    at io.github.bonigarcia.wdm.WebDriverManager.manage(WebDriverManager.java:1183)
    at io.github.bonigarcia.wdm.WebDriverManager.setup(WebDriverManager.java:425)
    at io.github.bonigarcia.wdm.WebDriverManager.create(WebDriverManager.java:430)
    at io.github.bonigarcia.webdriver.junit4.ch05.cdp.FullPageScreenshotFirefoxJUnit4Test.setup(FullPageScreenshotFirefoxJUnit4Test.java:46)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
    at org.junit.internal.runners.statements.RunBefores.invokeMethod(RunBefores.java:33)
    at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
    at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
    at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
    at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
    at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
    at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
    at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:112)
    at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
    at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:40)
    at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:60)
    at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:52)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
    at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
    at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
    at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
    at jdk.proxy1/jdk.proxy1.$Proxy2.processTestClass(Unknown Source)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker$2.run(TestWorker.java:176)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60)
    at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)
    at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:113)
    at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:65)
    at worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)
    at worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)
Caused by: io.github.bonigarcia.wdm.config.WebDriverManagerException: Error HTTP 404 executing https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver
    at io.github.bonigarcia.wdm.online.HttpClient.execute(HttpClient.java:177)
    at io.github.bonigarcia.wdm.WebDriverManager.openGitHubConnection(WebDriverManager.java:1592)
    at io.github.bonigarcia.wdm.WebDriverManager.getDriversFromGitHub(WebDriverManager.java:1606)
    at io.github.bonigarcia.wdm.managers.FirefoxDriverManager.getDriverUrls(FirefoxDriverManager.java:102)
    at io.github.bonigarcia.wdm.WebDriverManager.createUrlHandler(WebDriverManager.java:1430)
    at io.github.bonigarcia.wdm.WebDriverManager.download(WebDriverManager.java:1258)
    at io.github.bonigarcia.wdm.WebDriverManager.manage(WebDriverManager.java:1177)
    ... 51 more

Error HTTP 404 executing https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver
io.github.bonigarcia.wdm.config.WebDriverManagerException: Error HTTP 404 executing https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver
    at app//io.github.bonigarcia.wdm.online.HttpClient.execute(HttpClient.java:177)
    at app//io.github.bonigarcia.wdm.WebDriverManager.openGitHubConnection(WebDriverManager.java:1592)
    at app//io.github.bonigarcia.wdm.WebDriverManager.getDriversFromGitHub(WebDriverManager.java:1606)
    at app//io.github.bonigarcia.wdm.managers.FirefoxDriverManager.getDriverUrls(FirefoxDriverManager.java:102)
    at app//io.github.bonigarcia.wdm.WebDriverManager.createUrlHandler(WebDriverManager.java:1430)
    at app//io.github.bonigarcia.wdm.WebDriverManager.download(WebDriverManager.java:1258)
    at app//io.github.bonigarcia.wdm.WebDriverManager.manage(WebDriverManager.java:1177)
    at app//io.github.bonigarcia.wdm.WebDriverManager.fallback(WebDriverManager.java:1425)
    at app//io.github.bonigarcia.wdm.WebDriverManager.handleException(WebDriverManager.java:1402)
    at app//io.github.bonigarcia.wdm.WebDriverManager.manage(WebDriverManager.java:1183)
    at app//io.github.bonigarcia.wdm.WebDriverManager.setup(WebDriverManager.java:425)
    at app//io.github.bonigarcia.wdm.WebDriverManager.create(WebDriverManager.java:430)
    at app//io.github.bonigarcia.webdriver.junit4.ch05.cdp.FullPageScreenshotFirefoxJUnit4Test.setup(FullPageScreenshotFirefoxJUnit4Test.java:46)
    at java.base@17.0.8/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base@17.0.8/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base@17.0.8/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base@17.0.8/java.lang.reflect.Method.invoke(Method.java:568)
    at app//org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
    at app//org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at app//org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
    at app//org.junit.internal.runners.statements.RunBefores.invokeMethod(RunBefores.java:33)
    at app//org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
    at app//org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
    at app//org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    at app//org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
    at app//org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
    at app//org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
    at app//org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
    at app//org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
    at app//org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
    at app//org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
    at app//org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
    at app//org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
    at app//org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    at app//org.junit.runners.ParentRunner.run(ParentRunner.java:413)
    at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:112)
    at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
    at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:40)
    at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:60)
    at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:52)
    at java.base@17.0.8/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base@17.0.8/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base@17.0.8/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base@17.0.8/java.lang.reflect.Method.invoke(Method.java:568)
    at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
    at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
    at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
    at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
    at jdk.proxy1/jdk.proxy1.$Proxy2.processTestClass(Unknown Source)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker$2.run(TestWorker.java:176)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60)
    at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)
    at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:113)
    at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:65)
    at app//worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)
    at app//worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)

java.lang.NullPointerException: Cannot invoke "org.openqa.selenium.WebDriver.quit()" because "this.driver" is null
    at io.github.bonigarcia.webdriver.junit4.ch05.cdp.FullPageScreenshotFirefoxJUnit4Test.teardown(FullPageScreenshotFirefoxJUnit4Test.java:51)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
    at org.junit.internal.runners.statements.RunAfters.invokeMethod(RunAfters.java:46)
    at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:33)
    at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
    at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
    at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
    at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
    at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:112)
    at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
    at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:40)
    at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:60)
    at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:52)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
    at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
    at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
    at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
    at jdk.proxy1/jdk.proxy1.$Proxy2.processTestClass(Unknown Source)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker$2.run(TestWorker.java:176)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60)
    at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)
    at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:113)
    at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:65)
    at worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)
    at worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)

> Task :selenium-webdriver-junit4:test FAILED
io.github.bonigarcia.webdriver.junit4.ch05.cdp.FullPageScreenshotFirefoxJUnit4Test > testFullPageScreenshotFirefox FAILED
    io.github.bonigarcia.wdm.config.WebDriverManagerException at FullPageScreenshotFirefoxJUnit4Test.java:46
        Caused by: io.github.bonigarcia.wdm.config.WebDriverManagerException at FullPageScreenshotFirefoxJUnit4Test.java:46
    java.lang.NullPointerException at FullPageScreenshotFirefoxJUnit4Test.java:51
1 test completed, 1 failed
Failed test(s) for selenium-webdriver-junit4:
[io.github.bonigarcia.webdriver.junit4.ch05.cdp.FullPageScreenshotFirefoxJUnit4Test::testFullPageScreenshotFirefox]
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':selenium-webdriver-junit4:test'.
> There were failing tests. See the report at: file:///Users/kazuakiurayama/github/selenium-webdriver-java/selenium-webdriver-junit4/build/reports/tests/test/index.html
* Try:
> Run with --scan to get full insights.
Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.
You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
For more on this, please refer to https://docs.gradle.org/8.4/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
BUILD FAILED in 6s
5 actionable tasks: 1 executed, 4 up-to-date
kazurayam commented 10 months ago

I tried to get

It responded the following JSON:

[
  {
    "tag_name": "v0.33.0",
    "assets": [
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.33.0/geckodriver-v0.33.0-linux-aarch64.tar.gz"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.33.0/geckodriver-v0.33.0-linux32.tar.gz"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.33.0/geckodriver-v0.33.0-linux32.tar.gz.asc"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.33.0/geckodriver-v0.33.0-linux64.tar.gz"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.33.0/geckodriver-v0.33.0-linux64.tar.gz.asc"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.33.0/geckodriver-v0.33.0-macos-aarch64.tar.gz"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.33.0/geckodriver-v0.33.0-macos.tar.gz"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.33.0/geckodriver-v0.33.0-win-aarch64.zip"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.33.0/geckodriver-v0.33.0-win32.zip"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.33.0/geckodriver-v0.33.0-win64.zip"
      }
    ]
  },
  {
    "tag_name": "v0.32.2",
    "assets": [
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.32.2/geckodriver-v0.32.2-linux-aarch64.tar.gz"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.32.2/geckodriver-v0.32.2-linux-aarch64.tar.gz.asc"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.32.2/geckodriver-v0.32.2-linux32.tar.gz"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.32.2/geckodriver-v0.32.2-linux32.tar.gz.asc"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.32.2/geckodriver-v0.32.2-linux64.tar.gz"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.32.2/geckodriver-v0.32.2-linux64.tar.gz.asc"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.32.2/geckodriver-v0.32.2-macos-aarch64.tar.gz"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.32.2/geckodriver-v0.32.2-macos.tar.gz"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.32.2/geckodriver-v0.32.2-win-aarch64.zip"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.32.2/geckodriver-v0.32.2-win32.zip"
      },
      {
        "browser_download_url": "https://github.com/mozilla/geckodriver/releases/download/v0.32.2/geckodriver-v0.32.2-win64.zip"
      }
    ]
  },
    ....
kazurayam commented 10 months ago

I tried Selenium-java v4.14.1 instead of v4.13.0.

ext {
    slf4jVersion  = "2.0.9"
    logbackVersion  = "1.4.11"

    seleniumVersion  = "4.14.1"
    //seleniumVersion  = "4.13.0"

and tried

:~/github/selenium-webdriver-java
$ ./gradlew -q :selenium-webdriver-junit4:test --tests="*HelloWorldFirefixJUnit4Test*"

then I got the error same as #10

java.lang.NoClassDefFoundError: org/openqa/selenium/remote/http/netty/NettyClient$Factory
    at java.base/java.lang.ClassLoader.defineClass1(Native Method)
    at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1017)
...

I got no progress.

kazurayam commented 10 months ago

A similar issue was posted in the WebDriverManager project:

https://github.com/bonigarcia/webdrivermanager/issues/891

I tried configuring Logback to show the TRACE level messages. I created a file selenium-webdriver-java/selenium-webdriver-junit4/src/test/resources/logback-test.xml

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <logger name="io.github.bonigarcia" level="TRACE" />
</configuration>

But I could not see anything informative.

kazurayam commented 10 months ago

I read the instruction by @bonigarcia in the https://github.com/bonigarcia/webdrivermanager/issues/891

so I modified the HelloWorldFirefoxJUnit4Test.java slightly

    @BeforeClass
    public static void setupClass() {
        //WebDriverManager.firefoxdriver().setup();
        WebDriverManager.firefoxdriver().useMirror().setup();
    }

https://github.com/kazurayam/selenium-webdriver-java/blob/kazurayam14/selenium-webdriver-junit4/src/test/java/io/github/bonigarcia/webdriver/junit4/ch02/helloworld/HelloWorldFirefoxJUnit4Test.java

Then the test ran successfully without "Error HTTP 404 executing https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver".

I do not yet see what's going on with the useMirror() part.

By the way, the URL string contains a substring /mirror/. It smells to me.

kazurayam commented 10 months ago

What does the userMirror() method does?

https://github.com/bonigarcia/webdrivermanager/blob/master/src/main/java/io/github/bonigarcia/wdm/WebDriverManager.java

    public WebDriverManager useMirror() {
        Optional<URL> mirrorUrl = getMirrorUrl();
        if (!mirrorUrl.isPresent()) {
            throw new WebDriverManagerException("Mirror URL not available");
        }
        config().setUseMirror(true);
        return this;
    }
kazurayam commented 10 months ago

I found the string "https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver" in the source code repository at

https://github.com/bonigarcia/webdrivermanager/blob/master/src/main/resources/webdrivermanager.properties

Line#33

kazurayam commented 10 months ago

I experienced this "Error HTTP 404" on my MacBook Air with Chip Apple M1 , mac OS 12.7 + Firefox v119.0

I have one more MacBook Air (Retina, 130inch, 2018) with Chip X86-64, mac OS 12.6.8 + v118.0.2. I tried to execute the same Test : https://github.com/kazurayam/selenium-webdriver-java/blob/kazurayam14/selenium-webdriver-junit4/src/test/java/io/github/bonigarcia/webdriver/junit4/ch02/helloworld/HelloWorldFirefoxJUnit4Test.java

It silently passed without "Error HTTP 404" error on another MacBook Air X86-64 + Firefox v118.0.2!

kazurayam commented 10 months ago

On my MacBook Air with Apple M1 chip, macOS 12.6.8 I updated Firefox from v118.0.2 to v119.0, then tried the same test : https://github.com/kazurayam/selenium-webdriver-java/blob/kazurayam14/selenium-webdriver-junit4/src/test/java/io/github/bonigarcia/webdriver/junit4/ch02/helloworld/HelloWorldFirefoxJUnit4Test.java

The result: worked OK

> Task :selenium-webdriver-junit4:test
2023-10-30 10:26:49 [Test worker] DEBUG i.g.bonigarcia.wdm.WebDriverManager.<init>(225) - Using WebDriverManager 5.5.3
2023-10-30 10:26:50 [Test worker] DEBUG i.g.b.wdm.cache.ResolutionCache.checkKeyInResolutionCache(186) - Resolution firefox=118 in cache (valid until 10:59:08 30/10/2023 JST)
2023-10-30 10:26:50 [Test worker] DEBUG i.g.b.wdm.cache.ResolutionCache.checkKeyInResolutionCache(186) - Resolution firefox118=0.33.0 in cache (valid until 09:59:08 31/10/2023 JST)
2023-10-30 10:26:50 [Test worker] INFO  i.g.bonigarcia.wdm.WebDriverManager.resolveDriverVersion(1217) - Using geckodriver 0.33.0 (resolved driver for Firefox 118)
2023-10-30 10:26:50 [Test worker] DEBUG i.g.bonigarcia.wdm.WebDriverManager.manage(1172) - Driver geckodriver 0.33.0 found in cache
2023-10-30 10:26:50 [Test worker] INFO  i.g.bonigarcia.wdm.WebDriverManager.exportDriver(1270) - Exporting webdriver.gecko.driver as /Users/kazuakiurayama/.cache/selenium/geckodriver/mac64/0.33.0/geckodriver
2023-10-30 10:27:00 [Test worker] DEBUG i.g.b.w.j.c.h.HelloWorldFirefoxJUnit4Test.test(60) - The title of https://bonigarcia.dev/selenium-webdriver-java/ is Hands-On Selenium WebDriver with Java
io.github.bonigarcia.webdriver.junit4.ch02.helloworld.HelloWorldFirefoxJUnit4Test > test PASSED
Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.
You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
For more on this, please refer to https://docs.gradle.org/8.4/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
BUILD SUCCESSFUL in 1m 51s
5 actionable tasks: 5 executed
10:27:03: Execution finished ':selenium-webdriver-junit4:test --tests "io.github.bonigarcia.webdriver.junit4.ch02.helloworld.HelloWorldFirefoxJUnit4Test"'.

This experiment implies 2 factors might be significant as a possible cause of the "Error HTTP 404" error:

  1. Apple X86-64 Chip vs M1 Chip
  2. macOS 12.68 vs 12.70
kazurayam commented 10 months ago

Then I should update macOS 12.6.8 to 12.7 on my mac x86-64 machine, and see. .... Well, Apple suggests to upgrade macOS to v14.1 Sonora. Too distant! I wouldn't do it for now.


I tried the same test o my Windows PC.

The result: worked OK

> Task :selenium-webdriver-junit4:compileJava
> Task :selenium-webdriver-junit4:processResources
> Task :selenium-webdriver-junit4:classes
> Task :selenium-webdriver-junit4:compileTestJava
> Task :selenium-webdriver-junit4:processTestResources
> Task :selenium-webdriver-junit4:testClasses
Download https://repo.maven.apache.org/maven2/org/aspectj/aspectjweaver/1.9.9.1/aspectjweaver-1.9.9.1.pom, took 211 ms (2.07 kB)
Download https://repo.maven.apache.org/maven2/org/aspectj/aspectjweaver/1.9.9.1/aspectjweaver-1.9.9.1.jar, took 1 s 773 ms (2.09 MB)
2023-10-30 18:52:02 [Test worker] DEBUG i.g.bonigarcia.wdm.WebDriverManager.<init>(225) - Using WebDriverManager 5.5.3
2023-10-30 18:52:03 [Test worker] DEBUG i.g.b.wdm.versions.VersionDetector.getBrowserVersionFromTheShell(259) - Detecting firefox version using online commands.properties
2023-10-30 18:52:03 [Test worker] DEBUG i.g.bonigarcia.wdm.versions.Shell.runAndWaitArray(65) - Running command on the shell: [cmd.exe, /C, wmic, datafile, where, name="%PROGRAMFILES:\=\\%\\Mozilla, Firefox\\firefox.exe", get, Version, /value]
2023-10-30 18:52:04 [Test worker] DEBUG i.g.bonigarcia.wdm.versions.Shell.runAndWaitArray(69) - Result: Version=111.0.0.8468
2023-10-30 18:52:04 [Test worker] DEBUG i.g.b.wdm.versions.VersionDetector.getDriverVersionFromProperties(101) - Getting driver version for firefox111 from online versions.properties
2023-10-30 18:52:04 [Test worker] INFO  i.g.bonigarcia.wdm.WebDriverManager.resolveDriverVersion(1217) - Using geckodriver 0.33.0 (resolved driver for Firefox 111)
2023-10-30 18:52:04 [Test worker] DEBUG i.g.b.wdm.cache.ResolutionCache.putValueInResolutionCacheIfEmpty(119) - Storing resolution firefox=111 in cache (valid until 19:52:04 30/10/2023 JST)
2023-10-30 18:52:04 [Test worker] DEBUG i.g.b.wdm.cache.ResolutionCache.putValueInResolutionCacheIfEmpty(119) - Storing resolution firefox111=0.33.0 in cache (valid until 18:52:04 31/10/2023 JST)
2023-10-30 18:52:04 [Test worker] INFO  i.g.bonigarcia.wdm.WebDriverManager.logSeekRepo(1568) - Reading https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver to seek geckodriver
2023-10-30 18:52:04 [Test worker] DEBUG i.g.bonigarcia.wdm.WebDriverManager.createUrlHandler(1453) - Driver to be downloaded geckodriver 0.33.0
2023-10-30 18:52:04 [Test worker] INFO  i.g.bonigarcia.wdm.online.Downloader.downloadAndExtract(132) - Downloading https://github.com/mozilla/geckodriver/releases/download/v0.33.0/geckodriver-v0.33.0-win64.zip
2023-10-30 18:52:06 [Test worker] INFO  i.g.bonigarcia.wdm.online.Downloader.extract(193) - Extracting driver from compressed file geckodriver-v0.33.0-win64.zip
2023-10-30 18:52:07 [Test worker] INFO  i.g.bonigarcia.wdm.WebDriverManager.exportDriver(1270) - Exporting webdriver.gecko.driver as C:\Users\uraya\.cache\selenium\geckodriver\win64\0.33.0\geckodriver.exe
2023-10-30 18:52:16 [Test worker] DEBUG i.g.b.w.j.c.h.HelloWorldFirefoxJUnit4Test.test(60) - The title of https://bonigarcia.dev/selenium-webdriver-java/ is Hands-On Selenium WebDriver with Java

> Task :selenium-webdriver-junit4:test
io.github.bonigarcia.webdriver.junit4.ch02.helloworld.HelloWorldFirefoxJUnit4Test > test PASSED

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

For more on this, please refer to https://docs.gradle.org/8.4/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
BUILD SUCCESSFUL in 1m 13s
5 actionable tasks: 5 executed
18:52:18: Execution finished ':selenium-webdriver-junit4:test --tests "io.github.bonigarcia.webdriver.junit4.ch02.helloworld.HelloWorldFirefoxJUnit4Test"'.
kazurayam commented 10 months ago

Now I can restate my problem. On my MacBook Air with Apple M1 Chip + macOS 12.7 +JDK17 +Gradle8.4 +FF v119, when I ran ch02/helloworld/HelloWorldFirefoxJUnit4Test, I got the error "Error HTTP 404 executing https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver". However, on another MacBook Air with x86-64 Chip, the test passed without any Error. Neither on Windows.

So, it seems that the error only occurs on a machine with Apple Silicon Chip. Is it really the case?


One more issue: I could confirm that the following change was effective:

        //WebDriverManager.firefoxdriver().setup();
        WebDriverManager.firefoxdriver().useMirror().setup();

Why is the useMirror() effective? I guess that all useMirror() does is to try another URL. See https://github.com/bonigarcia/webdrivermanager/blob/master/src/main/resources/webdrivermanager.properties

wdm.geckoDriverUrl=https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver
wdm.geckoDriverMirrorUrl=https://registry.npmmirror.com/-/binary/geckodriver/

How are these 2 URL different? I'm not yet convinced that the useMirror() is an effective solution.

kazurayam commented 10 months ago

I am surprised.

I forked the webdrivermanager repository to my personal GitHub account. I cloned the master branch to my 2 MacBook Air. On both of them, I executed

$ mvn test

Then I saw the "Error HTTP 404 executing https://raw.githubusercontent.com/bonigarcia/webdrivermanager/master/docs/mirror/geckodriver" message repeatedly on both of MacBook Air x86-64 and M1 Chip.

I tried the same on my Windows 10 PC with JDK17. I did $ mvn test on it ------ I saw NO "Error HTTP 404" for geckodriver!


So, I think that the webdrivermanager library does not work well on Mac, it works OK on Windows.

kazurayam commented 10 months ago

See https://github.com/bonigarcia/webdrivermanager/issues/1154

WebDriverManager has a know limitation accessing GitHub.

In order to avoid this error, possibly I should make a GitHub Personal Access Token and let WebDriverManager to use it.

kazurayam commented 10 months ago

I have created a GitHub Fine-gradle Personal Access Token as described in

https://qiita.com/ryamate/items/53b392b9bc6540f7f4c7

I named it as "For WebDriverManager since 31 Oct 2023".

I edited my ~/.bash_profile file:

# GITHUB
export GITHUB_TOKEN=github_pat_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

I stopped and restarted my Mac.

I confirmed that the environment variable GITHUB_TOKEN is defined:

echo $GITHUB_TOKEN
github_pat_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Then I executed the test https://github.com/kazurayam/selenium-webdriver-java/blob/master/selenium-webdriver-junit4/src/test/java/io/github/bonigarcia/webdriver/junit4/ch05/cdp/FullPageScreenshotFirefoxJUnit4Test.java

Finally, the test passed successful.

Screenshot 2023-10-31 at 9 46 08
kazurayam commented 10 months ago

Previously on my MacBook, I already had the envVar GITHUB_TOKEN. But the specified value was invalid. Perhaps I removed the Personal Access Token out of my GitHub account, or the PAT has expired.

When the envVar GITHUB_TOKEN is there with invalid value, WebDriverManager throws Error HTTP 404

kazurayam commented 10 months ago

This question was answered in

https://github.com/bonigarcia/webdrivermanager/issues/1154