What problem does it solve?
Creating reliable integration tests for operating system kernels is challenging due to the need for QEMU virtualization, specific boot sequences, and precise signal detection. This Skill provides a structured approach to authoring these tests, ensuring new kernel features are thoroughly validated.
Core Features & Use Cases
- Shared QEMU Testing: Leverage a shared QEMU instance for faster, more efficient test execution across multiple kernel features.
- Checkpoint Signals: Define and monitor specific log signals to verify kernel behavior and test completion.
- Use Case: You've implemented a new memory management feature in Breenix. Use this Skill to quickly set up a kernel-side test, define a completion signal, and integrate it into the existing shared QEMU test suite, ensuring your changes don't introduce regressions.
Quick Start
Kernel-side test code snippet
#[cfg(feature = "testing")]
pub fn test_my_feature() {
use crate::serial::serial_println;
serial_println!("✅ MY_FEATURE TEST COMPLETE");
}
Rust integration test snippet
#[test]
fn test_my_feature() {
shared_qemu::run_test(
"my_feature",
"✅ MY_FEATURE TEST COMPLETE"
);
}