Subcategories
Packages
pyATS is Cisco's end-to-end testing framework for building data-driven, reusable test suites that scale from simple linear cases to large asynchronous test systems.
Generates minimal test case combinations using pairwise testing, reducing the number of test scenarios needed to cover interactions between multiple variables.
Provides a test case class for writing unit tests of asyncio code using async/await syntax, alongside support for synchronous tests in the same suite.
A pytest plugin that executes Python code snippets embedded in markdown files and docstrings as automated tests, detecting fenced code blocks and inline examples.
Modifies a Selenium Chrome WebDriver to evade bot-detection mechanisms by injecting JavaScript that masks automation signals.
Provides specialized data structures (WeakList, ListDict, AttrDict, and logic utilities) designed for use within the pyATS testing framework and other applications requiring advanced collection types.
Standardizes testbed device preparation, cleanup, and finalization workflows within the pyATS testing ecosystem, providing a framework for orchestrating device state management before and after test execution.
Easypy is a launcher and runtime environment for pyATS test suites that encapsulates script runs, collects logs into archives, and sends reporting emails.
Not recommended as a standalone tool; it is designed as part of the larger pyATS ecosystem.
Collects test results and generates reports as part of the pyATS testing ecosystem, handling result aggregation and output formatting for test suites.
pyats.aetest is the test script engine component of pyATS, providing a framework for defining and executing data-driven test cases with support for linear to complex asynchronous test suites.
Models network testbeds, devices, interfaces, links and segments as Python objects, with support for YAML-based topology definitions.
Not recommended if you need Windows support or are not already committed to the pyATS testing model.
Wraps Python multiprocessing to enable simpler asynchronous execution of arbitrary functions within the pyATS testing ecosystem.
Provides device connection abstraction and base classes for network device communication, enabling scripts to establish and manage connections via telnet, SSH, and other protocols.
Not recommended as a standalone tool for simple device communication; consider it only as part of a broader testing or automation strategy.
pyats.utils provides utility functions and helpers for the pyATS testing framework, including schema validation, data structure operations, and common testing utilities.
Collects test results and generates reports for the pyATS testing framework, integrating with pyATS result and logging components to organize and present test execution data.
Not recommended as a standalone tool—it is designed as part of the pyATS ecosystem.
Scans AI Agent Skills for prompt injection, data exfiltration, and malicious code using pattern-based detection, LLM analysis, and behavioral dataflow inspection.
However, do not rely on it as your sole security control: the documentation explicitly warns that clean scans do not guarantee safety, and human code review remains…
Provides object-oriented result representation and rollup aggregation for the pyATS testing framework, enabling hierarchical test result tracking and status consolidation.
Wraps Python's tkinter module to provide Tcl integration and object interfaces within the pyATS testing ecosystem, enabling better data structure casting and interface handling for test automation.
Not recommended as a standalone tool—it is a specialized sub-component designed to work within the pyATS ecosystem.
Provides logging format and utilities for pyATS, enabling test output to conform to Cisco log format standards.
tdda provides test-driven data analysis tools: reference testing for data pipelines, automatic test generation, constraint discovery and validation, regex inference, data diffing, and metadata documentation for CSV/flat files.
A Robot Framework test library for executing commands, transferring files, and managing interactive shells over SSH and SFTP connections.
However, the last release was 2021-11-18—check whether your use case aligns with the library's current state despite active repository status.
Automates Windows UI controls and windows by interacting with the Microsoft UIAutomation API, enabling programmatic inspection and manipulation of application interfaces.
Provides an async test client for ASGI web applications that calls the app directly without spawning a separate HTTP server, supporting both ASGI 2 and 3 specifications.
A unittest test runner that exports test results to XML files compatible with CI systems, IDEs, and build tools.
However, install friction is high (source-only distribution), and dormancy since 2014 means no support for modern Python or CI ecosystem changes.
eth-tester provides an in-memory Ethereum blockchain simulator for testing smart contracts and Ethereum applications without needing a live network or node.
However, be aware that maintenance is aging (last release 2025-04-23, no recent commits visible) and the pre-alpha classifier suggests it may not be…
Provides a pytest fixture for capturing and asserting on structured logs produced by structlog, enabling test-friendly inspection of log events and their context.
A pytest plugin that enables testing of Twisted-based asynchronous code by allowing test functions to return Deferred objects and waiting for their completion.
Install it if Twisted is part of your project; skip it otherwise.
Provides awaitable mock objects for testing async code, extending the standard mock framework with AsyncMock that can be awaited like coroutines.
No, not for new projects.
Integrates Percy visual testing into Python Appium tests, capturing and comparing mobile app screenshots against baselines to detect visual regressions.
However, the Pre-Alpha status means the API and features may change; start with a non-critical test suite and verify compatibility with your Appium and urllib3…
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.
A pytest plugin that runs doctests embedded in Cython `.pyx` extension modules, enabling documentation-driven testing of C/C++ code compiled through Cython.
Adds enum value generation to the Faker library, allowing you to randomly select from Python enum members during test data generation.
A pytest plugin that discovers and runs C++ tests from Google Test, Boost.Test, and Catch2 frameworks using pytest's test runner and reporting infrastructure.
AppiumLibrary is a Robot Framework library that enables automated testing of mobile applications on Android and iOS devices by bridging Robot Framework's keyword-driven syntax with Appium's mobile automation capabilities.
A pytest plugin that provides MySQL and MariaDB fixtures for testing—manages both local database processes and connections to running instances, with automatic cleanup between tests.
Install it if your test suite needs a managed MySQL database.
A pytest plugin that organizes tests into unit, integration, and slow integration tiers, running them sequentially and skipping later tiers if earlier ones fail.
Robotidy autoformats Robot Framework test code, normalizing spacing, alignment, and structure to match a consistent style.
However, be aware of the deprecation notice: if you are starting a new project or can migrate, Robocop 6.0+ is the recommended path forward.
Genie Libs SDK provides a library of reusable test triggers and verifications for the pyATS testing framework, enabling rapid development of network and infrastructure test automation.
aiodebug provides monitoring and testing utilities for asyncio programs, including event loop lag tracking, slow callback detection, hang inspection, and time manipulation for tests.
Mixer generates test data and model instances for Django, SQLAlchemy, Flask-SQLAlchemy, Peewee, Pony, Mongoengine, and Marshmallow, replacing manual fixture creation with automatic fake-data generation.
However, verify compatibility with your specific framework versions—maintenance is dormant (last release 2022-03-23), so if you use very recent Django or SQLAlchemy…