Używam Selenium RC z trybem chrome do Firefoksa do automatyzacji przypadków testowych dla aplikacji internetowej. Piszę skrypty w Javie przy użyciu szkieletu TestNG i Eclipse. Teraz do głównego punktu:Selenium RC Mając problemy z XPath
Mam problemy z Selenium RC dla rozpoznawania niektórych XPaths. Zatwierdzam moje XPath z rozszerzeniem XPath-Checker dla Firefoksa, które nie wykazuje błędów. Następnie wypróbowałem to w Selenum IDE, aby upewnić się, że XPath jest rozpoznawany. Nawet IDE rozpoznaje element. Ale jego Selenium RC po prostu go nie rozpoznaje. Czy jest coś, co mogę zrobić, by to poprawić?
szczególności próbuję kliknąć na danym obszarze określonym przez:
html/body/form/div[@id='someid1']/div[@class='someClass']/div[@id='someid2']/div[@id='someid3']/div[@id='someid4']/div[@title='titleOfTheElement']
Wtedy też próbował:
//div[@title='titleOfTheElement']
xpath=//div[@title='Automated User']
xpath=/descendant::div[@title='Automated User']
nadal nic!
1) Czy ktoś może zasugerować, co może być nie tak, lub czy wiadomo, że Selenium ma problemy z XPath?
2) Czy nie ma żadnego dodatku (podobnego do sprawdzania XPath), który pomaga nam widzieć rzeczy tak, jak widzi Selen RC? W ten sposób możemy być pewni, czy RC rozpozna XPath.
Dzięki,
Mugen
Oto kod Selen:
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");
Teraz na ostatnim etapie gdybym kliknij gdziekolwiek na stronie (czyli innego lokalizatora) kliknięcie zadziałałoby.
HTML dla obszaru wygląda następująco:
<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>
Dzięki obciążeniem dla patrząc na to. :-)
Czy możesz zamieścić swoje polecenia Selenium RC? Czy czekasz na załadowanie strony przed wysłaniem polecenia kliknięcia? –