Serverless plugin for test driven development using Jest

A Serverless Plugin for the Serverless Framework which
adds support for test-driven development using jest
THIS PLUGIN REQUIRES SERVERLESS V1.0 OR LATER!
More familiar with Mocha? Try serverless-mocha-plugin.
This plugins does the following:
* It provides commands to create and run tests manually
* It provides a command to create a function, which automatically also creates a test
In your service root, run:
``bash`
npm install --save-dev serverless-jest-plugin
Add the plugin to serverless.yml:
`yml`
plugins:
- serverless-jest-plugin
custom:
jest:
# You can pass jest options here
# See details here: https://facebook.github.io/jest/docs/configuration.html
# For instance, uncomment next line to enable code coverage
# collectCoverage: true
Functions (and associated tests) can be created using the command
``
sls create function -f functionName --handler handler
e.g.
``
sls create function -f myFunction --handler functions/myFunction/index.handler
creates a new function myFunction into serverless.yml with a code template forfunctions/myFunction/index.js
the handler in and a Javascript function module.exports.handler test/myFunction.js
as the entrypoint for the Lambda function. A test template is also created into . Optionally tests can be created to specific folder using --path or -p switch, e.g.
``
sls create function -f myFunction --handler functions/myFunction/index.handler --path tests
To create tests next to handler use --path {function}, in following example test file myFunction.test.js is created to functions/myFunction/ directory.
``
sls create function -f myFunction --handler functions/myFunction/index.handler --path {function}
Tests can also be added to existing handlers using
``
sls create test -f functionName
Tests can be run directly using Jest or using the "invoke test" command
```
sls invoke test [--stage stage] [--region region] [-f function]
If no function names are passed to "invoke test", all tests related to handler functions are run.