# Pepino

Pepino translates plain english UI steps from the [Pepino Language](https://github.com/AcklenAvenue/pepino-language) into UI automation instructions, sends those instructions to automation services, and reports results.

## Requirements

- Node v4.4.7 (or newer)
- NPM v2.15.8 (or newer)
- Terminal or Console

## Installation/Upgrade

You need to install the Pepino tool so that you can convert `step` files into `js` files. 
- `npm install -g pepino`
 
You also need to install Chimp to run the cucumber specifications with the converted `js` files.
- `npm install -g chimp@0.38.0` (please don't use v0.39 because of a bug in cucumberjs 1.2.1)

## Setup a project

Any project that will use Cucumber should have a folder called "features". Inside that folder, you should have all your cucumber-formatted specifications. Your Pepino step files should probably be in the same folder for easy access. Here's an example folder structure:

```
./
./src
./src/images
./features
./features/login
./features/login/authentication.feature
./features/login/authentication.step
./features/registration
./features/registration/first_time.feature
./features/registration/first_time.step
```

## Use

While using the console, navigate to the root folder of your project. From there, you can run the following command to convert Pepino step files to javascript:

- `pepino` 

Once your Pepino step files have been converted, you can run Chimp to execute the specifications.

- `chimp` 

NOTE: Remember that, when you modify your Pepino step files, you need to convert them again before trying to execute them.

## Samples

To help you get started, you can use the sample specifications and steps in the [pepino-lib repository](https://github.com/AcklenAvenue/pepino-lib/tree/develop/test_assets). Check the files in the `./test_assets/` folder. You can copy those files into your own `./features` folder and get started immediately.
