--- id: genie version: "26.7" license: Apache 2.0 license_treatment: permissive maintenance: active --- # genie — Genie: THE standard pyATS Library System License: permissive · Maintenance: active · Downloads: 283.1K/mo ## What it is and what it does Genie is a test automation framework and standard library for pyATS, designed to accelerate network testing by providing object-oriented abstractions for device configuration (Conf), operational state (Ops), and event-driven testing through a modular harness. It abstracts away differences between operating systems and management interfaces (CLI, YANG, REST), allowing developers to write reusable test cases in Python that work across heterogeneous network environments. The framework bundles configuration management, operational state representation, test harness orchestration, and utility functions into a cohesive system. Developers use Genie to define network topologies, verify device states, and trigger dynamic test scenarios based on predefined events. It supports rapid iteration and scaling from simple linear tests to complex asynchronous suites, with active maintenance and broad Python version support (3.8+) on Linux and macOS. Use it for: - Automate network device configuration validation across multiple vendors and OS types using unified Python objects - Build event-driven test suites that dynamically generate test cases based on network triggers and verification rules - Verify operational state consistency across network devices after configuration changes or failures - Develop reusable test libraries for CI/CD pipelines in network automation and NetDevOps workflows - Perform data-driven testing of network features with scalable, asynchronous test execution ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Genie is a test automation library and harness built on the pyATS framework, providing object-oriented abstractions for network device configuration, operational state, and event-driven testing across multiple operating systems and management interfaces. Yes, if you are building network test automation on Linux or macOS. Genie is actively maintained, production-stable, carries no known vulnerabilities, and provides a mature framework for network device testing. The permissive Apache 2.0 license and broad Python support (3.8+) make it suitable for enterprise use. Install friction is moderate due to 12 dependencies, but prebuilt wheels minimize compilation overhead. Not suitable for Windows environments. ## Install pip install genie uv add genie poetry add genie ## Installing genie Before you install: Medium install friction due to 12 runtime dependencies including multiple genie.libs subpackages. Active maintenance with a release 7 days ago. Supports Python 3.8+ across macOS and Linux with prebuilt wheels for Python 3.10–3.14. License in practice: Apache 2.0 permissive license allows commercial and private use with minimal restrictions, making it suitable for enterprise network testing environments. Quickstart: pip install genie from genie import testbed tb = testbed.load('testbed.yaml') device = tb.devices['device_name'] device.connect() Requires Linux or macOS; Windows is not supported. Testbed YAML configuration file needed to define network devices. Verify before relying: - Specific capabilities of each genie.libs subpackage (conf, clean, health, filetransferutils, ops, parser, sdk) and how they integrate - Whether all 12 runtime dependencies are always required or if some are optional for specific use cases - Current state of documentation and examples at the Cisco DevNet homepage ## Package facts - License: Apache 2.0 (permissive) - Python support: supports_current - Install friction: medium - Maintenance: active - Downloads: 283.1K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags network test automation, pyats test framework, device configuration testing, network device ops, cisco network testing, event-driven test harness, network state verification, network-automation, cisco-pyats, test-harness [View on SkillFed](https://skillfed.io/packages/genie) · [View on PyPI](https://pypi.org/project/genie/)