在Hudson从站上运行Webdriver测试之前出现错误

时间:2012-04-19 16:36:29

标签: java junit hudson webdriver

我们正在尝试将系统从Selenium 1迁移到WebDriver。 彻底的Hudson奴隶出现了一条错误信息,但测试在日食中运行良好。

环境:

  • 哈德森大师:Linux机器
  • Hudson奴隶:Windows 7,x86

Java版本:1.7.0_03

系统: 为该任务设置了一个新的Hudson作业,其配置与Selenium 1测试套件相同。作业从build.xml文件执行目标。 clean,makedir和编译目标已成功运行。 执行测试时,Hudson控制台上出现以下错误消息:

run_shopping_travel_tests:
    [junit] Running com.example.tests.ExampleTests
    [junit] Tests run: 1, Failures: 0, Errors: 2, Time elapsed: 2.385 sec
    [junit] Test com.example.tests.ExampleTests FAILED
    [junit] Running com.example.tests.Example2Test
    [junit] Tests run: 1, Failures: 0, Errors: 2, Time elapsed: 0.752 sec
    [junit] Test com.example.tests.Example2Test FAILED
     [echo] selenium directory: C:\Selenium

错误:

错误消息

LINUX
Stacktrace

java.lang.NoSuchFieldError: LINUX
    at org.openqa.selenium.firefox.FirefoxBinary.isOnLinux(FirefoxBinary.java:62)
    at org.openqa.selenium.firefox.FirefoxBinary.startProfile(FirefoxBinary.java:72)
    at org.openqa.selenium.firefox.FirefoxBinary.clean(FirefoxBinary.java:273)
    at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:78)
    at org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:142)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:85)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:121)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:77)
    at com.example.tests.ExampleTests.setup(ExampleTests.java:43)

测试的java代码:

public class ExampleTests
{
    FirefoxDriver driver = null;

    @Before
    public void setup() {
         File profileDir = new File( "C:\\Selenium\\FirefoxProfile" );
         FirefoxProfile profile = new FirefoxProfile(profileDir);

         driver = new FirefoxDriver(profile); // line 43, where error appears
    }
    @Test
    public void T100_VerifyExampleTest() {
   // some test code here
    }
}

我们尝试在没有“个人资料”的情况下运行测试,并出现相同的错误消息。

提前致谢。

1 个答案:

答案 0 :(得分:0)

问题解决了。 有一些jar库被用于编译-javac(在ant脚本中),但不是eclipse。

解决方案: 逐个检查jar文件,并从lib文件夹中删除不必要的文件。