Vaadin Testbench 23似乎需要硒4.1.2,但Maven根据POM加载3.141.59
在我的pom.xml
中,我有:
<properties>
<java.version>18</java.version>
<vaadin.version>23.0.6</vaadin.version>
</properties>
...
<dependency>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-testbench</artifactId>
<scope>test</scope>
</dependency>
运行testbench时,我会收到以下错误:
WARN com.vaadin.testbench.TestBenchTestCase - This version of TestBench depends on Selenium
version 4.1.2 but version 3.141.59 was found. Make sure you do not have multiple versions
of Selenium on the classpath.
然后ran ran mvn依赖关系:tree
,我能找到的唯一对硒的引用是:
[INFO] +- com.vaadin:vaadin-testbench:jar:23.0.3:test
[INFO] | +- com.vaadin:vaadin-testbench-core:jar:8.0.0:test
[INFO] | | +- org.seleniumhq.selenium:selenium-remote-driver:jar:3.141.59:test
[INFO] | | | +- org.seleniumhq.selenium:selenium-api:jar:3.141.59:test
[INFO] | | | +- org.apache.commons:commons-exec:jar:1.3:test
[INFO] | | | +- com.google.guava:guava:jar:25.0-jre:test
[INFO] | | | | +- com.google.code.findbugs:jsr305:jar:1.3.9:compile
[INFO] | | | | +- org.checkerframework:checker-compat-qual:jar:2.0.0:test
[INFO] | | | | +- com.google.j2objc:j2objc-annotations:jar:1.1:test
[INFO] | | | | \- org.codehaus.mojo:animal-sniffer-annotations:jar:1.14:test
[INFO] | | | +- com.squareup.okhttp3:okhttp:jar:3.14.9:test
[INFO] | | | \- com.squareup.okio:okio:jar:1.14.0:test
[INFO] | | +- org.seleniumhq.selenium:selenium-java:jar:3.141.59:test
[INFO] | | | +- org.seleniumhq.selenium:selenium-chrome-driver:jar:3.141.59:test
[INFO] | | | +- org.seleniumhq.selenium:selenium-edge-driver:jar:3.141.59:test
[INFO] | | | +- org.seleniumhq.selenium:selenium-firefox-driver:jar:3.141.59:test
[INFO] | | | +- org.seleniumhq.selenium:selenium-ie-driver:jar:3.141.59:test
[INFO] | | | +- org.seleniumhq.selenium:selenium-opera-driver:jar:3.141.59:test
[INFO] | | | +- org.seleniumhq.selenium:selenium-safari-driver:jar:3.141.59:test
[INFO] | | | \- org.seleniumhq.selenium:selenium-support:jar:3.141.59:test
对我来说,这似乎表明TestBench在POM中要求硒3.141.59,但是代码正在寻找4.1.2版本我如何解决此问题?
In my pom.xml
I have:
<properties>
<java.version>18</java.version>
<vaadin.version>23.0.6</vaadin.version>
</properties>
...
<dependency>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-testbench</artifactId>
<scope>test</scope>
</dependency>
When I run TestBench I get the following error:
WARN com.vaadin.testbench.TestBenchTestCase - This version of TestBench depends on Selenium
version 4.1.2 but version 3.141.59 was found. Make sure you do not have multiple versions
of Selenium on the classpath.
I then ran mvn dependency:tree
and the only reference to Selenium I can find is:
[INFO] +- com.vaadin:vaadin-testbench:jar:23.0.3:test
[INFO] | +- com.vaadin:vaadin-testbench-core:jar:8.0.0:test
[INFO] | | +- org.seleniumhq.selenium:selenium-remote-driver:jar:3.141.59:test
[INFO] | | | +- org.seleniumhq.selenium:selenium-api:jar:3.141.59:test
[INFO] | | | +- org.apache.commons:commons-exec:jar:1.3:test
[INFO] | | | +- com.google.guava:guava:jar:25.0-jre:test
[INFO] | | | | +- com.google.code.findbugs:jsr305:jar:1.3.9:compile
[INFO] | | | | +- org.checkerframework:checker-compat-qual:jar:2.0.0:test
[INFO] | | | | +- com.google.j2objc:j2objc-annotations:jar:1.1:test
[INFO] | | | | \- org.codehaus.mojo:animal-sniffer-annotations:jar:1.14:test
[INFO] | | | +- com.squareup.okhttp3:okhttp:jar:3.14.9:test
[INFO] | | | \- com.squareup.okio:okio:jar:1.14.0:test
[INFO] | | +- org.seleniumhq.selenium:selenium-java:jar:3.141.59:test
[INFO] | | | +- org.seleniumhq.selenium:selenium-chrome-driver:jar:3.141.59:test
[INFO] | | | +- org.seleniumhq.selenium:selenium-edge-driver:jar:3.141.59:test
[INFO] | | | +- org.seleniumhq.selenium:selenium-firefox-driver:jar:3.141.59:test
[INFO] | | | +- org.seleniumhq.selenium:selenium-ie-driver:jar:3.141.59:test
[INFO] | | | +- org.seleniumhq.selenium:selenium-opera-driver:jar:3.141.59:test
[INFO] | | | +- org.seleniumhq.selenium:selenium-safari-driver:jar:3.141.59:test
[INFO] | | | \- org.seleniumhq.selenium:selenium-support:jar:3.141.59:test
Which to me seems to indicate that TestBench is asking for Selenium 3.141.59 in the pom but the code is looking for version 4.1.2 How do I resolve this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Selenium版本被Spring Boot依赖性管理覆盖。
您可以尝试设置属性:
在我的项目中,我不得不设置属性,并将所有硒依赖性添加到我的pom.xml
The Selenium version is overwritten by the Spring Boot dependency management.
You can try to set the property:
In my project this didn't work I had to set the property PLUS add all Selenium dependencies to my pom.xml