Skip to content

h2non/apitance

Repository files navigation

apitance Build Status Code Climate NPM

Acceptance testing framework for HTTP testing with BDD flavors, built-on-top of Cucumber.

Not for BDD purists.

Work in progress

Features

  • Generic and reusable steps with expressiveness and multiple alias
  • Full HTTP protocol features support, including authentication, headers, cookies
  • High number of assert/expectation expressions for responses validation
  • Request/responses caching, reuse and chaining
  • Validate body responses against JSON schema
  • Supports HAR 1.2
  • API discovering based on RAML
  • Support all the Cucumber.js features, such as hooks, configuration, stages...
  • Built-in support for templating and variables such as environment variables
  • Extended syntax with conditionals, control flow and more...
  • Send body payload data from external files or remote servers
  • Extending support. You can create or overwrite custom steps

Installation

Apitance requires you have installed node.js or io.js

[sudo] npm install -g apitance

Or install it as standalone self-contained package:

curl -s -L https://raw.github.com/h2non/apitance/master/scripts/installer.sh | sudo bash -v 0.1.0-beta.1

Usage

$ apitance -r features/user.feature

Command-line interface

Getting help

$ apitance --help
$ apitance -r path/to/steps path/to/feature

Development

Only node.js/io.js is required for development

Clone/fork this repository

$ git clone https://github.com/h2non/apitance && cd apitance

Install dependencies

$ npm install

Compile code

$ make compile

Run tests

$ make test

License

MIT © Tomas Aparicio

About

[WIP] Gherkin-driven HTTP API testing made easy

Resources

License

Stars

Watchers

Forks

Packages

No packages published