Serverless AppSync plugin for test driven development using Jest
npm install serverless-appsync-jest-pluginWORK IN PROGRESS (this plugin might not work as expected & documentation is unfinished)
A Serverless Plugin for the Serverless Framework and
serverless-appsync-plugin which
adds support for test-driven development using jest.
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-appsync-plugin serverless-appsync-jest-plugin
Add the plugin to serverless.yml:
`yml`
plugins:
- serverless-appsync-plugin
- serverless-appsync-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
appSync:
# AppSync plugin config
Functions (and associated tests) can be created using the command
``
sls create function -t mappingType -n functionName
e.g.
``
sls create function -t query -n listUsers
creates a new resolver listUsers into resolvers.yml with a code template forquery/listUsers.js
the handler in and a Javascript function ___tests___/query-listUsers.js
as the entrypoint for the Lambda function. A test template is also created into .
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.