我已经配置了我的集线器和其中一个节点。 Hub在jenkins上设置为插件,在ubundu机器上运行,我的节点在windows机器上运行。 集线器和节点已正确配置。 现在,当我运行测试以在节点上启动chrome浏览器时,它表现得很奇怪。 一个浏览器实例在节点上启动,而不是重定向到url。 几秒钟后,它将在中心节点上启动Firefox浏览器的5个实例。 (虽然我只设置了chrome功能)。
还有其他人遇到类似的问题吗? 为了重现同样的问题,我创建了2个样本类和一个testng.xml文件。
TestClass.java
import com.codeborne.selenide.Selenide;
import org.testng.annotations.Test;
public class TestClass extends ParentClass {
@Test
public void testcase1(){
Selenide.open("http://www.google.com"); }
@Test
public void testcase2(){
Selenide.open("http://www.ymail.com");
}
@Test
public void testcase3(){
Selenide.open("http://www.bbc.com");
}
}
ParentClass.java
import com.codeborne.selenide.Configuration;
import com.codeborne.selenide.WebDriverRunner;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Optional;
import org.testng.annotations.Parameters;
import java.net.MalformedURLException;
import java.net.URL;
public class ParentClass {
Logger LOG = LoggerFactory.getLogger(ParentClass.class);
@BeforeTest
@Parameters({"Browser", "hubAddress"})
public void setupBrowser(@Optional("chrome") String browser, @Optional("") String hubAddress) {
LOG.info("Setting up Browser: ");
WebDriver driver=null;
if (browser.equalsIgnoreCase("chrome")) {
if (!hubAddress.equals("")){
DesiredCapabilities cap = DesiredCapabilities.chrome();
cap.setBrowserName("chrome");
driver= setUpRemoteBrowser(hubAddress,cap);
WebDriverRunner.setWebDriver(driver);
}
}
Configuration.startMaximized = true;
Configuration.timeout = 10;
LOG.info("Browser Setup completed");
}
public WebDriver setUpRemoteBrowser(String hubUrl, DesiredCapabilities capabilities){
LOG.info("Running browser using hub");
WebDriver driver =null;
try {
driver = new RemoteWebDriver(new URL(hubUrl), capabilities);
}
catch (MalformedURLException e){
LOG.info("Incorrect URL");
e.printStackTrace();
}
return driver;
}
}
的testng.xml
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="hue-test-Suite" parallel="true">
<parameter name="Browser" value="chrome"/>
<parameter name="hubAddress" value="http://172.26.158.157:4444/wd/hub"/>
<test name="HueMailSmoke-Tests">
<classes>
<class name="TestClass">
</class>
</classes>
</test>
</suite>