Lapis Lazuli

LapisLazuli provides cucumber helper functions and scaffolding for easier (web) test automation suite development.

Gem Version Code Climate Test Coverage

A lot of functionality is aimed at dealing better with Watir, such as:

  • Easier/more reliable find and wait functionality for detecting web page elements.
  • Easier browser handling
  • Better error handling
  • etc.


For detailed installation notes, go to:

Add this line to your application's Gemfile:

gem 'lapis_lazuli'

And then execute:

$ bundle

Or install it yourself as:

$ gem install lapis_lazuli


The Lapis Lazuli project has two main purposes:

  • Provide a repository of common test functions for test automation engineers.
  • Make it easy to get started on a test automation project with these test functions.

The first goal is fulfilled by the Lapis Lazuli module itself, which can be imported in any cucumber project like this:

require 'lapis_lazuli'

All of Lapis Lazuli's helper functions will be available in your step definitions then. However, you won't need to do this if you create a new Lapis Lazuli project. Simple run:

$ lapis_lazuli create <projectpath>

And a cucumber project will be set up for you in the given path. The last path name component will be considered the project name, so e.g. a path of projects/for_client/website1 will mean the project's name is going to be website1.

Change to that newly created project directory and read the file there for further instructions.

Be sure to read the GitHub Wiki or for further documentation.


Please see the Wiki page on contributing


Copyright (c) 2013-2017 spriteCloud B.V. and other node-apinator contributors. See the LICENSE file for details.