I have found doing integration test in Serverless fairly painless (in fact I prefer it to integration testing in other architectures) Here is what has worked for me.
- Use the Serverless Framwork
- Group lambdas together by domains and include the services they consume in the serverless.yml file (e.g. Sqs, S3, Kinesis…)
- In your pipeline deploy an integration environment
- Run your integration tests against your integration environment
- Tear down the integration environment