Introduction
FirmwareCI is an automated testing platform that enables black-box firmware testing on real hardware. Unlike traditional testing approaches that rely on source code analysis, FirmwareCI validates compiled firmware binaries running on actual devices, catching integration issues that emulation or unit tests might miss.
The platform uses a distributed architecture where a central server coordinates test execution across multiple devices under test (DUTs). Tests are defined in simple YAML files using predefined test step commands, making it easy to create comprehensive validation workflows that run automatically on every commit.
Learn More
- Overview - Understand FirmwareCI’s black-box testing approach, key concepts like DUTs and test steps, and how automated hardware testing works
- System Architecture - Explore the distributed architecture with the FirmwareCI Server managing job scheduling and DUT reservations, while clients (GitHub Actions, CLI, Web UI) trigger workflows
- Test Execution Model - Learn how tests are structured into stages containing steps, with strict completion semantics ensuring test integrity and clear failure handling