/golem

A complete test automation tool

Primary LanguagePythonMIT LicenseMIT

Golem - Test Automation

Build Status Documentation Status Join the chat at https://gitter.im/golem-framework/golem

Intro

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.


Contents

Screen Captures

Test Builder

Test are Python Code

Report Dashboard

Execution Report

Test Execution Detail

Installation

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

Quick Start

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

Documentation

https://golem-framework.readthedocs.io/

Questions

If you have any question please use the Gitter channel.

Contributing

If you found a bug or want to contribute code please read the contributing guide.

License

MIT

Credits

Logo based on "to believe" by Shannon E Thomas, CC BY 4.0