Index
A
- 3 A's
- about / The unittest library
- arrange / The unittest library
- act / The unittest library
- assert / The unittest library
- accept() method / Methods of the Alert class
- actions_chains class, methods
- click(on_element=None) / Methods for performing keyboard and mouse actions
- click_and_hold(on_element=None) / Methods for performing keyboard and mouse actions
- double_click(on_element=None) / Methods for performing keyboard and mouse actions
- drag_and_drop(source, target) / Methods for performing keyboard and mouse actions
- key_down(value, element=None) / Methods for performing keyboard and mouse actions
- key_up(value, element=None) / Methods for performing keyboard and mouse actions
- move_to_element(to_element) / Methods for performing keyboard and mouse actions
- perform() / Methods for performing keyboard and mouse actions
- release(on_element=None) / Methods for performing keyboard and mouse actions
- send_keys(keys_to_send) / Methods for performing keyboard and mouse actions
- send_keys_to_element(element, keys_to_send) / Methods for performing keyboard and mouse actions
- add_cookie(cookie_dict) method / Managing cookies
- Alert class
- about / Understanding the Alert class
- properties / Properties of the Alert class
- methods / Methods of the Alert class
- browser navigation, automating / Automating browser navigation
- Alert class, methods
- accept() / Methods of the Alert class
- dismiss() / Methods of the Alert class
- send_keys(*value) / Methods of the Alert class
- Alert class, properties
- alerts
- waiting for / Waiting for alerts
- all_selected_options property / Properties of the Select class, Methods of the Select class
- Android
- testing on / Testing on Android
- test, writing for / Writing a test for Android
- Android Debug Bridge (adb) / Writing a test for Android
- Android SDK
- setting up / Setting up Android SDK
- Appium
- about / Introducing Appium
- Native apps / Introducing Appium
- Mobile web apps / Introducing Appium
- Hybrid apps / Introducing Appium
- prerequisites / Prerequisites for Appium
- installing / Installing Appium
- Appium, prerequisites
- Xcode, setting up for iOS / Setting up Xcode for iOS
- Android SDK, setting up / Setting up Android SDK
- Appium Python client package, setting up / Setting up the Appium Python client package
- Appium Inspector
- about / Appium Inspector
- Appium Python client package
- assertions
- about / Assertions
B
- back() method / Methods of the WebDriver class, Automating browser navigation
- BasePage object, page object pattern / The BasePage object
- BDD
- about / Behavior-Driven Development
- URL / Behavior-Driven Development
- Behave
- URL / Behavior-Driven Development, Installing Behave
- installing / Installing Behave
- feature, writing / Writing the first feature in Behave
- step definition file, implementing for feature / Implementing a step definition file for the feature
- environment configurations, creating / Creating environment configurations
- features, running / Running features
- scenario outline, using / Using a scenario outline
- browser navigation, Alert class
- automating / Automating browser navigation
- back() method / Automating browser navigation
- forward() method / Automating browser navigation
- refresh() method / Automating browser navigation
C
- checkboxes
- Chrome
- support, adding for / Adding support for Chrome
- ChromeDriver
- URL / Setting up Google Chrome
- Chrome node
- adding / Adding a Chrome node
- CI
- with Jenkins / CI with Jenkins
- class level startUp() method / Class-level setUp() and tearDown() methods
- class name
- used, for finding elemets / Finding elements using the class name
- clear() method / Methods of the WebElement class
- click() method / Methods of the WebElement class
- click(on_element=None) method / Methods for performing keyboard and mouse actions
- click_and_hold(on_element=None) method / Methods for performing keyboard and mouse actions
- close() method / Methods of the WebDriver class
- cloud
- tests, running / Running tests in a cloud
- code
- cleaning / Cleaning up the code
- Comma separated values (CSV) / Using external data sources for data-driven tests
- conditions
- cookies
- managing / Managing cookies
- add_cookie(cookie_dict) method / Managing cookies
- delete_all_cookies() method / Managing cookies
- delete_cookie(name) method / Managing cookies
- get_cookie(name) method / Managing cookies
- get_cookies() method / Managing cookies
- cross-browser support
- about / Cross-browser support
- Internet Explorer, setting up / Setting up Internet Explorer
- Google Chrome, setting up / Setting up Google Chrome
- CSS selectors
- used, for finding elemets / Finding elements using CSS selectors
- Cucumber
- current_url property / Properties of the WebDriver class
- current_window_handle property / Properties of the WebDriver class
- custom wait conditions
- implementing / Implementing custom wait conditions
D
- data-driven test
- about / Data-driven testing
- ddt used / Using ddt for data-driven tests
- creating, with ddt in unittest / Creating a simple data-driven test with ddt in unittest
- external data sources, using / Using external data sources for data-driven tests
- ddt
- used, for data-driven test / Using ddt for data-driven tests
- installing / Installing ddt
- URL / Installing ddt
- ddt in unittest
- data-driven test, creating with / Creating a simple data-driven test with ddt in unittest
- delete_all_cookies() method / Managing cookies
- delete_cookie(name) method / Managing cookies
- deselect_all() method / Methods of the Select class
- deselect_by_index(index) method / Methods of the Select class
- deselect_by_value(value) method / Methods of the Select class
- deselect_by_visible_text(text) method / Methods of the Select class
- developer tools
- used, for finding locators / Using developer tools to find locators
- dismiss() method / Methods of the Alert class
- Don't repeat yourself (DRY) / The page objects pattern
- double_click(on_element=None) method / Methods for performing keyboard and mouse actions
- double_click method / The double_click method
- Down() method / Class-level setUp() and tearDown() methods
- drag_and_drop(source, target) method / Methods for performing keyboard and mouse actions
- drag_and_drop method / The drag_and_drop method
- dropdowns
- working with / Working with dropdowns and lists
E
- Eclipse
- URL / The PyDev Eclipse plugin
- element
- display, checking / Checking whether the element is displayed and enabled
- waiting, to be enabled / Waiting for an element to be enabled
- element attribute value
- finding / Finding the element attribute value
- elements
- inspecting with Firefox, Firebug add-in used / Inspecting pages and elements with Firefox using the Firebug add-in
- inspecting, Google Chrome used / Inspecting pages and elements with Google Chrome
- inspecting, Internet Explorer used / Inspecting pages and elements with Internet Explorer
- elements, finding
- Selenium WebDriver used / Finding elements with Selenium WebDriver
- ID attribute used / Finding elements using the ID attribute
- name attribute used / Finding elements using the name attribute
- class name used / Finding elements using the class name
- tag name used / Finding elements using the tag name
- XPath used / Finding elements using XPath
- CSS selectors used / Finding elements using CSS selectors
- element_to_be_clickable(locator) condition / The expected condition class
- element_to_be_selected(element) condition / The expected condition class
- execute_async_script(script, *args) method / Executing JavaScript
- execute_script(script, *args) method / Executing JavaScript
- ExpectedCondition class
- about / Using explicit wait, The expected condition class
- element_to_be_clickable(locator) / The expected condition class
- element_to_be_selected(element) / The expected condition class
- invisibility_of_element_located(locator) / The expected condition class
- presence_of_all_elements_located(locator) / The expected condition class
- presence_of_element_located(locator) / The expected condition class
- text_to_be_present_in_element(locator, text_) / The expected condition class
- title_contains(title) / The expected condition class
- title_is(title) / The expected condition class
- visibility_of(element) / The expected condition class
- visibility_of_element_located(locator) / The expected condition class
- element, waiting to be enabled / Waiting for an element to be enabled
- alerts, waiting for / Waiting for alerts
- explicit wait
- using / Using explicit wait
- external data sources, data-driven test
- used / Using external data sources for data-driven tests
- values, reading from CSV / Reading values from CSV
- values, reading from Excel / Reading values from Excel
F
- features, Behave
- writing / Writing the first feature in Behave
- step definition file, implementing / Implementing a step definition file for the feature
- environment configurations, creating / Creating environment configurations
- running / Running features
- scenario outline, using / Using a scenario outline
- find methods
- used, for merging tests / Putting all the tests together using find methods
- find_elements_by methods
- find_elements_by_id(id_) / Using the find methods
- find_elements_by_name(name) / Using the find methods
- find_elements_by_class_name(name) / Using the find methods
- find_elements_by_tag_name(name) / Using the find methods
- find_elements_by_xpath(xpath) / Using the find methods
- find_elements_by_css_selector(css_selector) / Using the find methods
- find_elements_by_link_text(text) / Using the find methods
- find_elements_by_partial_link_text(link_text) / Using the find methods
- find_element_by methods
- about / Using the find methods
- find_element_by_id(id) / Using the find methods
- find_element_by_name(name) / Using the find methods
- find_element_by_class_name(name) / Using the find methods
- find_element_by_tag_name(name) / Using the find methods
- find_element_by_xpath(xpath) / Using the find methods
- find_element_by_css_selector(css_selector) / Using the find methods
- find_element_by_link_text(link_text) / Using the find methods
- find_element_by_partial_link_text(link_text) / Using the find methods
- Firebug add-in
- used, for inspecting pages with Firefox / Inspecting pages and elements with Firefox using the Firebug add-in
- used, for inspecting elements with Firefox / Inspecting pages and elements with Firefox using the Firebug add-in
- URL / Inspecting pages and elements with Firefox using the Firebug add-in
- Firefox node
- adding / Adding a Firefox node
- first_selected_option property / Properties of the Select class
- forms
- forward() method / Methods of the WebDriver class, Automating browser navigation
G
- get(url) method / Methods of the WebDriver class
- get_attribute() method / Finding the element attribute value
- get_attribute(name) method / Methods of the WebElement class
- get_cookie(name) method / Managing cookies
- get_cookies() method / Managing cookies
- get_screenshot_as_base64() method / Capturing screenshots of failures
- Gherkin
- Given / Writing the first feature in Behave
- Given, When, Then (GWT) format / Writing the first feature in Behave
- Google Chrome
- setting up / Setting up Google Chrome
- used, for inspecting elements / Inspecting pages and elements with Google Chrome
- used, for inspecting pages / Inspecting pages and elements with Google Chrome
- Graphical User Interface (GUI)
- about / Elements of HTML forms
- Grid
- tests, running / Running tests in Grid
H
- HTML forms
- about / Elements of HTML forms
- HTML test report
- about / Generating the HTML test report
- hub
- Selenium server, launching as / Launching Selenium server as a hub
- Hybrid apps
- about / Introducing Appium
I
- ID attribute
- used, for finding elements / Finding elements using the ID attribute
- IDE
- selecting / Selecting an IDE
- IDE, selecting
- PyCharm / PyCharm
- PyDev Eclipse plugin / The PyDev Eclipse plugin
- PyScripter / PyScripter
- IE node
- adding / Adding an IE node
- implicitly_wait(time_to_wait) method / Methods of the WebDriver class
- implicit wait
- using / Using implicit wait
- installers
- URL / Installing Python
- Interactions API
- Internet Explorer
- setting up / Setting up Internet Explorer
- URL / Setting up Internet Explorer
- used, for inspecting pages / Inspecting pages and elements with Internet Explorer
- used, for inspecting elements / Inspecting pages and elements with Internet Explorer
- Internet Explorer (IE)
- support, adding for / Adding support for Internet Explorer
- InternetExplorerDriver
- invisibility_of_element_located(locator) condition / The expected condition class
- iOS
- testing on / Testing on iOS
- test, writing for / Writing a test for iOS
- is_displayed() method / Methods of the WebElement class, Checking whether the element is displayed and enabled
- is_enabled() method / Methods of the WebElement class
- is_selected() method / Methods of the WebElement class
- using / Using the is_selected() method
J
- JavaScript
- executing / Executing JavaScript
- execute_async_script(script, *args) method / Executing JavaScript
- execute_script(script, *args) method / Executing JavaScript
- Jenkins
- about / CI with Jenkins
- preparing for / Preparing for Jenkins
- setting up / Setting up Jenkins
- CI server, URL / Setting up Jenkins
K
- keyboard actions
- performing / Methods for performing keyboard and mouse actions
- about / Keyboard actions
- key_down(value, element=None) method / Methods for performing keyboard and mouse actions
- key_up(value, element=None) method / Methods for performing keyboard and mouse actions
L
- Lettuce
- links
- finding / Finding links
- finding, partial text used / Finding links with partial text
- lists
- working with / Working with dropdowns and lists
- locators
- finding, developer tools used / Using developer tools to find locators
M
- Mac OS X
- with Safari / Mac OS X with Safari
- Magento
- maximize_window() method / Methods of the WebDriver class
- Mobile web apps
- about / Introducing Appium
- mouse movement
- performing / Methods for performing keyboard and mouse actions
- about / The mouse movement
- double_click method / The double_click method
- drag_and_drop method / The drag_and_drop method
- move_to_element(to_element) method / Methods for performing keyboard and mouse actions
N
- name attribute
- used, for finding elemets / Finding elements using the name attribute
- name property / Properties of the WebDriver class
- Native apps
- about / Introducing Appium
- nodes
- adding / Adding nodes
- IE node, adding / Adding an IE node
- Firefox node, adding / Adding a Firefox node
- Chrome node, adding / Adding a Chrome node
- nose framework / The unittest library
O
- options property / Properties of the Select class
- orientation property / Properties of the WebDriver class
P
- page object pattern
- about / The page objects pattern
- tests, organizing / Organizing tests
- BasePage object / The BasePage object
- implementing / Implementing page objects
- test, creating with / Creating a test with page objects
- pages
- inspecting with Firefox, Firebug add-in used / Inspecting pages and elements with Firefox using the Firebug add-in
- inspecting, Google Chrome used / Inspecting pages and elements with Google Chrome
- inspecting, Internet Explorer used / Inspecting pages and elements with Internet Explorer
- page_source property / Properties of the WebDriver class
- partial text
- used, for finding links / Finding links with partial text
- perform() method / Methods for performing keyboard and mouse actions
- pip installer tool
- pop-up windows
- working with / Working with alerts and pop-up windows
- handling / Handling pop-up windows
- Portable Network Graphics (PNG) format / Capturing screenshots of failures
- presence_of_all_elements_located(locator) condition / The expected condition class
- presence_of_element_located(locator) condition / The expected condition class
- properties and methods
- PyCharm
- about / PyCharm
- URL / PyCharm
- setting up / Setting up PyCharm
- PyCharm Community Edition
- URL / Setting up PyCharm
- PyDev
- URL / The PyDev Eclipse plugin
- PyDev Eclipse plugin
- about / The PyDev Eclipse plugin
- PyScripter
- about / PyScripter
- pytest framework
- URL / The unittest library
- Python
- installing / Installing Python
- Pyvnc2swf
Q
- quit() method / Methods of the WebDriver class
R
- radio buttons
- refresh() method / Methods of the WebDriver class, Automating browser navigation
- release(on_element=None) method / Methods for performing keyboard and mouse actions
- RemoteWebDriver class / The Selenium standalone server
S
- Safari
- Mac OS X with / Mac OS X with Safari
- Sauce Labs
- used, for running tests / Using Sauce Labs
- URL / Using Sauce Labs
- using / Using Sauce Labs
- Save_screenshot(filename) method / Capturing screenshots of failures
- screenshot
- of failures, capturing / Capturing screenshots of failures
- Save_screenshot(filename) method / Capturing screenshots of failures
- get_screenshot_as_base64() method / Capturing screenshots of failures
- get_screenshot_as_png() method / Capturing screenshots of failures
- Select class
- about / Understanding the Select class
- properties / Properties of the Select class
- methods / Methods of the Select class
- Select class, methods
- deselect_all() / Methods of the Select class
- deselect_by_index(index) / Methods of the Select class
- deselect_by_value(value) / Methods of the Select class
- deselect_by_visible_text(text) / Methods of the Select class
- select_by_index(index) / Methods of the Select class
- select_by_value(value) / Methods of the Select class
- select_by_visible_text(text) / Methods of the Select class
- Select class, properties
- all_selected_options / Properties of the Select class
- first_selected_option / Properties of the Select class
- options / Properties of the Select class
- select_by_index(index) method / Methods of the Select class
- select_by_value(value) method / Methods of the Select class
- select_by_visible_text(text) method / Methods of the Select class
- Selenium documentation
- Selenium Grid
- about / Selenium Grid
- Selenium server, launching as hub / Launching Selenium server as a hub
- nodes, adding / Adding nodes
- Mac OS X, with Safari / Mac OS X with Safari
- Selenium package
- installing / Installing the Selenium package
- Selenium server
- launching, as hub / Launching Selenium server as a hub
- Selenium standalone server
- about / The Selenium standalone server
- downloading / Downloading the Selenium standalone server
- URL / Downloading the Selenium standalone server
- launching / Launching the Selenium standalone server
- test, running on / Running a test on the Selenium standalone server
- Selenium WebDriver
- used, for finding elements / Finding elements with Selenium WebDriver
- Selenium WebDriver Python documentation
- Selenium with Python
- first steps / Taking your first steps with Selenium and Python
- Selenium with Python, prerequisites
- about / Preparing your machine
- Python, installing / Installing Python
- Selenium package, installing / Installing the Selenium package
- Selenium WebDriver Python documentation, browsing / Browsing the Selenium WebDriver Python documentation
- Integrated Development Environment (IDE), selecting / Selecting an IDE
- PyCharm, setting up / Setting up PyCharm
- send_keys() method
- send_keys(*value) method / Methods of the WebElement class, Methods of the Alert class
- send_keys(keys_to_send) method / Methods for performing keyboard and mouse actions
- send_keys_to_element(element, keys_to_send) method / Methods for performing keyboard and mouse actions
- setUp() method / The setUp() method
- set_page_load_timeout(time_to_wait) method / Methods of the WebDriver class
- set_script_timeout(time_to_wait) method / Methods of the WebDriver class
- Shockwave Flash (SWF) / Recording a video of the test run
- size property / Properties of the WebElement class
- Source Control Management (SCM) / Setting up Jenkins
- startUp() method / Class-level setUp() and tearDown() methods
- submit() method / Methods of the WebElement class
- Switch.to_alert()Switch.to_alert() method / Methods of the WebDriver class
- switch_to.active_element() method / Methods of the WebDriver class
- switch_to.default_content() method / Methods of the WebDriver class
- switch_to.frame(frame_reference) method / Methods of the WebDriver class
- switch_to.window(window_name) method / Methods of the WebDriver class
T
- tag name
- used, for finding elemets / Finding elements using the tag name
- tag_name property / Properties of the WebElement class
- test
- running / Running the test
- another test, adding / Adding another test
- writing, for iOS / Writing a test for iOS
- writing, for Android / Writing a test for Android
- test, Selenium standalone server
- running / Running a test on the Selenium standalone server
- support, adding for Internet Explorer (IE) / Adding support for Internet Explorer
- support, adding for Chrome / Adding support for Chrome
- test case / The unittest library
- TestCase class
- about / The TestCase class
- setUp() method / The setUp() method
- tests, writing / Writing tests
- code, cleaning / Cleaning up the code
- test, running / Running the test
- another test, adding / Adding another test
- test fixture / The unittest library
- test report / The unittest library
- test runner / The unittest library
- tests
- writing / Writing tests
- running, in Grid / Running tests in Grid
- running, in cloud / Running tests in a cloud
- running, Sauce Labs used / Using Sauce Labs
- tests, page object pattern
- organizing / Organizing tests
- creating / Creating a test with page objects
- test suites / The unittest library
- about / Test suites
- textboxes
- text property / Properties of the WebElement class, Properties of the Alert class
- Then / Writing the first feature in Behave
- TightVNC
- title property / Properties of the WebDriver class
- title_contains(title) condition / The expected condition class
- title_is(title) condition / The expected condition class
U
- unittest documentation
- URL / The unittest library
- unittest library
- about / The unittest library
- test fixture / The unittest library
- test case / The unittest library
- test suite / The unittest library
- test runner / The unittest library
- test report / The unittest library
- TestCase class / The TestCase class
- class level startUp() method / Class-level setUp() and tearDown() methods
- Down() method / Class-level setUp() and tearDown() methods
- assertions / Assertions
V
- values, data-driven test
- reading, from CSV / Reading values from CSV
- reading, from Excel / Reading values from Excel
- value_of_css_property(property_name) method / Methods of the WebElement class
- video
- of test run, recording / Recording a video of the test run
- Vine VNC server
- visibility_of(element) condition / The expected condition class
- visibility_of_element_located(locator) condition / The expected condition class
W
- WebDriver class
- about / Understanding the WebDriver class
- properties / Properties of the WebDriver class
- methods / Methods of the WebDriver class
- methods, for executing JavaScript code / Executing JavaScript
- methods, for capturing screenshot / Capturing screenshots of failures
- WebDriver class, methods
- back() / Methods of the WebDriver class
- close() / Methods of the WebDriver class
- forward() / Methods of the WebDriver class
- get(url) / Methods of the WebDriver class
- maximize_window() / Methods of the WebDriver class
- quit() / Methods of the WebDriver class
- refresh() / Methods of the WebDriver class
- switch_to.active_element() / Methods of the WebDriver class
- Switch.to_alert() / Methods of the WebDriver class
- switch_to.default_content() / Methods of the WebDriver class
- switch_to.frame(frame_reference) / Methods of the WebDriver class
- switch_to.window(window_name) / Methods of the WebDriver class
- implicitly_wait(time_to_wait) / Methods of the WebDriver class
- set_page_load_timeout(time_to_wait) / Methods of the WebDriver class
- set_script_timeout(time_to_wait) / Methods of the WebDriver class
- WebDriver class, properties
- current_url / Properties of the WebDriver class
- current_window_handle / Properties of the WebDriver class
- name / Properties of the WebDriver class
- orientation / Properties of the WebDriver class
- page_source / Properties of the WebDriver class
- title / Properties of the WebDriver class
- window_handles / Properties of the WebDriver class
- WebElement class
- about / Understanding the WebElement class
- properties / Properties of the WebElement class
- methods / Methods of the WebElement class
- WebElement class, methods
- clear() / Methods of the WebElement class
- click() / Methods of the WebElement class
- get_attribute(name) / Methods of the WebElement class
- is_displayed() / Methods of the WebElement class
- is_enabled() / Methods of the WebElement class
- is_selected() / Methods of the WebElement class
- send_keys(*value) / Methods of the WebElement class
- submit() / Methods of the WebElement class
- value_of_css_property(property_name) / Methods of the WebElement class
- WebElement class, properties
- When / Writing the first feature in Behave
- window_handles property / Properties of the WebDriver class
X
- Xcode
- URL / Setting up Xcode for iOS
- setting up, for iOS / Setting up Xcode for iOS
- xmlrunner
- URL / Preparing for Jenkins
- XPath
- used, for finding elemets / Finding elements using XPath
- xUnit asserts methods / Assertions
- xUnit framework / The unittest library