summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md45
1 files changed, 45 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..2b14c01
--- /dev/null
+++ b/README.md
@@ -0,0 +1,45 @@
+# Cucumber.js examples
+
+This repository demonstrates features of Cucumber.js. Each directory contains
+an independent npm-package with an example.
+
+The packages have standard directory structure:
+
+- Features are in the `feature/` directory and have `.feature` extension.
+- Step definitions are JavaScript files in `feature/steps/`.
+
+## Running the tests
+
+1. Go to a directory
+2. Install npm dependencies:
+```sh
+npm install
+```
+
+3. Run the tests:
+```sh
+npm test
+```
+
+## Available examples
+
+### 1-5
+
+The directories with the names starting with a number are parts of a single
+step-by-step guide which introduces Cucumber.js. Each step of this guide
+builds on the previous one and contains a few more lines of JavaScript code.
+
+The target project is a small test suite for the JavaScript `+` operator.
+
+### data-tables
+
+When data tables are used, Cucumber.js provides different views of the data.
+This directory contains one feature with four scenarios, each of which uses a
+different way to read the given table. These tests cover all possibilities to
+access the data in a data table.
+
+See [Data tables](https://github.com/cucumber/cucumber-js/blob/master/docs/support_files/data_table_interface.md).
+
+### async
+
+Shows how to use promises and `async`/`await` when testing asynchronous code.