Skip to main content
FixturFab

f3ts-cookiecutter

Project template for hardware test development. Start new test projects with best-practice structure, CI/CD configuration, and pytest-f3ts integration.

stableStart testing faster

Features

Pre-configured pytest-f3ts setup
Example tests and fixtures
Hardware configuration templates
GitHub Actions CI/CD workflow
Documentation structure
Docker support for test runners

f3ts-cookiecutter is a project template that generates a ready-to-use hardware test project structure. Instead of setting up pytest-f3ts, configuration files, and project layout from scratch, start with a working foundation.

Quick Start#

Generate a new project:

pip install cookiecutter
cookiecutter gh:fixturfab/f3ts-cookiecutter

Answer the prompts:

project_name [my-hardware-tests]: acme-board-tests
project_slug [acme-board-tests]:
description [Hardware functional tests]: Functional tests for ACME board rev C
author [Your Name]: Test Engineer
include_docker [y]: y
include_github_actions [y]: y

Your new project:

acme-board-tests/
├── tests/
│   ├── conftest.py              # pytest-f3ts fixtures
│   ├── test_power_on.py         # Example power-on tests
│   └── test_communication.py    # Example serial tests
├── config/
│   ├── dev.yaml                 # Development config
│   └── production.yaml          # Production config
├── pyproject.toml               # Project dependencies
├── Dockerfile                   # Test runner container
├── .github/
│   └── workflows/
│       └── test.yml             # CI workflow
└── README.md

What's Included#

Test Structure

  • Pre-configured conftest.py with hardware fixtures
  • Example tests demonstrating common patterns
  • Organized test modules by test type

Configuration

  • Hardware configuration templates for dev and production
  • Environment variable support
  • Multi-fixture configuration examples

CI/CD

  • GitHub Actions workflow for automated testing
  • Docker configuration for consistent test environments
  • Test reporting integration

Documentation

  • README template with setup instructions
  • Configuration documentation
  • Test development guide

Customization#

The template includes hooks for customization:

# Generate with custom options
cookiecutter gh:fixturfab/f3ts-cookiecutter \
  --no-input \
  project_name="my-tests" \
  include_docker=n

When to Use#

f3ts-cookiecutter helps when:

  • Starting a new hardware test project
  • Standardizing test structure across multiple projects
  • Onboarding team members to hardware testing best practices

For simple scripts or experiments, direct pytest-f3ts installation may be sufficient.

Related Projects

View all open source projects

Use with FixturFab Fixtures

Our open-source testing stack integrates seamlessly with FixturFab fixtures. Configure your fixture in Studio and get a matching pytest-f3ts configuration.