Extended Selenium 2 (WebDriver) web testing library for Robot Framework
It leverages Selenium2Library internally to provide AngularJS synchronization support, to provide AngularJS locators support, to deliver keywords enhancement, and strive for a seamless migration from Selenium2Library.
ExtendedSelenium2Library runs tests in a real browser instance. It should work in most modern browsers and can be used with both Python and Jython interpreters.
More information about this library can be found in the Keyword Documentation.
Robot Framework and Cucumber Similarities
The recommended installation method is using pip:
pip install robotframework-extendedselenium2library
The main benefit of using
pip is that it automatically installs all
dependencies needed by the library. Other nice features are easy upgrading
and support for un-installation:
pip install --upgrade robotframework-extendedselenium2library pip uninstall robotframework-extendedselenium2library
Notice that using
--upgrade above updates both the library and all
its dependencies to the latest version. If you want, you can also install
a specific version or upgrade only the Selenium tool used by the library:
pip install robotframework-extendedselenium2library==x.x.x pip install --upgrade selenium pip install selenium==x.xx
If you are behind a proxy, you can use
--proxy command line option
https_proxy environment variables to
pip to use it. If you are behind an authenticating NTLM proxy,
you may want to consider installing CNTML to handle communicating with it.
For more information about
--proxy option and using pip with proxies
in general see:
If you do not have network connection or cannot make proxy to work, you need to resort to manual installation. This requires installing both the library and its dependencies yourself.
- Make sure you have Robot Framework installed.
- Download source distributions (
*.tar.gz) for the library and its dependencies:
- Download PGP signatures (
*.tar.gz.asc) for signed packages.
- Find each public key used to sign the package:
gpg --keyserver pgp.mit.edu --search-keys D1406DE7
- Select the number from the list to import the public key
- Verify the package against its PGP signature:
gpg --verify robotframework-extendedselenium2library-x.x.x.tar.gz.asc robotframework-extendedselenium2library-x.x.x.tar.gz
- Extract each source distribution to a temporary location.
- Go to each created directory from the command line and install each project using:
python setup.py install
If you are on Windows, and there are Windows installers available for certain projects, you can use them instead of source distributions. Just download 32bit or 64bit installer depending on your system, double-click it, and follow the instructions.
- Keyword documentation
- Python source code
- Python unit test
To write tests with Robot Framework and ExtendedSelenium2Library, ExtendedSelenium2Library must be imported into your Robot test suite.
*** Settings *** Library ExtendedSelenium2Library
See Robot Framework User Guide for more information.
More information about Robot Framework standard libraries and built-in tools can be found in the Robot Framework Documentation.
Building Keyword Documentation
The Keyword Documentation can be found online, if you need to generate the keyword documentation, run:
Run Unit Tests, and Test Coverage Report
Test the testing library, talking about dogfooding, let's run:
If you would like to contribute code to Extended Selenium2 Library project you can do so through GitHub by forking the repository and sending a pull request.
When submitting code, please make every effort to follow existing conventions and style in order to keep the code as readable as possible. Please also include appropriate test cases.
Before your code can be accepted into the project you must also sign the Extended Selenium2 Library CLA (Individual Contributor License Agreement).
That's it! Thank you for your contribution!
Copyright (c) 2015, 2016 Richard Huang.
This library is free software, licensed under: GNU Affero General Public License (AGPL-3.0).
Documentation and other similar content are provided under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.