Vladimir12 / golem

A complete test automation framework

Home Page:http://golem-framework.readthedocs.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Golem - Test Automation Framework

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

Intro

Automate end to end tests in minutes, not hours.

Golem is a complete test automation tool and framework for end-to-end 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 as Pure Python Code

Report Dashboard

Execution Report

Test Execution Detail

Pre-requisites

Basic knowledge of Selenium Webdriver is required. Check out this docs first.

Installation

Golem works with Python 3.4+

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 can be downloaded manually. Place them in a known location (e.g. in <test_directory>/drivers) and make sure the settings.json has the correct path to the executables (e.g. "chromedriver_path": "./drivers/chromedriver*"). Note: use '*' wildcard to match latest version automatically.

The latests versions of the webdrivers can be found here:

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>

Flags:

  • -b | --browsers: a list of browsers, by default use defined in settings.json or Chrome
  • -t | --threads: run in parallel, default 1 (not parallel)
  • -e | --environments: a list of environments, default is none

Documentation

Read the full documentation here: https://golem-framework.readthedocs.io/

Example Projects

Here is a repo with example working projects usign Golem: https://github.com/lucianopuccio/golem-demo

Roadmap

  • Integrate with Appium for mobile testing
  • Improve API test Golem actions
  • Video recording

License

MIT

About

A complete test automation framework

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

License:MIT License


Languages

Language:Python 64.9%Language:JavaScript 19.4%Language:HTML 12.5%Language:CSS 3.3%