selenium testing

43
UI Functional Testing with Selenium and Python

Upload: jason-myers

Post on 13-May-2015

809 views

Category:

Technology


1 download

DESCRIPTION

My Slides from my Functional UI Testing with Selenium Memphis Python Talk on 1/21/2013.

TRANSCRIPT

Page 1: Selenium testing

UI Functional Testingwith Selenium and Python

Page 2: Selenium testing
Page 3: Selenium testing

Ready for Deployment

Bro?

Page 4: Selenium testing
Page 5: Selenium testing
Page 6: Selenium testing
Page 7: Selenium testing
Page 8: Selenium testing

Wat!

Page 9: Selenium testing
Page 10: Selenium testing

Selenium

Page 11: Selenium testing

Selenium IDE Web Driver Server Grid

Page 12: Selenium testing

Selenium IDE Web Driver Server Grid

Firefox Plugin

Page 13: Selenium testing

Selenium IDE Web Driver Server Grid

Firefox Plugin

Javascript Based

Page 14: Selenium testing

Selenium IDE Web Driver Server Grid

Firefox Plugin

Javascript Based

DVR Style UI Testing

Page 15: Selenium testing

Selenium IDE Web Driver Server Grid

Firefox Plugin

Javascript Based

DVR Style UI Testing

Simple!

Page 16: Selenium testing

Selenium IDE Web Driver Server Grid

Firefox Plugin

Javascript Based

DVR Style UI Testing

Simplish...

Page 17: Selenium testing

Selenium IDE Web Driver Server Grid

Live Demo Failure here!

Page 18: Selenium testing

Selenium IDE Web Driver Server Grid

API

Page 19: Selenium testing

Selenium IDE Web Driver Server Grid

API

Available in many languages

Page 20: Selenium testing

Selenium IDE Web Driver Server Grid

API

Available in many languages

Supports many browser

Page 21: Selenium testing

Selenium IDE Web Driver Server Grid

API

Available in many languages

Supports many browser

More like traditional tests

Page 22: Selenium testing

Selenium IDE Web Driver Server Grid

Live Demo Failure here!

Page 23: Selenium testing

ID

driver.find_element_by_id("coolestWidgetEvah")

<div id="coolestWidgetEvah">...</div>

Page 24: Selenium testing

ID

XPath

driver.find_elements_by_xpath("//input")

<input type="text" name="example" />

Page 25: Selenium testing

ID

Name

XPath

driver.find_element_by_name("cheese")

<input name="cheese" type="text"/>

Page 26: Selenium testing

ID

Name

XPath

CSS

driver.find_element_by_css_selector("#food span.dairy.aged")

<div id="food"><span class="dairy aged">cheese</span>

</div>

Page 27: Selenium testing

ID

Name

XPath

TextCSS

driver.find_element_by_link_text("cheese")find_element_by_partial_link_text

<a href="http://www.google.com/search?q=cheese">cheese</a>

Page 28: Selenium testing
Page 29: Selenium testing
Page 30: Selenium testing

element.submit()

Page 31: Selenium testing

inputElement.send_keys("Cheese!")element.submit()

Page 32: Selenium testing

inputElement.send_keys("Cheese!")element.submit()

inputElement.click()

Page 33: Selenium testing

inputElement.send_keys("Cheese!")element.submit()

inputElement.click()inputElement.select_by_visible_text()

Page 34: Selenium testing

Selenium IDE Web Driver Server Grid

Live Demo Failure here!

Page 35: Selenium testing
Page 36: Selenium testing

Selenium IDE Web Driver Server Grid

Java based

Page 37: Selenium testing

Selenium IDE Web Driver Server Grid

Java based

Used as a proxy

Page 38: Selenium testing

Selenium IDE Web Driver Server Grid

Java based

Used as a proxy

A workaround to browser version needs

Page 39: Selenium testing

Selenium IDE Web Driver Server Grid

Parallel Test Execution

Page 40: Selenium testing

Selenium IDE Web Driver Server Grid

Parallel Test Execution

Test all the browsers

Page 41: Selenium testing

Selenium IDE Web Driver Server Grid

Parallel Test Execution

Test all the browsers

umm MS Azure

Page 42: Selenium testing

PageFactory and Page Objects Pattern