Selenium WebDriver: haciendo clic en elementos dentro de un SVG usando XPath

Tengo un objeto SVG con algunos elementos de círculo y rectángulo. Usando webdriver, puedo hacer clic en el objeto svg principal, pero no en ninguno de los elementos que contiene. El problema solo parece ser con un clic (o con cualquier interacción del mouse), ya que puedo usar getAttribute () para devolver el (los) valor (es) de ancho, ID, x / y, texto, etc., para cualquier cosa debajo de él.

Aquí hay un ejemplo del HTML:

    <div id="canvas">
        <svg height="840" version="1.1" width="757" xmlns="http://www.w3.org/2000/svg" style="overflow: hidden; position: relative;">
            <image x="0" y="0" width="757" height="840" preserveAspectRatio="none">
            <circle cx="272.34" cy="132.14">
            <rect x="241.47" y="139.23">
            <text style="text-anchor: middle; x="272.47" y="144.11">
        </svg>
    </div>

Y un ejemplo de WebDriver que intenta hacer clic con el botón derecho en un elemento de rectángulo (y falla):

    WebElement mapObject = driver.findElement(By.xpath("//*[name()='svg']/*[name()='rect']"));
    Actions builder = new Actions(driver);
    builder.contextClick(mapObject).perform();

Pero esto funciona y devuelve un valor:

    driver.findElement(By.xpath("//*[name()='svg']/*[name()='rect']")).getAttribute("x");    

Cuando los errores de WebDriver, por lo general es esto:

    org.openqa.selenium.WebDriverException: '[JavaScript Error: "a.scrollIntoView is not a function" {file: "file:///var/folders/sm/jngvd6s97ldb916b7h25d57r0000gn/T/anonymous490577185394048506webdriver-profile/extensions/[email protected]/components/synthetic_mouse.js" line: 8544}]' when calling method: [wdIMouse::move]

He pasado un tiempo investigando esto y parece ser un problema algo común con Selenium y SVG, sin embargo, me pregunto si hay una solución. Las únicas soluciones que he encontrado están interactuando con el SVG, que ya puedo hacer.

Estoy usando Selenium 2.28 (y probé 2.29) con Java + Firefox 17.

Cualquier idea muy apreciada.

Respuestas a la pregunta(7)

Su respuesta a la pregunta