Till now I have been writing all my post in java, However after spending almost an year in python, Why not I write post in python. So here is my first post about how to use WebDriver in Python. If you are reading this please don't forget to put the comment.
I have used two frameworks for writing Webdriver tests in Python
Splinter:
Splinter is basically a wrapper around the Webdriver API, which ease you to write code as compared to webdriver.
For example if you have to fill a form with web driver, your code might look
elem = browser.find_element.by_name('username')
elem.send_keys('janedoe')
However, if you use splinter, it will look like this
browser.fill('username', 'janedoe')
Better, Aint't it ?
Nose:
Nose is an unit testing framework extended from python unittest. As I told you it's extended from unittest which mean it provides all the features provided by unittest plus few more
Enough of theory, let's see the code.
I have used two frameworks for writing Webdriver tests in Python
Splinter:
Splinter is basically a wrapper around the Webdriver API, which ease you to write code as compared to webdriver.
For example if you have to fill a form with web driver, your code might look
elem = browser.find_element.by_name('username')
elem.send_keys('janedoe')
However, if you use splinter, it will look like this
browser.fill('username', 'janedoe')
Better, Aint't it ?
Nose:
Nose is an unit testing framework extended from python unittest. As I told you it's extended from unittest which mean it provides all the features provided by unittest plus few more
Enough of theory, let's see the code.
from nose.tools import assert_true __author__ = 'Gaurang_Shah1' import unittest import splinter class GoogleTest(unittest.TestCase): def setUp(self): self.browser = splinter.Browser() def tearDown(self): self.browser.quit() def test_google_search(self): google = GooglePage(self.browser) google.search('splinter - python acceptance testing for web applications').verify_text_on_page(''splinter.cobrateam.info') class GooglePage(object): def __init__(self, browser): self.browser = browser self.browser.visit("http://google.co.in") def search(self, keyword): self.browser.fill('q', keyword) self.browser.find_by_name('btnG').click() return self def verify_text_on_page(self, text): assert_true(self.browser.is_text_present('splinter.cobrateam.info'))