Добавлен allure report, для визуализации прохождения тестов
This commit is contained in:
67
tests/ui/recovery/recover-negative.spec.ts
Normal file
67
tests/ui/recovery/recover-negative.spec.ts
Normal file
@@ -0,0 +1,67 @@
|
||||
import { test, expect } from '@playwright/test';
|
||||
import { RecoverPage } from '../../../page-objects/RecoverPage';
|
||||
import { recovery, recoveryErrors, users } from '../../../utils/test-data';
|
||||
|
||||
test.describe('Негативные сценарии восстановления пароля', () => {
|
||||
|
||||
test('Некорректный email (формат)', async ({ page }) => {
|
||||
const recoverPage = new RecoverPage(page);
|
||||
await recoverPage.goto();
|
||||
|
||||
await recoverPage.enterEmail('invalid-email');
|
||||
await expect(recoverPage.emailFormatError).toBeVisible();
|
||||
});
|
||||
|
||||
test('Несуществующий email', async ({ page }) => {
|
||||
const recoverPage = new RecoverPage(page);
|
||||
await recoverPage.goto();
|
||||
|
||||
await recoverPage.enterEmail(recovery.emailNotFound);
|
||||
await expect(recoverPage.emailFormatError).toBeVisible(); // сервер показывает ту же ошибку
|
||||
});
|
||||
|
||||
test('Неверный код подтверждения', async ({ page }) => {
|
||||
const recoverPage = new RecoverPage(page);
|
||||
await recoverPage.goto();
|
||||
|
||||
await recoverPage.enterEmail(recovery.emailExists);
|
||||
await expect(page).toHaveURL(/\/recoverpassword\/checkemail/);
|
||||
|
||||
await recoverPage.enterVerificationCode('654321'); // неверный
|
||||
await expect(recoverPage.codeError).toBeVisible();
|
||||
});
|
||||
|
||||
test('Некорректный новый пароль', async ({ page }) => {
|
||||
const recoverPage = new RecoverPage(page);
|
||||
await recoverPage.goto();
|
||||
|
||||
await recoverPage.enterEmail(recovery.emailExists);
|
||||
await recoverPage.enterVerificationCode(recovery.verificationCode);
|
||||
|
||||
await recoverPage.enterNewPassword(users.newPassword.weakPassword, users.newPassword.weakPassword);
|
||||
await expect(recoverPage.passwordError).toBeVisible();
|
||||
});
|
||||
|
||||
test('Пустое поле "Повторите пароль"', async ({ page }) => {
|
||||
const recoverPage = new RecoverPage(page);
|
||||
await recoverPage.goto();
|
||||
|
||||
await recoverPage.enterEmail(recovery.emailExists);
|
||||
await recoverPage.enterVerificationCode(recovery.verificationCode);
|
||||
|
||||
await recoverPage.enterNewPassword(users.newPassword.password, '');
|
||||
await expect(recoverPage.passwordRepeatError).toBeVisible();
|
||||
});
|
||||
|
||||
test('Пароли не совпадают', async ({ page }) => {
|
||||
const recoverPage = new RecoverPage(page);
|
||||
await recoverPage.goto();
|
||||
|
||||
await recoverPage.enterEmail(recovery.emailExists);
|
||||
await recoverPage.enterVerificationCode(recovery.verificationCode);
|
||||
|
||||
await recoverPage.enterNewPassword(users.newPassword.password, users.newPassword.mismatchPassword);
|
||||
await expect(recoverPage.mismatchPasswordError).toBeVisible();
|
||||
});
|
||||
|
||||
});
|
||||
Reference in New Issue
Block a user