import { FullConfig } from '@playwright/test'; import { generateManifest } from '../utils/screenshot-helper'; /** * Global Teardown * Runs once after all tests complete * * Responsibilities: * - Generate screenshot manifest * - Clean up temporary files (if needed) * - Generate summary report * - Perform any cleanup tasks */ async function globalTeardown(config: FullConfig) { console.log('\n๐Ÿ Starting global teardown...\n'); // 1. Generate screenshot manifest try { generateManifest(); } catch (error) { console.error('โš ๏ธ Failed to generate screenshot manifest:', error); } // 2. Generate test summary generateSummary(); // 3. Optional: Clean up temporary files // cleanupTempFiles(); console.log('\nโœ… Global teardown complete\n'); } /** * Generate test execution summary */ function generateSummary() { console.log('\n๐Ÿ“Š Test Execution Summary:'); console.log('โ”€'.repeat(50)); // Test results are available through Playwright's built-in reporters // This is just a placeholder for custom summary logic console.log('โœ… Check playwright-report/ for detailed results'); console.log('โœ… Screenshots available in screenshots/current/'); console.log('โœ… Test results available in test-results/'); console.log('\n๐Ÿ’ก Next steps:'); console.log(' 1. Review screenshots for visual issues'); console.log(' 2. Compare with baselines if available'); console.log(' 3. Run visual analysis: npm run analyze:visual'); console.log(' 4. Generate fix recommendations if issues found'); } /** * Optional: Clean up temporary files */ function cleanupTempFiles() { // Add cleanup logic here if needed // For example: remove old screenshots, clear cache, etc. console.log('๐Ÿงน Cleaning up temporary files...'); } export default globalTeardown;