There are very few integration tests for AWS. Those that exist are in tests/integration/targets/ in the relevant collection repository.
Following the 2.4 release, all modules marked stableinterface
MUST have integration tests for new features. Upgrading to boto3
shall be considered a feature request.
Following the 2.5 release, all new modules MUST have integration tests.
Bug fixes for modules that currently have integration tests SHOULD have tests added. Depending upon the urgency of the bug fix, we may accept bug fixes without tests.
Where integration tests are impractical due to the need for non-AWS resources,
unit tests can be used instead. The placebo
Python library provides a nice
mechanism for recording and mocking boto3 API responses and is preferred to
writing and maintaining AWS fixtures when possible.
- Resource creation under check mode
- Resource creation
- Resource creation again (idempotency) under check mode
- Resource creation again (idempotency)
- Resource modification under check mode
- Resource modification
- Resource modification again (idempotency) under check mode
- Resource modification again (idempotency)
- Resource deletion under check mode
- Resource deletion
- Resource deletion (of a non-existent resource) under check mode
- Resource deletion (of a non-existent resource)
Where modules have multiple parameters we recommend running through the 4-step modification cycle for each parameter the module accepts, as well as a modification cycle where as most, if not all, parameters are modified at the same time.
Modules which still use boto and need to be ported are tracked on the AWS Project Board. .