Добавлены позитивные UI, API тесты для регистрации выпускника

This commit is contained in:
Vlad Smykov
2026-01-27 16:42:32 +03:00
parent b3417fa821
commit 94d7a97fe4
8 changed files with 166 additions and 87 deletions

View File

@@ -0,0 +1,55 @@
import { test, expect } from '@playwright/test';
import { RegisterPage } from '../../../page-objects/RegisterPage';
import {
generateFirstName,
generateLastName,
generateMiddleName,
generateLogin,
generatePhone,
} from '../../../utils/userGenerator';
import { createTempEmail, waitForConfirmationCode } from '../../../utils/mailTmApi';
test('Полная регистрация выпускника с подтверждением почты', async ({ page }) => {
// Создаём временный email
const { email, token } = await createTempEmail();
const firstName = generateFirstName();
const lastName = generateLastName();
const middleName = generateMiddleName();
const login = generateLogin();
const phone = generatePhone();
const password = '!Test123456';
const registerPage = new RegisterPage(page);
await registerPage.goto();
await registerPage.selectGraduateRole();
// Заполняем 1 этап регистрации
await registerPage.fillLastName(lastName);
await registerPage.fillFirstName(firstName);
await registerPage.fillMiddleName(middleName);
await registerPage.fillEmail(email);
await registerPage.fillLogin(login);
await registerPage.fillPhone(phone);
await registerPage.fillPassword(password);
await registerPage.fillPasswordRepeat(password);
await registerPage.clickNextButton();
// Заполняем 2 этап: образовательные данные
await registerPage.selectDepartment();
await registerPage.selectEducationLevel();
await registerPage.selectSpeciality();
await registerPage.selectProgram();
await registerPage.selectEducationForm();
await registerPage.checkConsentCheckbox();
await registerPage.submitGraduate();
await page.waitForTimeout(5000);
await expect(page).toHaveURL(/confirmation-code/);
const code = await waitForConfirmationCode(token, 60000);
await page.fill('input[name="code"]', code);
await page.click('button.RecoverPassword_button__5QDxM');
await expect(page).toHaveURL('https://rumc.dev.rdcenter.ru');
});