# Test info - Name: Панель администратора — Новости (позитивный сценарий) >> Успешное добавление новости с изображением - Location: /Users/vladsmykov/Desktop/Work/AUTOTESTS/CCPC_playwright/tests/ui/admin/news/admin-news-positive.spec.ts:5:7 # Error details ``` Error: locator.click: Target page, context or browser has been closed Call log: - waiting for getByRole('button', { name: 'Добавить' }) - locator resolved to - attempting click action 2 × waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling -
from
subtree intercepts pointer events - retrying click action - waiting 20ms - waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling -
from
subtree intercepts pointer events - retrying click action - waiting 100ms - waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - done scrolling at /Users/vladsmykov/Desktop/Work/AUTOTESTS/CCPC_playwright/tests/ui/admin/news/admin-news-positive.spec.ts:33:58 ``` # Test source ```ts 1 | import { test, expect } from '@playwright/test'; 2 | import path from 'path'; 3 | 4 | test.describe('Панель администратора — Новости (позитивный сценарий)', () => { 5 | test('Успешное добавление новости с изображением', async ({ page }) => { 6 | // 1. Авторизация как администратор 7 | await page.goto('https://ssas.dev.rdcenter.ru/login/authorization'); 8 | await page.getByPlaceholder('Email').fill('admin@sfedu.ru'); 9 | await page.getByPlaceholder('Пароль').fill('dfDk1oQQ6YGV@'); 10 | await page.getByRole('button', { name: 'Войти', exact: true }).click(); 11 | 12 | // 2. Переход в раздел "Панель администратора" → "Новости" 13 | await page.waitForURL('**/'); 14 | await page.getByText('Панель администратора').click(); 15 | await page.waitForURL('**/adminPage/news'); 16 | 17 | // 3. Нажатие кнопки "Добавить новость" 18 | await page.getByRole('button', { name: 'Добавить новость' }).click(); 19 | 20 | // 4. Заполнение формы 21 | const title = `Тестовая новость ${Date.now()}`; 22 | const content = 'Это автотестовая новость для проверки добавления.'; 23 | const imagePath = path.resolve(__dirname, '../../../../utils/test-data/image_1mb.png'); 24 | 25 | await page.getByPlaceholder('Заголовок').fill(title); 26 | await page.getByPlaceholder('Текст новости').fill(content); 27 | 28 | // 5. Загрузка изображения 29 | const fileInput = await page.locator('input[type="file"]'); 30 | await fileInput.setInputFiles(imagePath); 31 | 32 | // 6. Нажатие на кнопку "Добавить" > 33 | await page.getByRole('button', { name: 'Добавить' }).click(); | ^ Error: locator.click: Target page, context or browser has been closed 34 | 35 | // 7. Проверка, что новость появилась в списке 36 | await expect(page.locator('table')).toContainText(title); 37 | }); 38 | }); 39 | ```