{"categories":[{"label":"Testing","url":"https://skillfed.io/packages/category/software-development-testing/5"}],"enrichment":{"capability":"A pytest plugin that provides fixtures and helpers for writing integration tests of Juju operator charms, including charm building, resource management, and model deployment.","skillfed_tags":["juju-charms","integration-testing","operator-framework"],"use_cases":["Test charm deployment and lifecycle by building a charm locally and verifying it reaches active status.","Validate charm resources are correctly built or downloaded and attached during deployment.","Render and deploy multi-charm bundles with templated configuration for integration testing.","Verify charm behavior after deployment by inspecting model state and application status.","Abort a test module early if an initial deployment test fails, marking dependent tests as xfailed."],"what_it_does":"pytest-operator is a pytest plugin designed to simplify writing integration tests for Juju operator charms. It provides an `ops_test` fixture that wraps a libjuju Model and offers helper methods for building charms, managing resources, rendering bundles, and deploying to a Juju environment. The fixture is module-scoped and includes conveniences like automatic async test marking and the ability to abort remaining tests in a module if a critical test fails.\n\nYou use it by including it in your test dependencies and then calling methods like `ops_test.build_charm()`, `ops_test.build_resources()`, and `ops_test.model.deploy()` within async test functions. It handles the boilerplate of connecting to a Juju model and provides utilities for rendering Jinja2 templates (for bundle files) and running juju CLI commands directly when needed.","worth_installing":"Yes, if you are writing integration tests for Juju operator charms. The plugin is actively maintained, has no known vulnerabilities, uses a permissive license, and provides real value by reducing boilerplate for a specialized testing domain. The low install friction and stable dependency set make it a straightforward addition to a charm testing workflow."},"id":"pytest-operator","links":{"html":"https://skillfed.io/packages/pytest-operator","md":"https://skillfed.io/packages/pytest-operator.md","pypi":"https://pypi.org/project/pytest-operator/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2025-10-04","license_spdx":null,"license_treatment":"permissive","name":"pytest-operator","python_support":"supports_current","summary":"Fixtures for Charmed Operators"},"popularity":{"monthly_downloads":152528,"position":10898,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.43.2"}
