trip-planner/tests/e2e/screenshot.test.js

61 lines
No EOL
1.9 KiB
JavaScript

const fs = require('fs');
const path = require('path');
describe('Screenshot Debug Test', () => {
let driver;
beforeAll(async () => {
driver = await global.createDriver();
// Create screenshots directory if it doesn't exist
const screenshotsDir = path.join(__dirname, '../screenshots');
if (!fs.existsSync(screenshotsDir)) {
fs.mkdirSync(screenshotsDir);
}
});
afterAll(async () => {
await global.quitDriver(driver);
});
test('take screenshot of homepage', async () => {
console.log('Navigating to:', global.testConfig.baseUrl);
await driver.get(global.testConfig.baseUrl);
// Wait for page to load
await driver.sleep(3000);
// Take screenshot
const screenshot = await driver.takeScreenshot();
const screenshotPath = path.join(__dirname, '../screenshots/homepage.png');
fs.writeFileSync(screenshotPath, screenshot, 'base64');
console.log('Screenshot saved to:', screenshotPath);
// Get page info
const title = await driver.getTitle();
const url = await driver.getCurrentUrl();
console.log('Page title:', title);
console.log('Current URL:', url);
// Try to find and screenshot the auth container
try {
const authContainer = await driver.findElement({ className: 'auth-container' });
console.log('Found auth container');
// Click register button and take screenshot
const registerButton = await driver.findElement({ css: '.auth-toggle button:last-child' });
await registerButton.click();
await driver.sleep(1000);
const screenshot2 = await driver.takeScreenshot();
const screenshotPath2 = path.join(__dirname, '../screenshots/register-form.png');
fs.writeFileSync(screenshotPath2, screenshot2, 'base64');
console.log('Register form screenshot saved to:', screenshotPath2);
} catch (e) {
console.log('Auth container not found:', e.message);
}
expect(true).toBe(true);
}, 60000);
});