Files
playwright-tests-ssas/allure-results/baf4ba96-5158-4652-835a-4ee4ff347f5c-attachment.md

7.7 KiB
Raw Blame History

Test info

  • Name: Панель администратора — Новости (негативные сценарии редактирования) >> Попытка ввести слишком длинные заголовок и текст при редактировании
  • Location: /Users/vladsmykov/Desktop/Work/AUTOTESTS/CCPC_playwright/tests/ui/admin/news/admin-news-update-negative.spec.ts:29:7

Error details

Error: Timed out 5000ms waiting for expect(locator).toContainText(expected)

Locator: locator('table')
Expected string: "Новость 1751387828068"
Received: <element(s) not found>
Call log:
  - expect.toContainText with timeout 5000ms
  - waiting for locator('table')

    at /Users/vladsmykov/Desktop/Work/AUTOTESTS/CCPC_playwright/tests/ui/admin/news/admin-news-update-negative.spec.ts:39:38

Page snapshot

- 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 "Заголовок": Новость 1751387828068
    - text: 21/100 Текст новости
    - textbox "Текст новости": Текст
    - text: Не менее десяти символов. 5/750 Фотография для новости
    - img "Фото загруженно"
    - button "Удалить файл":
      - 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

   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);
     |                                      ^ Error: Timed out 5000ms waiting for expect(locator).toContainText(expected)
  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();
  74 |   });
  75 |
  76 | });
  77 |