I recorded an action using the Selenium IDE and used the File->Export Test Cases as Python 2 (Remote Control) format.
I am using Selenium RC 2.3.0
I then ran the script from command prompt but it throws an exception.
The exported Python 2 RC code is:
from selenium import selenium
import unittest, time, re
class login(unittest.TestCase):
def setUp(self):
self.verificationErrors = []
self.selenium = selenium("localhost", 4444, "*chrome", "http://testServer1/")
self.selenium.start()
def test_login(self):
sel = self.selenium
sel.open("/WebAccess/login.html")
sel.type("id=LoginID", "Administrator")
sel.type("id=Password", "Administrator")
sel.click("id=login")
sel.wait_for_page_to_load("30000")
sel.click("link=Home") # This is where it fails.
def tearDown(self):
self.selenium.stop()
self.assertEqual([], self.verificationErrors)
if __name__ == "__main__":
unittest.main()
At this line sel.click("link=Home") it fails with the exception
======================================================================
ERROR: test_login (__main__.login)
----------------------------------------------------------------------
Traceback (most recent call last):
File "C:\Documents and Settings\User\Desktop\login.py", line 16, in test_log
in
sel.click("link=Home")
File "C:\Python27\lib\selenium\selenium.py", line 290, in click
self.do_command("click", [locator,])
File "C:\Python27\lib\selenium\selenium.py", line 217, in do_command
raise Exception, data
Exception: ERROR: Element link=Home not found
----------------------------------------------------------------------
I even tried increasing the 30000 to 60000 but still no help. I can see the page is loaded fully and waiting for a while because of the higher timeout. However when executing this link=Home it fails.
The HTML code is:
<div class="links nopreview">
<span><a class="csiAction" href="/WebAccess/home.html#URL=centric://REFLECTION/INSTANCE/_CS_Data/null">Home</a></span>
<span> • </span>
<span><span><a class="csiAction" href="/WebAccess/home.html#URL=centric://SITEADMIN/_CS_Site">Setup</a>
</span><span> • </span>
</span><span><a title="Sign Out" class="csiAction csiActionLink">Sign Out</a></span>
</div>
The recorded actions using IDE are:
<tr>
<td>open</td>
<td>/WebAccess/login.html</td>
<td></td>
</tr>
<tr>
<td>type</td>
<td>id=LoginID</td>
<td>Administrator</td>
</tr>
<tr>
<td>type</td>
<td>id=Password</td>
<td>Administrator</td>
</tr>
<tr>
<td>clickAndWait</td>
<td>id=login</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>link=Home</td>
<td></td>
</tr>
Try using an XPath such as: