It's all about the answers!

Ask a question

RQM/Selenium fails with version xul24.0 not defined in file libxul.so with link time reference


Lara Ziosi (33811112) | asked Nov 29 '13, 10:42 a.m.
edited Nov 29 '13, 11:09 a.m.
I run RQM 4.0.3 on image4, which is a Linux RedHat 6.2 64bits.

I installed Selenium 2.37.0 on image5, which is a Linux RedHat 6.2 64bits with Firefox 3.6.24

I configured the selenium.properties with the classpath entries, as described in:
http://www.ibm.com/developerworks/rational/library/run-automated-selenium-junit-tests/index.html

The RQM adapter and selenium are using this JVM:

java version "1.7.0"
Java(TM) SE Runtime Environment (build pxa6470sr5-20130619_01(SR5))
IBM J9 VM (build 2.6, JRE 1.7.0 Linux amd64-64 Compressed References 20130617_152572 (JIT enabled, AOT enabled)
J9VM - R26_Java726_SR5_20130617_1436_B152572
JIT  - r11.b04_20130528_38954ifx1
GC   - R26_Java726_SR5_20130617_1436_B152572_CMPRSS
J9CL - 20130617_152572)
JCL - 20130616_01 based on Oracle 7u25-b12


I launch my TestCase and it fails with:



org.openqa.selenium.firefox.NotConnectedException: Unable to connect to host 127.0.0.1 on port 7055 after 45000 ms. Firefox console output:
*** EM_LOG *** Item Installed via directory addition to Install Location: app-global Item ID: {972ce4c6-7e08-4474-a285-3208198ce6fd}, attempting to register...
*** EM_LOG *** Item Installed/Upgraded at Install Location: app-global Item ID: {972ce4c6-7e08-4474-a285-3208198ce6fd}, attempting to register...
*** Blocklist::_loadBlocklistFromFile: blocklist is disabled
*** EM_LOG *** ... success, item is compatible
*** EM_LOG *** Item Installed via directory addition to Install Location: app-profile Item ID: fxdriver@googlecode.com, attempting to register...
*** EM_LOG *** Item Installed/Upgraded at Install Location: app-profile Item ID: fxdriver@googlecode.com, attempting to register...
*** EM_LOG *** ... success, item is compatible
/usr/lib64/firefox-3.6/firefox: relocation error: /tmp/anonymous7909223498175187913webdriver-profile/extensions/fxdriver@googlecode.com/platform/Linux_x86_64-gcc3/components/libwebdriver-firefox-esr-latest.so: symbol _Znwm, version xul24.0 not defined in file libxul.so with link time reference

	at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:108)
	at org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:250)
	at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:110)
	at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:197)
	at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:190)
	at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:186)
	at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:99)
	at com.ibm.support.library.tests.LibraryTest.setUp(LibraryTest.java:20)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:76)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:607)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
	at org.junit.runners.Suite.runChild(Suite.java:127)
	at org.junit.runners.Suite.runChild(Suite.java:26)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:160)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:138)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:117)
	at com.ibm.rqm.adapter.commandline.JUnitLauncher.main(JUnitLauncher.java:116)
Any suggestions?

I forgot, this is the TestScript class:

package com.ibm.support.library.tests;

import java.util.regex.Pattern;
import java.util.concurrent.TimeUnit;
import org.junit.*;
import static org.junit.Assert.*;
import static org.hamcrest.CoreMatchers.*;
import org.openqa.selenium.*;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.Select;

public class LibraryTest {
  private WebDriver driver;
  private String baseUrl;
  private boolean acceptNextAlert = true;
  private StringBuffer verificationErrors = new StringBuffer();

  @Before
  public void setUp() throws Exception {
    driver = new FirefoxDriver();
    baseUrl = "http://image5.example.com:9080/";
    driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS);
  }

  @Test
  public void testLibrary() throws Exception {
    driver.get(baseUrl + "/LibraryWeb/");
    driver.findElement(By.id("link1")).click();
    driver.findElement(By.id("link2")).click();
    driver.findElement(By.id("link5")).click();
    driver.findElement(By.id("link3")).click();
    new Select(driver.findElement(By.id("form1:title1"))).selectByVisibleText("La Divina Commedia");
    new Select(driver.findElement(By.id("form1:clientName1"))).selectByVisibleText("Simon Smith");
    driver.findElement(By.id("form1:button1")).click();
    driver.findElement(By.id("link6")).click();
    driver.findElement(By.id("form1:button1")).click();
    driver.findElement(By.id("link4")).click();
  }

  @After
  public void tearDown() throws Exception {
    driver.quit();
    String verificationErrorString = verificationErrors.toString();
    if (!"".equals(verificationErrorString)) {
      fail(verificationErrorString);
    }
  }

  private boolean isElementPresent(By by) {
    try {
      driver.findElement(by);
      return true;
    } catch (NoSuchElementException e) {
      return false;
    }
  }

  private boolean isAlertPresent() {
    try {
      driver.switchTo().alert();
      return true;
    } catch (NoAlertPresentException e) {
      return false;
    }
  }

  private String closeAlertAndGetItsText() {
    try {
      Alert alert = driver.switchTo().alert();
      String alertText = alert.getText();
      if (acceptNextAlert) {
        alert.accept();
      } else {
        alert.dismiss();
      }
      return alertText;
    } finally {
      acceptNextAlert = true;
    }
  }
}


One answer



permanent link
Deepa Doraswamy (4712) | answered Jan 10 '14, 10:57 a.m.
JAZZ DEVELOPER
Hi Lara,

Looks like a problem with the version of firefox and linux. Did you try running the selenium test directly instead of running through RQM? Are you facing any issues then?

Thanks,
Deepa

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.