UI tests automation utilities library.
The aim is to easy the development of tests for applications that follow a known set of technologies:
- Angular JS
- Angular JS Material
- Google OAuth2
- Chrome Browser
This library depends, and sometime implements useful abstractions, on the following libraries:
We designed it overcome some challenges of developing BDD tests considering the technologies below:
You can install Parakeet using the package manager PIP.
pip install parakeet -U
Parakeet reads a config.yaml file that can be used to parameterize it's behaviours.
It need to be saved on the home directory of the operation system running the tests.
Parameter | Description | Values | Default |
browser | This parameter define which browser will be used to run the tests. Today we only support the Chrome Browser | chrome | chrome |
headless | Define if the tests will open the browser or perform the tests with graphical mode off. It is very useful in developer mode, when the developer need to debug or understand some issues. Case True, doesn't open the browser. | True False |
False |
default_implicitly_wait_seconds | Setup time in seconds that the tests will wait until some component are ready to be used. | Integer Number | 30 |
default_poll_frequency_seconds | Interval time during the default_implicitly_wait_seconds, that the application will wait until check if the component are ready to be used. | Integer Number | 2 |
log_level | You can define the level of the application logs. | INFO WARN DEBUG TRACE ERROR |
INFO |
log_name | You can setup the name of the logs that you want to see. For example if you want to see everyone you don't need to setup this field. But you can setup this parameter to just see the Parakeet logs or just the loggers that you application are logging. | Ex.: google.tests.e2e | Empty |
retry | Some resources on the application use the retry feature. This item give to the user the ability to setup how many times the test will try to click on some button for example. | Integer Number | 1 |
login_provider | The parakeet provide to you an abrastraction mechanism in order to login in the Google account (if your application have something like it). Thinking of it, we created a parameter where the user can setup the version of this mechanism. | google_oauth | google_oauth google_oauth_gapi2 |
window_size: width: 9999 height: 9999 |
Setup the size of the screen where the tests will be performed. | Integer Number | Empty |
users: file: 'users.yaml' |
The parakeet provide a way to setup which users you will use on your tests. So this file can be setup here | File Path | Empty |
home_url | The home url used to access the application that will be tested. | http://localhost | Empty |
system_page_title | The system page title, this is used in order to check if the user are logged on the application. That's the way we check if the test already passed the login phase. | Text defined on the tag title on the application | Empty |
(TODO - create/maintain example files and reference it here)
Parakeet reads a users.yaml file that can be used to store users credentials that will be used in the tests..
It need to be saved on the home directory of the operation system running the tests.
(TODO - create/maintain example files and reference it here)
In order to bootstrap and start using this library in your Lettuce tests, you should initialize it in the "terrain" file.
(TODO - create/maintain example files and reference it here)
Github suggested it.
We found our "logo" image here: Free Vector Graphics by www.vecteezy.com