Estoy usando Selenium RC con Chrome Mode para Firefox para automatizar casos de prueba para una aplicación web. Estoy escribiendo los scripts en Java usando TestNG framework y Eclipse. Ahora al punto principal:Selenium RC Tiene problemas con XPath
Tengo problemas con Selenium RC para reconocer ciertos XPaths. Valido mis XPaths con la extensión XPath-Checker para Firefox que no muestra ningún error. Luego lo pruebo en Selenium IDE para asegurarme de que se está reconociendo XPath. Incluso IDE reconoce el elemento. Pero es el Selenium RC simplemente no lo reconoce. ¿Hay algo que pueda hacer para corregir esto?
Específicamente, estoy tratando de hacer clic en un área en particular dada por:
html/body/form/div[@id='someid1']/div[@class='someClass']/div[@id='someid2']/div[@id='someid3']/div[@id='someid4']/div[@title='titleOfTheElement']
Luego También probé:
//div[@title='titleOfTheElement']
xpath=//div[@title='Automated User']
xpath=/descendant::div[@title='Automated User']
Todavía no hay nada!
1) ¿Puede alguien sugerir por favor qué podría estar mal, o si se sabe que el selenio tiene problemas con XPath?
2) ¿No hay ningún complemento (similar al comprobador XPath) que nos ayude a ver las cosas de la forma en que lo hace Selenium RC? De esta forma, podemos estar seguros de si RC reconocerá los XPaths.
Gracias,
Mugen
Este es el código Selenio:
selenium.click("somelink");
selenium.waitForPageToLoad("30000");
boolean flag=false
do{
if (selenium.isTextPresent("Some text on the page which loads last"))
{
flag=true
}
}while(flag=false);
selenium.click("locator for area which is driving me crazy");
Ahora bien, en el último paso si tuviera que hacer clic en cualquier otro lugar en la página (es decir, algún otro localizador) del el clic funcionaría.
El HTML para el área se ve así:
<div id="someid1" style="overflow: hidden;">
<div id="someid2" title="title1" class="someclass">title1</div>
<div id="someid3" title="title2" class="someclass">title2</div>
<div id="someid4" title="required title" class="someclass">required title</div>
<div id="someid5" title="title3" class="someclass">title3</div>
<div id="someid6" title="title4" class="someclass">title4</div>
<div id="someid7" title="title5" class="someclass">title5</div></div>
Gracias una carga para mirar en esto. :-)
¿Puedes publicar tus comandos de Selenium RC? ¿Estás esperando a que la página se cargue antes de enviar el comando de clic? –