Добавлены NewsAdminPage с описанием раздела Новости и admin-news-positive.spec с позитивным сценарием

This commit is contained in:
Vlad Smykov
2025-06-19 18:26:55 +03:00
parent 66f60f10e9
commit 88944c729f
40 changed files with 2110 additions and 0 deletions

View File

@@ -0,0 +1,39 @@
import { test, expect } from '@playwright/test';
import path from 'path';
test.describe('Панель администратора — Новости (позитивный сценарий)', () => {
test('Успешное добавление новости с изображением', async ({ page }) => {
// 1. Авторизация как администратор
await page.goto('https://ssas.dev.rdcenter.ru/login/authorization');
await page.getByPlaceholder('Email').fill('admin@sfedu.ru');
await page.getByPlaceholder('Пароль').fill('dfDk1oQQ6YGV@');
await page.getByRole('button', { name: 'Войти', exact: true }).click();
// 2. Переход в раздел "Панель администратора" → "Новости"
await page.waitForURL('**/');
await page.getByText('Панель администратора').click();
await page.waitForURL('**/adminPage/news');
// 3. Нажатие кнопки "Добавить новость"
await page.getByRole('button', { name: 'Добавить новость' }).click();
// 4. Заполнение формы
const title = `Тестовая новость ${Date.now()}`;
const content = 'Это автотестовая новость для проверки добавления.';
const imagePath = path.resolve(__dirname, '../../../../utils/test-data/image_1mb.png');
await page.getByPlaceholder('Заголовок').fill(title);
await page.getByPlaceholder('Текст новости').fill(content);
// 5. Загрузка изображения
const fileInput = await page.locator('input[type="file"]');
await fileInput.setInputFiles(imagePath);
await page.getByRole('button', { name: 'Сохранить' }).click();
// 6. Нажатие на кнопку "Добавить"
await page.getByRole('button', { name: 'Добавить' }).click();
// 7. Проверка, что новость появилась в списке
await expect(page.locator('table')).toContainText(title);
});
});