Selenium Automation for Firefox

时间:2014-07-16 06:23:03

标签: java eclipse selenium

我是硒自动化的新手。我在系统中以管理员身份安装了Selenium IDE和selenium RC(java -jar selenium.jar)。我也使用Eclipse SDK版本3.7.1。编译代码时出现以下错误(运行方式 - > TestNG测试)

package com.test.webdriver;

import org.openqa.selenium.By;

import org.openqa.selenium.WebDriver;

import org.openqa.selenium.firefox.FirefoxDriver;

import org.openqa.selenium.support.ui.Select;

import org.testng.annotations.Test;

public class Driver

{

@Test //This is TestNG annotation

public void testRegister()

{

  WebDriver driver = new FirefoxDriver();

  driver.get("http://newtours.demoaut.com/");

  driver.findElement(By.linkText("REGISTER")).click();

  driver.findElement(By.name("firstName")).sendKeys("User1");

  driver.findElement(By.name("lastName")).sendKeys("Surname1");

  driver.findElement(By.name("phone")).sendKeys("123456789");

  driver.findElement(By.name("userName")).sendKeys("user1@test.com");

  driver.findElement(By.name("address1")).sendKeys("Test Address");

  driver.findElement(By.name("city")).sendKeys("Test City");

  Select select = new Select(driver.findElement(By.name("country")));

  select.selectByVisibleText("ANGOLA");

  driver.findElement(By.name("email")).sendKeys("user1@test.com");

  driver.findElement(By.name("password")).sendKeys("user1");

  driver.findElement(By.name("confirmPassword")).sendKeys("user1");

  driver.findElement(By.name("register")).click();

  driver.close();

  driver.quit();

  }

}

Selenium RC版本为2.42.2,firefox版本为23.0

错误:

  

失败:testRegister org.openqa.selenium.WebDriverException:无法   在45000 ms内绑定到锁定端口7054构建信息:版本:   ' 2.19.0',修订版:' 15849',时间:' 2012-02-08 16:12:19'系统信息:   os.name:' Windows 7',os.arch:' x86',os.version:' 6.1',java.version:   ' 1.7.0_25'驱动程序信息:driver.version:驱动程序在   org.openqa.selenium.internal.SocketLock.lock(SocketLock.java:95)at   org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:69)     在   org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:157)     在   org.openqa.selenium.remote.RemoteWebDriver。(RemoteWebDriver.java:93)     在   org.openqa.selenium.firefox.FirefoxDriver。(FirefoxDriver.java:136)     在   org.openqa.selenium.firefox.FirefoxDriver。(FirefoxDriver.java:78)     在com.test.webdriver.Driver.testRegister(Driver.java:23)at   sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at   sun.reflect.NativeMethodAccessorImpl.invoke(未知来源)at   sun.reflect.DelegatingMethodAccessorImpl.invoke(未知来源)at   java.lang.reflect.Method.invoke(未知来源)at   org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:84)     在org.testng.internal.Invoker.invokeMethod(Invoker.java:714)at   org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)at at   org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)at at   org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)     在   org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)     在org.testng.TestRunner.privateRun(TestRunner.java:767)at   org.testng.TestRunner.run(TestRunner.java:617)at   org.testng.SuiteRunner.runTest(SuiteRunner.java:334)at   org.testng.SuiteRunner.runSequentially(SuiteRunner.java:329)at at   org.testng.SuiteRunner.privateRun(SuiteRunner.java:291)at at   org.testng.SuiteRunner.run(SuiteRunner.java:240)at   org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)at   org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)at   org.testng.TestNG.runSuitesSequentially(TestNG.java:1224)at at   org.testng.TestNG.runSuitesLocally(TestNG.java:1149)at at   org.testng.TestNG.run(TestNG.java:1057)at   org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:111)at at   org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:204)at at   org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:175)

     

===============================================       默认测试

     

测试运行:1,失败:1,跳过:0

请建议我一些解决方案。我也从测试管理器中杀了Firefox会话,没有运气。

1 个答案:

答案 0 :(得分:0)

首先,检查在cmd中使用带有“netstat -anb”的7054端口的进程。

其次,您可以使用自定义配置文件更改Firefox的WebDriver端口:

FirefoxProfile profile = new FirefoxProfile();
profile.setPreference(FirefoxProfile.PORT_PREFERENCE, 9876);
WebDriver driver = new FirefoxDriver(profile);