Skip to content

Add e2e/integration test & framework #745

@crandles

Description

@crandles

Trickster has many unit tests, and integration-style tests per each package. However, after/in addition to unit tests, a comprehensive test should created for the whole codebase that leverages:

  • actual running backend instances (e.g. prometheus, influx)
  • an instance of trickster equivalent to main.go:main() (or as close as we can get)
    • Ideally, we should be able to switch between running an actual trickster instance (e.g. via container) or via calling the right Go code in a test

To do:

  • Identify backends to include in test (will likely target a subset)
  • Identify "user stories" that should be tested, per each backend

Goals:

  • To test our actual implementation against real backends, and not just test our mock implementations
  • To test our full stack with real clients
  • Test should be executable from github action workflow, or locally
    • For local development, this should give us the ability to perform step-through debugging and better recreate reported issues
  • To be able to perform race detection tests against the whole codebase

Metadata

Metadata

Assignees

Labels

testsaffects unit tests

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions