2.4 KiB
2.4 KiB
DualEA Comprehensive Test Suite
Overview
This suite covers unit, integration, and system-level tests for all major modules of the DualEA architecture, ensuring every feature works both independently and together. All tests are implemented as MQL5 scripts in the Tests/ directory and can be run from MetaEditor or via batch.
Test Coverage Matrix
| Module/Class | Unit Test | Integration Test | System Test |
|---|---|---|---|
| StrategySelector | Test_StrategySelector | Test_Integration | Test_System |
| SessionManager | Test_SessionManager | Test_Integration | Test_System |
| CorrelationManager | Test_CorrelationManager | Test_Integration | Test_System |
| VolatilitySizer | Test_VolatilitySizer | Test_Integration | Test_System |
| GateManager | Test_GateManager | Test_Integration | Test_System |
| PolicyEngine | (in Test_System) | (in Test_System) | Test_System |
| LearningBridge | (in Test_System) | (in Test_System) | Test_System |
| CFeaturesKB | (in Test_System) | (in Test_System) | Test_System |
| KnowledgeBase | (in Test_System) | (in Test_System) | Test_System |
How to Run
- Open MetaEditor.
- Open any test script in
Tests/(e.g.,Test_StrategySelector.mq5). - Press F5 to run. Output will be in the MetaTrader log.
- For full system validation, run
Test_System.mq5.
Expected Output
- Each test prints PASS/FAIL for every feature and scenario.
- System/integration tests print info about cross-feature behavior, logs, and file output (CSV, etc).
- All failures are explicit in the log.
Extending the Suite
- For new features/modules, create
Test_<Feature>.mq5inTests/. - Add the new test to the coverage matrix above.
- Use the same pattern: setup, simulate, assert, log.
Edge Cases & Fault Injection
- Integration and system tests simulate pointer faults, file I/O errors, and invalid configs.
- All modules are tested for error handling as well as normal operation.
CI/CD (Recommended)
- Add a batch script to run all tests nightly and parse logs for failures.
- Export coverage results for dashboard display.
Last updated: 2025-09-25