All Projects → vapor-ware → Kubetest

vapor-ware / Kubetest

Licence: gpl-3.0
Kubernetes integration testing in Python via pytest

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Kubetest

pytest-docker-tools
Opionated helpers for creating py.test fixtures for Docker integration and smoke testing environments
Stars: ✭ 61 (-50%)
Mutual labels:  integration-testing, pytest
pytestlab
A pytest powered framework for multi-host integration and system testing
Stars: ✭ 17 (-86.07%)
Mutual labels:  integration-testing, pytest
Pytest Monitor
Pytest plugin for analyzing resource usage during test sessions
Stars: ✭ 105 (-13.93%)
Mutual labels:  pytest, integration-testing
Coyote
Environment, operations and runtime-meta testing tool.
Stars: ✭ 84 (-31.15%)
Mutual labels:  integration-testing
Testing Workshop
A workshop for learning how to test JavaScript applications
Stars: ✭ 1,276 (+945.9%)
Mutual labels:  integration-testing
Unit Threaded
Advanced unit test framework for D
Stars: ✭ 100 (-18.03%)
Mutual labels:  integration-testing
Greenlight
Clojure integration testing framework
Stars: ✭ 116 (-4.92%)
Mutual labels:  integration-testing
Openmock
Mock all the services. Intuitive YAML DSL for HTTP, gRPC, Kafka, and AMQP mocks.
Stars: ✭ 81 (-33.61%)
Mutual labels:  integration-testing
Gest
👨‍💻 A sensible GraphQL testing tool - test your GraphQL schema locally and in the cloud
Stars: ✭ 109 (-10.66%)
Mutual labels:  integration-testing
Hsac Fitnesse Fixtures
An environment to define and run integration tests. It contains Fitnesse fixture (base) classes and a baseline FitNesse installation.
Stars: ✭ 99 (-18.85%)
Mutual labels:  integration-testing
Pytest Cookies
The pytest plugin for your Cookiecutter templates. 🍪
Stars: ✭ 96 (-21.31%)
Mutual labels:  pytest
Godog
Cucumber for golang
Stars: ✭ 1,287 (+954.92%)
Mutual labels:  integration-testing
Pytest Recording
A pytest plugin that allows recording network interactions via VCR.py
Stars: ✭ 98 (-19.67%)
Mutual labels:  pytest
Pytest Instafail
py.test plugin to show failures instantly
Stars: ✭ 86 (-29.51%)
Mutual labels:  pytest
Wagtail Pipit
Pipit is a Wagtail CMS boilerplate which aims to provide an easy and modern developer workflow with a React-rendered frontend.
Stars: ✭ 109 (-10.66%)
Mutual labels:  pytest
Cavy
An integration test framework for React Native.
Stars: ✭ 1,239 (+915.57%)
Mutual labels:  integration-testing
Automation Arsenal
Curated list of popular Java and Kotlin frameworks, libraries and tools related to software testing, quality assurance and adjacent processes automation.
Stars: ✭ 105 (-13.93%)
Mutual labels:  integration-testing
Frost
Unit testing framework for test driven security of AWS, GCP, Heroku and more.
Stars: ✭ 91 (-25.41%)
Mutual labels:  pytest
Pytest Repeat
pytest plugin for repeating test execution
Stars: ✭ 99 (-18.85%)
Mutual labels:  pytest
Movieapp
🎬 MovieApp is a Flutter application built to demonstrate the use of modern development tools with best practices implementation like Modularization, BLoC, Dependency Injection, Dynamic Theme, Cache, Shimmer, Testing, Flavor, CI/CD, etc.
Stars: ✭ 117 (-4.1%)
Mutual labels:  integration-testing

kubetest

Build Status PyPI Documentation Status

Kubetest is a pytest plugin that makes it easier to manage a Kubernetes cluster within your integration tests. While you can use the Kubernetes Python client directly, this plugin provides some cluster and object management on top of that so you can spend less time setting up and tearing down tests and more time actually writing your tests. In particular, this plugin is useful for testing your Kubernetes infrastructure (e.g., ensure it deploys and behaves correctly) and for testing disaster recovery scenarios (e.g. delete a pod or deployment and inspect the aftermath).

Features:

  • Simple API for common cluster interactions.
  • Uses the Kubernetes Python client as the backend, so more complex custom actions are possible.
  • Load Kubernetes manifest YAMLs into their Kubernetes models.
  • Each test is run in its own namespace and the namespace is created and deleted automatically.
  • Detailed logging to help debug error cases.
  • Wait functions for object readiness and for object deletion.
  • Get container logs and search for expected logging output.
  • Plugin-managed RBAC permissions at test-case granularity using pytest markers.

For more information, see the kubetest documentation.

Installation

This plugin can be installed with pip

pip install kubetest

Note that the kubetest package has entrypoint hooks defined in its setup.py which allow it to be automatically made available to pytest. This means that it will run whenever pytest is run. Since kubetest expects a cluster to be set up and to be given configuration for that cluster, pytest will fail if those are not present. It is therefore recommended to only install kubetest in a virtual environment or other managed environment, such as a CI pipeline, where you can assure that cluster access and configuration are available.

Documentation

See the kubetest documentation page for details on command line usage, available fixtures and markers, and general pytest integration.

Feedback

Feedback for kubetest is greatly appreciated! If you experience any issues, find the documentation unclear, have feature requests, or just have questions about it, we'd love to know. Feel free to open an issue for any feedback you may have.

License

kubetest is released under the GPL-3.0 license.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].