Skip to content

Full 5-Phase Workflow Testing

Manual testing, API testing, export validation, and performance testing for the RF Module Designer.


Manual Testing Workflow

Full 5-Phase Workflow Test

  1. Start servers:

    .\start-all-servers-windowed.ps1
    

  2. Phase I - Requirements:

  3. Navigate to http://localhost:5180
  4. Enter frequency: 2.4 GHz
  5. Enter output power: 30 dBm
  6. Select application: WiFi/Bluetooth
  7. Verify regulatory compliance warnings

  8. Phase II - Component Selection:

  9. Verify AI selects VCO, PA, driver, filter, connector
  10. Check alternative recommendations (should show top 5 with reasoning)
  11. Verify power levels are feasible
  12. Confirm 2,400+ components are searchable

  13. Phase III - Link Budget:

  14. Verify power flow calculations
  15. Run BOM validation (should pass 10/10 tests)
  16. Check electrical stress analysis
  17. Verify regulatory compliance

  18. Phase IV - PCB Stackup:

  19. Generate stackup (test with various layer counts: 4, 8, 16, 32)
  20. Verify impedance calculations (50Ω, 75Ω, 100Ω differential)
  21. Check thermal analysis (CTE validation)
  22. Test different materials (FR4, Rogers, MEGTRON6)

  23. Phase V - Export:

  24. Generate KiCad project (should create .kicad_sch, .kicad_pcb, .kicad_pro)
  25. Download ODB++ file (verify with ADS import)
  26. Export ADS substrate file
  27. Generate BOM with pricing

API Testing

Use FastAPI's built-in testing interface:

  1. Navigate to http://localhost:8000/docs
  2. Test endpoints:
  3. POST /api/components/search - Search for "VCO 2.4GHz"
  4. POST /api/agent/select/pa - Select PA for 2.4 GHz, 30 dBm
  5. POST /api/generate-rf-project - Generate complete KiCad project

Example API test:

curl -X POST "http://localhost:8000/api/agent/select/vco" \
  -H "Content-Type: application/json" \
  -d '{
    "frequency_ghz": 2.4,
    "output_power_dbm": 0,
    "phase_noise_dbc_hz": -100
  }'


Component Testing

Test specific component selection with various frequencies:

  • Sub-1GHz: 0.433 GHz, 0.915 GHz
  • 1-6GHz: 2.4 GHz (WiFi), 5.8 GHz (ISM)
  • 6-18GHz: 10 GHz (X-band), 15 GHz (Ku-band)
  • 18-40GHz: 24 GHz (K-band), 28 GHz (5G mmWave)

Verify: - Correct frequency band matching - Appropriate power handling - Realistic gain values - Valid datasheets


Export Testing

KiCad Export Validation

  1. Generate project from Phase V
  2. Download ZIP file
  3. Extract and open in KiCad 10.0
  4. Verify:
  5. Schematic opens without errors
  6. All components have footprints
  7. Connections are present
  8. Symbol library loads correctly
  9. PCB layout is readable

ODB++ Export Validation

  1. Generate ODB++ file
  2. Import into Keysight ADS or similar tool
  3. Verify layer structure matches design
  4. Check component placement

Stress Testing

BOM Validation Stress Tests (Should pass 10/10):

Run from Phase III: - Test 1-10: Various frequency/power combinations - Verify all tests pass - Check for electrical overstress warnings - Confirm component availability


Performance Testing

Database Preloading: - First request should be <100ms (after preload completes) - Subsequent requests should be near-instant (<10ms)

Request Deduplication: - Rapid component selection should trigger only 9 requests (not 45) - Verify in browser DevTools Network tab