tduhamel42
|
ddc6f163f7
|
feat(test): add automated workflow testing framework
- Add test matrix configuration (.github/test-matrix.yaml)
- Maps 8 workflows to workers, test projects, and parameters
- Excludes LLM and OSS-Fuzz workflows
- Defines fast, full, and platform test suites
- Add workflow execution test script (scripts/test_workflows.py)
- Executes workflows with parameter validation
- Validates SARIF export and structure
- Counts findings and measures execution time
- Generates test summary reports
- Add platform detection unit tests (cli/tests/test_platform_detection.py)
- Tests platform detection (x86_64, aarch64, arm64)
- Tests Dockerfile selection for multi-platform workers
- Tests metadata.yaml parsing
- Includes integration tests
- Add GitHub Actions workflow (.github/workflows/test-workflows.yml)
- Platform detection unit tests
- Fast workflow tests (5 workflows on every PR)
- Android platform-specific tests (AMD64 + ARM64)
- Full workflow tests (on main/schedule)
- Automatic log collection on failure
- Add comprehensive testing documentation (docs/docs/development/testing.md)
- Local testing guide
- CI/CD testing explanation
- Platform-specific testing guide
- Debugging guide and best practices
- Update test.yml with reference to new workflow tests
- Remove tracked .fuzzforge/findings.db (already in .gitignore)
Tested locally:
- Single workflow test: python_sast (6.87s) ✅
- Fast test suite: 5/5 workflows passed ✅
- android_static_analysis (98.98s) ✅
- python_sast (6.78s) ✅
- secret_detection (38.04s) ✅
- gitleaks_detection (1.67s) ✅
- trufflehog_detection (1.64s) ✅
|
2025-10-29 14:34:31 +01:00 |
|