cukes-rest takes simplicity of Cucumber and provides bindings for HTTP specification. As a sugar on top, cukes-rest adds steps for storing and using request/response content from a file system, variable support in .features, context inflation in all steps and a custom plug-in system to allow users to add additional project specific content.
Feature: Server is healthy
Scenario: Should return pong response on /ping
When the client performs GET request on /ping
Then status code is 200
And response equals to "pong"
Some pretty slides can be found here!
- JDK 1.6+
<dependency>
<groupId>lv.ctco.cukesrest</groupId>
<artifactId>cukes-rest</artifactId>
<version>${cukes-rest.version}</version>
</dependency>
cukes-rest-loadrunner: experimental plugin for HP LoadRunner script generation out of cukes-rest test case
<dependency>
<groupId>lv.ctco.cukesrest</groupId>
<artifactId>cukes-rest-loadrunner</artifactId>
<version>${cukes-rest.version}</version>
</dependency>
There are two options to start local server with Sample Application:
- Run SampleApplicaiton.java with following params
server server.yml
from$MODULE_DIR$ - Execute Package/Install Maven phase of the parent project cukes-rest-all
Precondition: in order for all tests to pass successfully, please make sure you started fresh instance of Sample Application.
- To start a specific Feature/Scenario, either change CucumberOption in RunCukesTest.java or run Feature file directly from you IDE
- To start all tests run RunCukesTest.java from sub-project cukes-rest-sample
- To start all tests right from Maven, execute test phase in project cukes-rest-sample