Skip to main content

Genie: THE standard pyATS Library System

Project description

Genie is both a library framework and a test harness that facilitates rapid development, encourage re-usable and simplify writing test automation. Genie bundled with the modular architecture of pyATS framework accelerates and simplifies test automation leveraging all the perks of the Python programming language in an object-orienting fashion.

pyATS is an end-to-end testing ecosystem, specializing in data-driven and reusable testing, and engineered to be suitable for Agile, rapid development iterations. Extensible by design, pyATS enables developers start with small, simple and linear test cases, and scale towards large, complex and asynchronous test suites.

Genie was initially developed internally in Cisco, and is now available to the general public starting early 2018 through Cisco DevNet. Visit the Genie home page at

Component Breakdown


Sub-component of Genie that Configures topology through Python object attributes, featuring a common object structure. These object’s structures means that they are compatible with all operating systems and Management Interfaces (such as CLI/Yang/REST, etc.)


Sub-component of Genie that Represents the operational state of the feature through object attributes. These object’s structures means that they are compatible with all operating systems and Management Interfaces (such as CLI/Yang/REST, etc).


Sub-component of Genie which bring the concept of event driven testing into the pyATS framework. With event driven testing, script and testcases are derived dynamically based on selected triggers and verification from the Genie SDK pool.


as its name suggests - various utilities used throughout the infrastructure.


Genie currently supports Python 3.4+ on Linux & Mac systems. Windows platforms are not yet supported.

Quick Start

# install genie as a whole
$ pip install genie

# to upgrade this package manually
$ pip install --upgrade genie

# to install alpha/beta versions, add --pre
$ pip install --pre genie

For more information on setting up your Python development environment, such as creating virtual environment and installing pip on your system, please refer to Virtual Environment and Packages in Python tutorials.


Examples showcasing various features & idioms of coding can be found here:

Release history Release notifications | RSS feed

This version


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release. See tutorial on generating distribution archives.

Built Distributions

genie-23.4-cp310-cp310-macosx_11_0_arm64.whl (4.8 MB view hashes)

Uploaded cp310

genie-23.4-cp39-cp39-macosx_11_0_arm64.whl (4.8 MB view hashes)

Uploaded cp39

genie-23.4-cp38-cp38-macosx_11_0_arm64.whl (4.7 MB view hashes)

Uploaded cp38

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page