23 lines
1.2 KiB
TypeScript
23 lines
1.2 KiB
TypeScript
import { test, expect } from '../../fixtures';
|
|
|
|
test.describe('سناریوی مدیریت صفحات خطای کلاینت و سرور (Error Pages 404 & 500)', () => {
|
|
test('ورود به آدرس ناموجود -> راستیآزمایی رندر کامل صفحه ۴۰۴ و دکمه بازگشت به خانه', async ({ page }) => {
|
|
// 1. ورود به یک آدرس کاملاً نامعتبر و تصادفی
|
|
await page.goto('/some-completely-invalid-nonexistent-slug-404', { waitUntil: 'domcontentloaded' });
|
|
|
|
// 2. راستیآزمایی تیتر و محتوای صفحه ۴۰۴
|
|
const notFoundHeading = page.locator('h1').filter({ hasText: 'صفحه پیدا نشد!' });
|
|
await expect(notFoundHeading).toBeVisible({ timeout: 15000 });
|
|
|
|
const notFoundBadge = page.locator('div').filter({ hasText: '۴۰۴' }).first();
|
|
await expect(notFoundBadge).toBeVisible();
|
|
|
|
// 3. راستیآزمایی دکمه بازگشت به خانه و ناوبری موفق به صفحه اصلی
|
|
const homeBtn = page.getByRole('button', { name: /بازگشت به خانه/i }).first();
|
|
await expect(homeBtn).toBeVisible();
|
|
await homeBtn.click();
|
|
|
|
await expect(page).toHaveURL('/');
|
|
});
|
|
});
|