当我尝试执行测试时,我收到以下错误消息。 pom
文件中的版本号没有任何变化,因此我们可以排除与依赖相关的问题。
java.lang.NoSuchFieldError:INSTANCE
在 org.apache.http.conn.ssl.SSLConnectionSocketFactory。(SSLConnectionSocketFactory.java:144) 在 org.openqa.selenium.remote.internal.HttpClientFactory.getClientConnectionManager(HttpClientFactory.java:71)
driver = new FirefoxDriver(new FirefoxBinary(new File(FF_EXEPATH)), profile);
答案 0 :(得分:1)
你肯定有版本不匹配。
请确保您正在解决
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.2</version>
</dependency>
最容易尝试检查这是否是根本原因是明确地添加上面的依赖项,看看是否有帮助。 Selenium取决于httpclient 4.5.2。
只是要查看您要解析的httpclient版本,可以尝试运行mvn dependency:tree | grep 'httpclient'
。您应该看到类似下面的内容:
09:40 $ mvn dependency:tree | grep 'httpclient'
[INFO] | +- org.apache.httpcomponents:httpclient:jar:4.5.2:compile
✔ ~/githome/PlayGround/testbed