private static WebDriver createConfiguredDriver() {
final String driverName = TestData.getBrowser(); //BrowserType.FIREFOX
final boolean remote = TestData.isRemoteMode(); //"webdriver.isremote";
DesiredCapabilities desiredCapabilites = new DesiredCapabilities(driverName, "", Platform.ANY);
desiredCapabilites.setCapability("marionette", false);
if (remote) {
final String host = TestData.getBrowserHost();
final int port = TestData.getBrowserPort();
logger.info("Remote browser host: " + host);
logger.info("Remote browser port: " + port);
try {
URL remoteAddress = new URL("http", host, port, "/wd/hub");
return new RemoteWebDriver(remoteAddress, desiredCapabilites);
} catch (MalformedURLException mue) {
throw new IllegalArgumentException("Failed to create remote URL using host: " + host, mue);
}
}
else if (BrowserType.FIREFOX.equalsIgnoreCase(driverName)) {
System.setProperty("webdriver.gecko.driver",
"src\\main\\resources\\geckodriver\\geckodriver.exe");
logger.info("Using local FireFox WebDriver.");
// desiredCapabilites.setCapability("firefox_binary", "C:\\Program Files\\Mozilla Firefox\\firefox.exe");
return new FirefoxDriver(desiredCapabilites);
<dependencies>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.0</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.4.0</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium.fluent</groupId>
<artifactId>fluent-selenium</artifactId>
<version>1.14.5</version>
<exclusions>
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>info.cukes</groupId>
<artifactId>cucumber-java</artifactId>
<scope>test</scope>
<version>1.2.5</version>
</dependency>
<dependency>
<groupId>info.cukes</groupId>
<artifactId>cucumber-jvm</artifactId>
<version>1.0.11</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>info.cukes</groupId>
<artifactId>cucumber-picocontainer</artifactId>
<version>1.1.5</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>info.cukes</groupId>
<artifactId>cucumber-junit</artifactId>
<version>1.2.5</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-all</artifactId>
<version>1.3</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>info.cukes</groupId>
<artifactId>gherkin</artifactId>
<version>2.12.2</version>
<scope>provided</scope>
</dependency>
</dependencies>
<profile>
<id>firefox</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<webdriver.driver>firefox</webdriver.driver>
</properties>
</profile>
<profile>
<id>remote</id>
<properties>
<webdriver.isremote>true</webdriver.isremote>
<webdriver.host>vwbnode01</webdriver.host>
<webdriver.port>4444</webdriver.port>
</properties>
</profile>
</profiles>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.20.1</version>
<configuration>
<skip>false</skip>
<forkCount>1</forkCount>
</configuration>
</plugin>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.15</version>
<configuration>
<includes>
<include>**/*Test.java</include>
<include>**/Test*.java</include>
<include>**/*Steps.java</include>
<include>**/*TestRunner.java</include>
</includes>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<source>9</source>
<target>9</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.9</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.2</version>
</plugin>
</plugins>
</build>
我的控制台:
RG.OpenQA.Selenium.Remote.UnreachableBrowserException:无法启动新会话。可能的原因是远程服务器地址无效或浏览器启动失败。生成信息:版本:“3.4.0”,修订版:“Unknown”,时间:“Unknown”系统信息:主机:“WS00MU016”,IP:“”,OS.Name:“Windows 10”,OS.ARCH:“AMD64”,OS.Version:“10.0”,Java.Version:“9.0.1”驱动程序信息:Driver.Version:FirefoxDriver
您可以在下面找到推荐的版本。我看到你的Selenium和Gecko驱动程序已经升级了,但是你也应该检查属性“marionette”是否设置为true。
GeckoDriver v0.19.0:Firefox 55.0(及更高版本)和Selenium 3.5(及更高版本)
GeckoDriver v0.18.0:Firefox 53.0(及更高版本)
需要指导和帮助在下面一个。 当下面的代码执行时,我得到了错误。我使用的是最新版本的java、eclipse、火狐和WebDrive jar文件。 错误 线程"main"java.lang.IllegalStateExcture中的异常:驱动程序可执行文件的路径必须由webdriver.gecko.driver系统属性设置;有关详细信息,请参阅https://github.com/mozilla/g
我在配置文件中将浏览器名设置为firefox。 我启动selenium服务器:webdriver-Manager--gecko start。我有gecko驱动版本0.26.0和火狐版本65。当我运行量角器conf.js时,它仍然会触发Chrome。我尝试运行已弃用的独立服务器。即selenium-独立npm,它仍然会触发Chrome。我还安装了最新的量角器。NodeJS: 10.21.0
火狐低版本浏览器打不开 vue3 + vite 开发的项目?
全局基类 登录名 } 问题是,当运行此功能时,我得到了下面的错误,我不明白为什么会发生这种情况,因为它在错误的位置上没有给我任何帮助。 未定义步骤:给定I打开Chrome 未定义步骤:浏览网站时 未定义的步骤:然后我使用“user1”和“password1”登录网站
我有这个功能文件 方案概要: 给定用户在我的网站上 当用户是管理员或主控编辑器时 3.用户在 /page/页面 4.和用户单击/标题/链接 5.然后用户应该被带到/目标页面/ 对于“给定用户在我的网站上”,我编写了登录详细信息,这将为场景中的每个示例打开新的浏览器。我希望单一浏览器打开并执行所有示例。有人能帮忙吗
这个问题可能是重复的,但我不像预期的那样,所以再次提出。 我正在我们的项目中创建新的量角器框架。我的应用程序有登录屏幕,我需要在一个功能的每个案例中使用不同的用户详细信息登录。我在一个特征文件中有两个场景。当我运行时,浏览器应该打开登录页面,执行一些操作,并为每个场景关闭浏览器,它必须为每个场景做同样的事情,但我没有看到这种情况发生。当我运行时,它发生在第一个场景中,从第二个场景开始它就失败了。有