Skip to content

Ecosystem

sriv edited this page May 10, 2017 · 5 revisions

Ecosystem

Gauge Core

Gauge core, as the name suggests is the primary codebase. Repository - https://github.com/getgauge

Requirements

- Golang

Gauge-proto

This is a repository which contains the google protobuf messages. It contains the .proto files that defines contracts between plugins and gauge core. Several components uses this repository as a sub module. The Protocol Buffer tooling helps generate code stubs that corresponds to the messages in various languages.

Repository: https://github.com/getgauge/gauge-proto

Common

This is a shared utility code between components written in Golang.

Repository - https://github.com/getgauge/common)

Requirements

- Golang

Gauge Screenshot

This is a cross platform utility to capture the active display screenshot. Used for reporting failures.

Repository - https://github.com/getgauge/gauge_screenshot)

Requirements

- Golang

Note A language runner can invoke gauge_screenshot or a custom_implementation to take screen shots on failure.

Language runners

Enables gauge support for a specific language. Below is a list of all currently supported language runners.
* [Java](https://github.com/getgauge/gauge-java)
* [C#](https://github.com/getgauge/gauge-csharp)
* [Ruby](https://github.com/getgauge/gauge-ruby)
* [Javascript](https://github.com/getgauge-contrib/gauge-js)
* [Python](https://github.com/kashishm/gauge-python)
* [Golang](https://github.com/getgauge-contrib/gauge-go)

Notes: Javascript, Python and Golang are community contributed/maintained language runners.

Reporting plugins

The summary of the test result can be viewed in the following formats
* [Html](https://github.com/getgauge/html-report)
* [Xml](https://github.com/getgauge/xml-report)

There is also another reporting plugin that does not relate to test results, rather helps users visualize their test suite.
* [Spectacle](https://github.com/getgauge/spectacle)

IDE Plugins

Enables gauge support in IDE. Below is the list of all supported IDEs.
* [IntelliJ](https://github.com/getgauge/Intellij-Plugin)
* [Visual Studio C#](https://github.com/getgauge/gauge-visualstudio)

Gauge-repository

This repository contains the meta-data of language runner and reporting plugins which is used during installation and upgrades.

Repository: https://github.com/getgauge/gauge-repository

Note There is also a nightly repository available to publish nightly builds of the plugins.

Gauge-maven-plugin

This plugin is used to integrate gauge with maven so that the specs can be run using maven.

Repository - https://github.com/getgauge/gauge-maven-plugin

Gauge-mvn-archetypes

One can create projects using several templates. This contains the template of Maven archetypes for Gauge.

Repository - https://github.com/getgauge/gauge-mvn-archetypes

##Gauge Examples

* [gauge-example-java](https://github.com/getgauge/gauge-example-java) - a sample project illustrating Gauge features using webdriver

* [gauge-example-groovy](https://github.com/getgauge/gauge-example-groovy) - a sample project, illustrating test automation using Gauge, with Groovy support.

* [gauge-example-ruby](https://github.com/getgauge/gauge-example-ruby) - a sample project, illustrating test automation using Gauge, with ruby support.

* [gauge-example-csharp](https://github.com/getgauge/gauge-example-csharp) - a sample project illustrating Gauge features, using C#

* [gauge-example-sahi](https://github.com/getgauge/gauge-example-sahi) - A sample project illustrating Gauge features using sahi to run browser tests.

Gauge User Documentation

Python+Sphinxdoc is used to edit and contribute to the documentation.

Repository - https://github.com/getgauge/getgauge.github.io)

Set-up will help you get started...