Running tests
Thecontainer project includes both basic unit tests and integration tests to ensure functionality and reliability.
Basic tests
To run the basic test suite:Integration tests
Integration tests verify that all components work together correctly:Integration tests may take longer to run as they test real container operations, including VM creation and network setup.
Running all tests
To build the project and run all tests in sequence:Testing release builds
To test a release build configuration:Testing release builds is important to catch optimization-related issues that may not appear in debug builds.
Test requirements
Before running tests, ensure you have:- Mac with Apple silicon
- macOS 15 minimum, macOS 26 recommended
- Xcode 26 installed and set as the active developer directory
- Container services stopped (if running)
Continuous testing during development
When actively developing, you can run tests frequently:Testing with local dependencies
When testing changes to the Containerization package:Configure local dependency
Set up the local containerization dependency as described in the building guide.
Debugging test failures
If tests fail:- Check the error output - Test failures include detailed error messages
- Verify requirements - Ensure all build requirements are met
- Check services - Make sure no container services are running that might interfere
- Review recent changes - Consider what code changes might have caused the failure
- Run individually - Try running
make testandmake integrationseparately to isolate the issue
For more advanced debugging, see the debugging guide for information on attaching debuggers to XPC helpers.