test: less fragile - use semantic locators\helpers

This commit is contained in:
2026-09-25 17:40:58 +05:00
parent 16d4288912
commit 5313567e70
26 changed files with 436 additions and 274 deletions
+10 -10
View File
@@ -1,12 +1,12 @@
import { expect, test } from "playwright/test";
import { opaquePng } from "./helpers/fixtures";
import { openTool, uploadImage } from "./helpers/page";
import { openTool, resultImage, uploadImage } from "./helpers/page";
// FIXME: В файле зарегистрированы баги preview (см. docs/checklist-manual-testing.md
// → «Известные баги preview»). Тела assert'ят ОЖИДАЕМОЕ поведение. Статус fixme
// означает «мы знаем, что сейчас падает»; когда баг починят — убрать fixme и
// тест станет зелёным «сам по себе». (Тест про локализацию ошибок переехал в
// i18n.spec.ts — он больше не issue.)
// FIXME: В файле зарегистрированы баги production UI (см.
// `docs/backlog.md` и `docs/checklist-manual-testing.md`, раздел G). Тела
// assert'ят ОЖИДАЕМОЕ поведение. Статус fixme означает «мы знаем, что сейчас
// падает»; когда баг починят — убрать fixme и тест станет зелёным «сам по
// себе».
test.describe("known bugs — documented as fixme", () => {
test.fixme("resize-png: upload produces a resized result (no alert)", async ({
@@ -14,8 +14,8 @@ test.describe("known bugs — documented as fixme", () => {
}) => {
await openTool(page, "resize-png");
await uploadImage(page, opaquePng);
await expect(page.locator("[role='alert']")).toHaveCount(0);
await expect(page.locator('img[alt="Result image"]')).toBeVisible();
await expect(page.getByRole("alert")).toHaveCount(0);
await expect(resultImage(page)).toBeVisible();
});
test.fixme("crop-png: upload produces a cropped result (no alert)", async ({
@@ -23,7 +23,7 @@ test.describe("known bugs — documented as fixme", () => {
}) => {
await openTool(page, "crop-png");
await uploadImage(page, opaquePng);
await expect(page.locator("[role='alert']")).toHaveCount(0);
await expect(page.locator('img[alt="Result image"]')).toBeVisible();
await expect(page.getByRole("alert")).toHaveCount(0);
await expect(resultImage(page)).toBeVisible();
});
});