vsukhin / testkube

Kubernetes-native framework for test definition and execution

Home Page:https://kubeshop.github.io/testkube

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GitHub Repo stars Releases

TestKube Logo

Welcome to TestKube - your friendly Kubernetes testing framework!

TestKube decouples test artifacts and execution from CI/CD tooling; tests are meant to be part of your clusters state and can be executed as needed:

  • Manually via kubectl cli
  • Externally triggered via API (CI, external tooling, etc)
  • Automatically on deployment of annotated/labeled services/pods/etc (WIP)

Main TestKube components are:

  • kubectl TestKube plugin - simple - installed w/o 3rd party repositories (like Krew etc), communicates with
  • API Server - work orchestrator, runs executors, gather execution results
  • CRDs Operator - watches TestKube CR, handles changes, communicates with API Server
  • Executors - runs tests defined for specific runner
  • Results DB - for centralized test results aggregation and analysis
  • TestKube Dashboard - standalone web application for viewing real-time TestKube test results

TestKube attempts to:

  • Avoid vendor lock-in for test orchestration and execution in CI/CD pipelines
  • Make it easy to orchestrate and run any kind of tests - functional, load/performance, security, compliance, etc. - in your clusters, without having to wrap them in docker-images or providing network access
  • Make it possible to decouple test execution from build processes; engineers should be able to run specific tests whenever needed
  • Centralize all test results in a consistent format for "actionable QA analytics"
  • Provide a modular architecture for adding new types of test scripts and executors

Getting Started

Check out the Installation and Getting Started guides to set up TestKube and run your first tests!

Discord

Don't hesitate to say hi to the team and ask questions on our Discord server.

Documentation

Is available at https://kubeshop.github.io/testkube

Contributing

Go to contribution document to read more how can you help us 🔥

Feedback

Whether it helps you or not - we'd LOVE to hear from you. Please let us know what you think and of course, how we can make it better.

About

Kubernetes-native framework for test definition and execution

https://kubeshop.github.io/testkube

License:MIT License


Languages

Language:Go 98.2%Language:Makefile 1.5%Language:Dockerfile 0.2%Language:HCL 0.1%