Golem is a complete test automation tool for web browser testing. It creates powerful, robust and maintainable test suites, it's easy to learn even without a lot of programming knowledge. It is based on Selenium Webdriver and it can be extended using Python.
It can:
- Use the Page Object pattern
- Write tests with multi data sets (data-driven)
- Run tests in parallel.
- Test APIs
- Run tests remotely (Selenium Grid or a cloud testing provider)
- It can be executed from Jenkins or any other CI tool
It has:
- A complete GUI module (a web application) to write and execute tests
- A reporting engine and a web reports module
- An interactive console
Please note: Golem is still in beta. Read the changelog before upgrading.
Test Builder
Test are Python Code
Report Dashboard
Execution Report
Test Execution Detail
Golem works with Python 3.5+
pip install golem-framework
Read the full installation guide here: https://golem-framework.readthedocs.io/en/latest/installation.html
Create a test directory anywhere in your machine
golem-admin createdirectory <test_directory>
Download the latest webdriver executables
cd <test_directory>
webdriver-manager update
Webdriver executables are downloaded to the drivers folder. For more information check this page of the documentation.
Start the Web Module
golem gui
The Web Module can be accessed at http://localhost:5000/
By default, the following user is available: username: admin / password: admin
Run a Test From Console
golem run <project> <test>
golem run <project> <suite>
Args:
- -b | --browsers: a list of browsers, by default use defined in settings.json or Chrome
- -p | --processes: run in parallel, default 1 (not parallel)
- -e | --environments: a list of environments, the default is none
- -t | --tags: filter tests by tags
https://golem-framework.readthedocs.io/
If you have any question please use the Gitter channel.
If you found a bug or want to contribute code please read the contributing guide.
Logo based on "to believe" by Shannon E Thomas, CC BY 4.0