Skip to content

STS - Storage Testing

Comprehensive Linux storage testing framework for Fedora, CentOS Stream, and RHEL

STS makes storage testing easy with pytest-based libraries, extensive fixtures, and TMT integration. Whether you're testing iSCSI, LVM, multipath, or other storage technologies, STS provides the tools you need.

It consists of two main components:

  • ๐Ÿ“ฆ sts-libs: Python testing library with storage-specific APIs and fixtures
  • ๐Ÿงช Test Suite: Collection of storage tests and TMT plans

Supported APIs and Tests:

  • iSCSI: Initiator and target testing
  • LVM: Volume management and thin provisioning
  • Multipath: Device mapper multipath
  • NVMe: NVMe device operations
  • Fibre Channel: FC HBA testing
  • SCSI: SCSI device testing
  • Stratis: Stratis storage management
  • RDMA: RDMA storage protocols
  • VDO: Virtual Data Optimizer
  • And more: Actively expanding support for additional storage technologies

Quick Start

1. Install sts-libs

From PyPI:

pip install sts-libs

From Fedora/EPEL:

dnf copr enable packit/gitlab.com-rh-kernel-stqe-sts-releases
dnf install -y python3-sts-libs

2. Write Your First Test

For detailed guidance on writing and running tests, see Writing and Running STS Tests.

Requirements

  • Python: 3.9 or later
  • Operating Systems: Fedora, CentOS Stream 9+, RHEL 8+
  • Dependencies: pytest, pytest-testinfra

Project Architecture

sts/
โ”œโ”€โ”€ sts_libs/              # Core Python library
โ”‚   โ”œโ”€โ”€ src/sts/           # Library source code  
โ”‚   โ”‚   โ”œโ”€โ”€ base.py        # Base device classes
โ”‚   โ”‚   โ”œโ”€โ”€ fixtures/      # Pytest fixtures
โ”‚   โ”‚   โ”œโ”€โ”€ utils/         # Utility modules
โ”‚   โ”‚   โ””โ”€โ”€ [storage]/     # Storage technology modules
โ”‚   โ””โ”€โ”€ tests/             # Library unit tests
โ”œโ”€โ”€ tests/                 # Storage functional tests
โ”œโ”€โ”€ plans/                 # TMT test plans (.fmf files)
โ”œโ”€โ”€ docs/                  # Documentation source
โ””โ”€โ”€ pyproject.toml         # Project configuration

Community & Support