Add Export APIs & Optimization Checks (Phases 14-15)

Features Added:
- HAR file export endpoint (/api/export/:testId/har)
- CSV metrics export endpoint (/api/export/:testId/csv)
- Optimization checker analyzing 8 categories:
  * Image optimization
  * Text compression (gzip/brotli)
  * Cache policies
  * Render-blocking resources
  * Unused JavaScript
  * Unused CSS
  * HTTP/2 adoption
  * Code minification
- Frontend optimization checklist with color-coded warnings
- Export buttons integrated into results UI

Technical Implementation:
- Created lib/optimization-checker.js with Lighthouse audit analysis
- Added optimization score calculation (0-100%)
- Potential time savings displayed for each check
- Export buttons wired to download endpoints
- Optimization data saved alongside each test result
This commit is contained in:
2025-12-28 01:41:33 +11:00
parent 57c5209108
commit fd67a8a4fa
5 changed files with 211 additions and 2 deletions

View File

@@ -150,6 +150,12 @@ async function _executeTest(url, options) {
const harData = harParser.parseHAR(lhr);
const harPath = path.join(reportDir, `${testId}.har.json`);
fs.writeFileSync(harPath, JSON.stringify(harData, null, 2));
// Run optimization checks
const optimizationChecker = require('./optimization-checker');
const optimizations = optimizationChecker.analyzeOptimizations(lhr);
const optPath = path.join(reportDir, `${testId}.optimizations.json`);
fs.writeFileSync(optPath, JSON.stringify(optimizations, null, 2));
await chrome.kill();