With Webdrive, Xpath is not getting recognized in IE but works fine with Selenium-1

37 views
Skip to first unread message

Subhabrata Pal

unread,
Aug 10, 2011, 8:11:18 AM8/10/11
to Selenium Users
Hi,

Thanks for ur time;

Following is the html code:

<HTML><BODY style="CURSOR: default" bottomMargin="0" leftMargin="0"
topMargin="0" marginhe ......


<A class="leftnavleaflink"
oncontextmenu='showContextMenu1("1_968ea86cae0f2e3b:-6f2e9642:1307ac9e728:-­
7e65");return
false;'
id="itemTextLink1_968ea86cae0f2e3b:-6f2e9642:1307ac9e728:-7e65"
onmouseover="return true;" title="Chart Only"
onclick='javascript:clickOnFolder("1_968ea86cae0f2e3b:-6f2e9642:1307ac9e728­:-7e65");'
target="mainFrame">Chart Only</A>

.... </TD></TR></TBODY></TABLE></BODY></HTML>

#########################################XXXXXXXXXXXXXXXXX#################­
#########
If I use webdriver then an error comes up saying 'Xpath not found' but
with Selenium-1 every thing works fine.

Following is my code:

WebDriver driver = new InternetExplorerDriver();
String baseUrl = "http://www.google.com";
sel = new WebDriverBackedSelenium(driver, baseUrl);
sel.open("http://dsflaslfjls.SplashLogin.jsp);
........
sel.click("//
A[@id='itemTextLink1_968ea86cae0f2e3b:-6f2e9642:1307ac9e728:-7e65']
");

Now this are the xpath I have used:

//A[@id=
'itemTextLink1_968ea86cae0f2e3b:-6f2e9642:1307ac9e728:-7e65']

//
A[contains(@id,'itemTextLink1_968ea86cae0f2e3b:-6f2e9642:1307ac9e728:-7e65')]

//
A[@onclick='javascript:clickOnFolder(\"1_968ea86cae0f2e3b:-6f2e9642:1307ac9­
e728:-7e65\");']

but non is working, throwing some error

Also if I use the id directly like =>
sel.click("itemTextLink1_968ea86cae0f2e3b:-6f2e9642:1307ac9e728:-7e65");
it starts working but this 'id' value is dynamic..so cannot use them.

####################################XXXXXXXXXXXXXXXXXXXXXXXXXXXX###########­
##
Error:


FAILED CONFIGURATION: @BeforeMethod setUp
com.thoughtworks.selenium.SeleniumException: Element //
A[@id='itemTextLink1_968ea86cae0f2e3b:-6f2e9642:1307ac9e728:-7e65']
not found
at
org.openqa.selenium.internal.seleniumemulation.ElementFinder.findElement(El­
ementFinder.java:
98)
at
org.openqa.selenium.internal.seleniumemulation.Click.handleSeleneseCommand(­
Click.java:
36)
at
org.openqa.selenium.internal.seleniumemulation.Click.handleSeleneseCommand(­
Click.java:
1)
at
org.openqa.selenium.internal.seleniumemulation.SeleneseCommand.apply(Selene­
seCommand.java:
32)
at
org.openqa.selenium.internal.seleniumemulation.Timer.run(Timer.java:
38)
at
org.openqa.selenium.WebDriverCommandProcessor.execute(WebDriverCommandProce­
ssor.java:
170)
at
org.openqa.selenium.WebDriverCommandProcessor.doCommand(WebDriverCommandPro­
cessor.java:
100)
at
com.thoughtworks.selenium.DefaultSelenium.click(DefaultSelenium.java:
167)
at BarCharts.setUp(BarCharts.java:53)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown
Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHel­
per.java:
81)
at
org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:
525)
at
org.testng.internal.Invoker.invokeConfigurations(Invoker.java:202)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:613)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:
842)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:
1166)
at
org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.jav­
a:
125)
at
org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:
109)
at org.testng.TestRunner.runWorkers(TestRunner.java:1172)
at org.testng.TestRunner.privateRun(TestRunner.java:757)
at org.testng.TestRunner.run(TestRunner.java:608)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:
329)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:291)
at org.testng.SuiteRunner.run(SuiteRunner.java:240)
at
org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:
86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1158)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1083)
at org.testng.TestNG.run(TestNG.java:999)
at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:111)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:
203)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:174)
Caused by: org.openqa.selenium.NoSuchElementException: Cannot find an
element with the xpath: //
A[@id='itemTextLink1_968ea86cae0f2e3b:-6f2e9642:1307ac9e728:-7e65']
For documentation on this error, please visit:
http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: '2.3.0', revision: '13158', time: '2011-08-01
18:13:47'
System info: os.name: 'Windows XP', os.arch: 'x86', os.version:
'5.1',
java.version: '1.6.0_14'
Driver info: driver.version: unknown
at
org.openqa.selenium.internal.seleniumemulation.ElementFinder.xpathWizardry(­
ElementFinder.java:
150)
at
org.openqa.selenium.internal.seleniumemulation.ElementFinder.findElementDir­
ectlyIfNecessary(ElementFinder.java:
122)
at
org.openqa.selenium.internal.seleniumemulation.ElementFinder.findElement(El­
ementFinder.java:
92)
... 35 more



Regards
Subha
Reply all
Reply to author
Forward
0 new messages