Testkube

Testkube provides a Kubernetes-native framework for test definition, execution and results. It decouples test artifacts and execution from CI/CD tooling and makes testing part of your cluster's state. Testkube is built and maintained by Kubeshop.

Stars
1.02K
Forks
106
Open issues
354
Closed issues
1.53K
Last release
5 months ago
Last commit
5 months ago
Watchers
1.02K
Total releases
1K
Total commits
2.67K
Open PRs
54
Closed PRs
1.73K
Repo URL
Platform
License
mit
Category
Offers premium version?
NO
Proprietary?
NO
About


Welcome to Testkube - Your friendly cloud-native testing framework for Kubernetes

Website |  Documentation |  Twitter |  Discord |  Blog

Click on the image or this link to watch the "Intro to Testkube" short video (3 mins)

Welcome to Testkube

Your friendly cloud-native testing framework for Kubernetes.

Testkube natively integrates test orchestration and execution into Kubernetes and your CI/CD/GitOps pipeline. It 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:

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

Testkube advantages:

  • Avoids vendor lock-in for test orchestration and execution in CI/CD pipelines
  • Makes 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
  • Makes it possible to decouple test execution from build processes; engineers should be able to run specific tests whenever needed
  • Centralizes all test results in a consistent format for "actionable QA analytics"
  • Provides a modular architecture for adding new types of tests and executors

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
Getting Started

Checkout the Getting Started guides to set up Testkube and run your first tests!

Documentation

Is available at docs.testkube.io

Contributing

Shout-out to our contributors 🎉 - you're great!

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. Please join our growing community on Discord

Alternative Projects

Subscribe to Open Source Businees Newsletter

Twice a month we will interview people behind open source businesses. We will talk about how they are building a business on top of open source projects.

We'll never share your email with anyone else.