Files
playwright-tests-ssas/allure-results/37511ffb-745e-4513-9e2f-4bba1672912f-attachment.md

202 lines
7.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Test info
- Name: Панель администратора — Новости (негативные сценарии редактирования) >> Попытка загрузить изображение больше 20 Мб при редактировании
- Location: /Users/vladsmykov/Desktop/Work/AUTOTESTS/CCPC_playwright/tests/ui/admin/news/admin-news-update-negative.spec.ts:56:7
# Error details
```
Error: Timed out 5000ms waiting for expect(locator).toBeVisible()
Locator: getByText('Размер файла превышает')
Expected: visible
Received: <element(s) not found>
Call log:
- expect.toBeVisible with timeout 5000ms
- waiting for getByText('Размер файла превышает')
at /Users/vladsmykov/Desktop/Work/AUTOTESTS/CCPC_playwright/tests/ui/admin/news/admin-news-update-negative.spec.ts:73:60
```
# Page snapshot
```yaml
- main:
- main:
- button
- button "Скрыть Close":
- text: Скрыть
- img "Close"
- list:
- listitem:
- text: Личный кабинет
- img "Arrow"
- listitem:
- text: Главная
- img "Arrow"
- listitem:
- text: Автору
- img "Arrow"
- listitem:
- text: Новости
- img "Arrow"
- listitem:
- text: Участники
- img "Arrow"
- listitem:
- text: Оргкомитет
- img "Arrow"
- paragraph: 02.07.2025
- paragraph: Этап
- img
- paragraph: Панель администратора
- list:
- link "Новости":
- /url: /adminPage/news
- listitem:
- img
- text: Новости
- link "Конференция":
- /url: /adminPage/conferences
- listitem:
- img
- text: Конференция
- link "Оргкомитет":
- /url: /adminPage/committee
- listitem:
- img
- text: Оргкомитет
- link "Участники":
- /url: /adminPage/participants
- listitem:
- img
- text: Участники
- link "Оргвзнос":
- /url: /adminPage/payment
- listitem:
- img
- text: Оргвзнос
- link "Архив фото":
- /url: /adminPage/photoalbums
- listitem:
- img
- text: Архив фото
- link "Архив сборников":
- /url: /adminPage/collections
- listitem:
- img
- text: Архив сборников
- link "Организаторы и партнёры":
- /url: /adminPage/organizerspartners
- listitem:
- img
- text: Организаторы и партнёры
- button "Назад Добавление новости":
- img "Назад"
- text: Добавление новости
- text: Заголовок новости
- textbox "Заголовок": Новость 1751389484264
- text: 21/100 Текст новости
- textbox "Текст новости": Текст для проверки большого изображения
- text: 39/750 Фотография для новости
- img "Фото загруженно"
- button "Удалить файл":
- img "Удалить файл"
- button "Удалить":
- text: Удалить
- img
- button "Сохранить"
- paragraph: Всероссийская научная конференция "Системный синтез и прикладная синергетика"
- paragraph: 19 - 26 июня 2025 года Таганрог
- paragraph: "Напишите нам:"
- paragraph:
- text: "e-mail:"
- link "ssas@ictis.sfedu.ru":
- /url: mailto:ssas@ictis.sfedu.ru
- text: Сайт разработан Центром исследований и разработки ИКТИБ
- link "Ознакомиться с руководством пользователя":
- /url: /static/media/user_manual.6c3dacbaa294cf625b5b.pdf
```
# Test source
```ts
1 | import { test, expect } from '@playwright/test';
2 | import path from 'path';
3 | import { NewsAdminPage } from '../../../../page-objects/NewsAdminPage';
4 |
5 | test.describe('Панель администратора — Новости (негативные сценарии редактирования)', () => {
6 |
7 | test('Очистка полей при редактировании и сохранение', async ({ page }) => {
8 | const newsPage = new NewsAdminPage(page);
9 | await newsPage.loginAsAdmin();
10 | await newsPage.goto();
11 |
12 | const title = `Новость ${Date.now()}`;
13 | const content = 'Текст для редактирования';
14 | const imagePath = path.resolve(__dirname, '../../../../utils/test-data/image_1mb.png');
15 |
16 | await newsPage.addNews({ title, content, imagePath });
17 | await expect(newsPage.newsTable).toContainText(title);
18 |
19 | await newsPage.clickEditButtonForNews(title);
20 |
21 | await newsPage.titleTextarea.fill('');
22 | await newsPage.contentTextarea.fill('');
23 | await page.getByRole('button', { name: 'Сохранить' }).click();
24 |
25 | await expect(newsPage.emptyTitleError).toBeVisible();
26 | await expect(newsPage.emptyContentError).toBeVisible();
27 | });
28 |
29 | test('Попытка ввести слишком длинные заголовок и текст при редактировании', async ({ page }) => {
30 | const newsPage = new NewsAdminPage(page);
31 | await newsPage.loginAsAdmin();
32 | await newsPage.goto();
33 |
34 | const title = `Новость ${Date.now()}`;
35 | const content = 'Текст для проверки длинного текста';
36 | const imagePath = path.resolve(__dirname, '../../../../utils/test-data/image_1mb.png');
37 |
38 | await newsPage.addNews({ title, content, imagePath });
39 | await expect(newsPage.newsTable).toContainText(title);
40 |
41 | await newsPage.clickEditButtonForNews(title);
42 |
43 | const longTitle = 'A'.repeat(150);
44 | const longContent = 'B'.repeat(1000);
45 |
46 | await newsPage.titleTextarea.fill(longTitle);
47 | await newsPage.contentTextarea.fill(longContent);
48 |
49 | const titleValue = await newsPage.titleTextarea.inputValue();
50 | const contentValue = await newsPage.contentTextarea.inputValue();
51 |
52 | expect(titleValue.length).toBeLessThanOrEqual(100);
53 | expect(contentValue.length).toBeLessThanOrEqual(750);
54 | });
55 |
56 | test('Попытка загрузить изображение больше 20 Мб при редактировании', async ({ page }) => {
57 | const newsPage = new NewsAdminPage(page);
58 | await newsPage.loginAsAdmin();
59 | await newsPage.goto();
60 |
61 | const title = `Новость ${Date.now()}`;
62 | const content = 'Текст для проверки большого изображения';
63 | const imagePath = path.resolve(__dirname, '../../../../utils/test-data/image_1mb.png');
64 |
65 | await newsPage.addNews({ title, content, imagePath });
66 | await expect(newsPage.newsTable).toContainText(title);
67 |
68 | await newsPage.clickEditButtonForNews(title);
69 |
70 | const largeImagePath = path.resolve(__dirname, '../../../../utils/test-data/image_45mb.png');
71 | await newsPage.fileInput.setInputFiles(largeImagePath);
72 |
> 73 | await expect(page.getByText('Размер файла превышает')).toBeVisible();
| ^ Error: Timed out 5000ms waiting for expect(locator).toBeVisible()
74 | });
75 |
76 | });
77 |
```