compliance-trestle
compliance-trestle copied to clipboard
As a developer I need an approach to running integration tests against remote services.
Summary
Trestle is a tool - which means that there are issues with respect to integration testing remote functionality as the remote location is arbitrary.
Remote locations include:
- SFTP
- github
- https with auth.
Initial thoughts
- Create a separate github repo for testing with which contains no confidential content. Trestle maintainers would be given access for their local testing.
- SFTP / HTTPS would be done through an in memory deployment or similar.
- Integration tests would be marked up with annotations in pytest to allow segregation of the integration tests for most usecases.
- Integration test phase could be run together or separately in CI.
@jeffdmgit - I think we need to fix this issue when you have some time.
Looks like Actions supports sidecar containers for workflows which should help with https / sftp, noting we may need to identify or build a basic container (at least set passwords etc.)
- https://docs.github.com/en/actions/using-containerized-services/about-service-containers
Github auth will need to be tested by a sample repo. test against a scenario that can easily be replicated (e.g. pulling a README.md).