Gauge (software)


Gauge is a light weight cross-platform test automation tool. It uses markdown to author test cases and scenarios. Its modular architecture makes it flexible and scalable.

Markdown

Gauge specifications are written in the business language. For example,

Find movies playing near me
The System Under Test in this example is a web application to find and book movie tickets
Search for movies
-----------------
  • Specify location as "Bangalore"
  • Search for movie "Star Wars"
  • Verify that "INOX" is playing "Star Wars" at "7:30 pm"
Book movie ticket
-----------------
  • Sign up with email address
  • Complete the verification
  • Select location as "Bangalore", the movie "Star Wars" and "3" seats
  • Confirm and pay
  • Verify the "e-ticket" has been sent to the registered email.

This Gauge specification describes a feature of the System Under Test. The scenarios Search for movies and Book movie ticket represent a flow in this specification. Steps are executable parts of a specification.

Test Code

Specifications in Markdown abstracts code behind the steps.
For example, the step Specify location as "Bangalore" implementation in Java would look like

// This Method can be written in any java class as long as it is in classpath.
public class StepImplementation

Gauge has Support for writing test code in
The Community contributed language runners are
Gauge tests can be executed from the command line or the supported IDEs.
The default command gauge specs run the tests sequentially.
The command gauge -p specs will execute the tests in Parallel.

Reports

Gauge gives comprehensive test reports that provides the required details of a given run.

IDE support

Gauge's IDE support helps to write and maintain the test suite.