Mon 11 Jan 2010
This tutorial is to show how to use the .NET Selenium 2 with dynamic languages that run on the .NET Common Language Runtime. This tutorial uses IronPython.
This tutorial will not be using the Remote Driver and it will be using the InternetExplorerDriver as this is the only complete browser at the moment that doesn't need to be built from the Repository.
- Lets start by creating a directory that will hold the IronPython script. Lets call it SeleniumTwoExamplePython
- Copy the WebDriver.Common.dll, WebDriver.IE.dll and InternetExplorerDriver.dll files into the newly created directory in the step above. Make sure the version of InternetExplorerDriver.dll matches the architecture of your operating system.
We are now ready to have our write our first test!Copy the code below into a Python IDE or Notepad. Save the file as testgoogle.py
import sys import unittest try: import clr clr.AddReference("WebDriver.Common.dll") clr.AddReference("WebDriver.IE.dll") from OpenQA.Selenium import * from OpenQA.Selenium.IE import * except ImportError: sys.exit("This needs to be run in IronPython") class TestGoogle(unittest.TestCase): def setUp(self): ''' Start the driver ''' self.driver = InternetExplorerDriver() def testGoogleSearchForTheAutomatedTester(self): ''' Test to have a load Google and the search for The Automated Tester ''' #Navigate to the site self.driver.Navigate().GoToUrl("http://www.google.com/") #Create an object for an element on the page queryBox = self.driver.FindElement(By.Name("q")) queryBox.SendKeys("The Automated Tester") #Submit the form queryBox.Submit() #Check the title of the new page has The Automated Tester in the Title self.assertTrue("The Automated Tester" in self.driver.Title) def tearDown(self): ''' Clean up the driver ''' self.driver.Quit() if __name__ == '__main__': unittest.main()
- Now you have a test that launch a browser and do a search on Google for you. In a command prompt run ipy testgoogle.py
Now you have created your first test that uses WebDriver.