495 lines
14 KiB
TypeScript
495 lines
14 KiB
TypeScript
describe("Тестирование полей вопросов", () => {
|
|
beforeEach(() => {
|
|
cy.visit("http://localhost:3000");
|
|
cy.wait(1000);
|
|
cy.contains("Регистрация / Войти").click();
|
|
const login = "valid_user@exammple.com";
|
|
const password = "valid_password";
|
|
|
|
cy.get("#email").type(login);
|
|
cy.get("#password").type(password);
|
|
cy.get('button[type="submit"]').click();
|
|
});
|
|
|
|
it("Тест на правильность отображения вопросов в превью и тестовом просмотре ", () => {
|
|
cy.get('[data-cy="create-quiz"]').click();
|
|
cy.wait(1000);
|
|
cy.get('button[data-cy="create-quiz-card"]').eq(0).click();
|
|
cy.wait(1000);
|
|
cy.get('button[data-cy="select-quiz-layout-standard"]').click();
|
|
cy.get('input[type="checkbox"]').click();
|
|
|
|
cy.get('[data-cy="setup-questions"]').click();
|
|
|
|
cy.wait(500);
|
|
|
|
cy.get(`[data-cy="select-questiontype-images"]`).click();
|
|
|
|
cy.get(
|
|
'[data-cy="checkbox-optional-question"] > .PrivateSwitchBase-input',
|
|
).click();
|
|
|
|
cy.get("#questionTitle").type("Заголовок вопроса");
|
|
|
|
cy.get('[data-cy="quiz-variant-question-answer"]')
|
|
.eq(0)
|
|
.type("1")
|
|
.type("{enter}");
|
|
cy.get('[data-cy="quiz-variant-question-answer"]')
|
|
.eq(1)
|
|
.should("have.value", "")
|
|
.type("2")
|
|
.type("{enter}");
|
|
|
|
// превью
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
cy.wait(2000);
|
|
|
|
cy.get(".MuiTypography-h6")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
cy.get(":nth-child(1) > .MuiFormControlLabel-root")
|
|
.should("exist")
|
|
.and("have.text", "1");
|
|
cy.get(":nth-child(2) > .MuiFormControlLabel-root")
|
|
.should("exist")
|
|
.and("have.text", "2");
|
|
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
|
|
cy.visit("http://localhost:3000/view");
|
|
cy.wait(2000);
|
|
|
|
// проверка введёных значений
|
|
cy.get(".MuiTypography-h5")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
|
|
cy.get(":nth-child(1) > .MuiFormControlLabel-root")
|
|
.should("exist")
|
|
.and("have.text", "1");
|
|
cy.get(":nth-child(2) > .MuiFormControlLabel-root")
|
|
.should("exist")
|
|
.and("have.text", "2");
|
|
|
|
cy.visit("http://localhost:3000/edit");
|
|
|
|
cy.wait(500);
|
|
cy.get('[data-cy="delete-question"]').click();
|
|
cy.wait(5000);
|
|
cy.get('[data-cy="create-question"]').click();
|
|
|
|
//Варианты ответов +
|
|
cy.get(`[data-cy="select-questiontype-variant"]`).click();
|
|
|
|
cy.get(
|
|
'[data-cy="checkbox-optional-question"] > .PrivateSwitchBase-input',
|
|
).click();
|
|
|
|
cy.get("#questionTitle").type("Заголовок вопроса");
|
|
|
|
cy.get('[data-cy="quiz-variant-question-answer"]')
|
|
.eq(0)
|
|
.type("1")
|
|
.type("{enter}");
|
|
cy.get('[data-cy="quiz-variant-question-answer"]')
|
|
.eq(1)
|
|
.should("have.value", "")
|
|
.type("2")
|
|
.type("{enter}");
|
|
|
|
// превью
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
cy.wait(2000);
|
|
|
|
cy.get(".MuiTypography-h6")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
cy.get(".MuiFormControlLabel-label").contains("1").should("exist");
|
|
cy.get(".MuiFormControlLabel-label").contains("2").should("exist");
|
|
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
|
|
cy.visit("http://localhost:3000/view");
|
|
cy.wait(2000);
|
|
|
|
// проверка введёных значений
|
|
cy.get(".MuiTypography-h5")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
|
|
cy.get(".MuiFormControlLabel-label").contains("1").should("exist");
|
|
cy.get(".MuiFormControlLabel-label").contains("2").should("exist");
|
|
|
|
cy.visit("http://localhost:3000/edit");
|
|
|
|
cy.wait(500);
|
|
cy.get('[data-cy="delete-question"]').click();
|
|
cy.wait(5000);
|
|
cy.get('[data-cy="create-question"]').click();
|
|
|
|
// Варианты и картинка +
|
|
|
|
cy.get(`[data-cy="select-questiontype-varimg"]`).click();
|
|
|
|
cy.get(
|
|
'[data-cy="checkbox-optional-question"] > .PrivateSwitchBase-input',
|
|
).click();
|
|
|
|
cy.get("#questionTitle").type("Заголовок вопроса");
|
|
|
|
cy.get('[data-cy="quiz-variant-question-answer"]')
|
|
.eq(0)
|
|
.type("1")
|
|
.type("{enter}");
|
|
cy.get('[data-cy="quiz-variant-question-answer"]')
|
|
.eq(1)
|
|
.should("have.value", "")
|
|
.type("2")
|
|
.type("{enter}");
|
|
|
|
// превью
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
cy.wait(2000);
|
|
|
|
cy.get(".MuiTypography-h6")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
cy.get(".MuiFormControlLabel-label").contains("1").should("exist");
|
|
cy.get(".MuiFormControlLabel-label").contains("2").should("exist");
|
|
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
|
|
cy.visit("http://localhost:3000/view");
|
|
cy.wait(2000);
|
|
|
|
// проверка введёных значений
|
|
cy.get(".MuiTypography-h5")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
|
|
cy.get(".MuiFormControlLabel-label").contains("1").should("exist");
|
|
cy.get(".MuiFormControlLabel-label").contains("2").should("exist");
|
|
|
|
cy.visit("http://localhost:3000/edit");
|
|
|
|
cy.wait(500);
|
|
cy.get('[data-cy="delete-question"]').click();
|
|
cy.wait(5000);
|
|
cy.get('[data-cy="create-question"]').click();
|
|
|
|
//Эмоджи +
|
|
|
|
cy.get(`[data-cy="select-questiontype-emoji"]`).click();
|
|
|
|
cy.get(
|
|
'[data-cy="checkbox-optional-question"] > .PrivateSwitchBase-input',
|
|
).click();
|
|
|
|
cy.get("#questionTitle").type("Заголовок вопроса");
|
|
|
|
cy.get('[data-cy="quiz-variant-question-answer"]')
|
|
.eq(0)
|
|
.type("1")
|
|
.type("{enter}");
|
|
cy.get('[data-cy="quiz-variant-question-answer"]')
|
|
.eq(1)
|
|
.should("have.value", "")
|
|
.type("2")
|
|
.type("{enter}");
|
|
|
|
// превью
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
cy.wait(2000);
|
|
|
|
cy.get(".MuiTypography-h6")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
cy.get(".MuiFormControlLabel-label").contains("1").should("exist");
|
|
cy.get(".MuiFormControlLabel-label").contains("2").should("exist");
|
|
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
|
|
cy.visit("http://localhost:3000/view");
|
|
cy.wait(2000);
|
|
|
|
// проверка введёных значений
|
|
cy.get(".MuiTypography-h5")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
|
|
cy.get(".MuiFormControlLabel-label").contains("1").should("exist");
|
|
cy.get(".MuiFormControlLabel-label").contains("2").should("exist");
|
|
|
|
cy.visit("http://localhost:3000/edit");
|
|
|
|
cy.wait(500);
|
|
cy.get('[data-cy="delete-question"]').click();
|
|
cy.wait(5000);
|
|
cy.get('[data-cy="create-question"]').click();
|
|
|
|
//Своё поле для ввода +
|
|
cy.get(`[data-cy="select-questiontype-text"]`).click();
|
|
|
|
cy.get(
|
|
'[data-cy="checkbox-optional-question"] > .PrivateSwitchBase-input',
|
|
).click();
|
|
|
|
cy.get("#questionTitle").type("Заголовок вопроса");
|
|
|
|
cy.get('input[placeholder="Пример ответа"]')
|
|
.eq(0)
|
|
.type("1")
|
|
.type("{enter}");
|
|
|
|
// превью
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
cy.wait(2000);
|
|
|
|
cy.get(".MuiTypography-h6")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
|
|
cy.get('input[placeholder="1"]').should("exist");
|
|
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
|
|
cy.visit("http://localhost:3000/view");
|
|
cy.wait(2000);
|
|
|
|
// проверка введёных значений
|
|
cy.get(".MuiTypography-h5")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
|
|
cy.get('input[placeholder="1"]').should("exist");
|
|
|
|
cy.visit("http://localhost:3000/edit");
|
|
|
|
cy.wait(500);
|
|
cy.get('[data-cy="delete-question"]').click();
|
|
cy.wait(5000);
|
|
cy.get('[data-cy="create-question"]').click();
|
|
|
|
//Выпадающий список +
|
|
|
|
cy.get(`[data-cy="select-questiontype-select"]`).click();
|
|
|
|
cy.get(
|
|
'[data-cy="checkbox-optional-question"] > .PrivateSwitchBase-input',
|
|
).click();
|
|
|
|
cy.get("#questionTitle").type("Заголовок вопроса");
|
|
|
|
cy.get('[data-cy="quiz-variant-question-answer"]')
|
|
.eq(0)
|
|
.type("1")
|
|
.type("{enter}");
|
|
cy.get('[data-cy="quiz-variant-question-answer"]')
|
|
.eq(1)
|
|
.should("have.value", "")
|
|
.type("2")
|
|
.type("{enter}");
|
|
|
|
// превью
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
cy.wait(2000);
|
|
|
|
cy.get(".MuiTypography-h6")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
|
|
cy.get(".MuiFormControlLabel-label").contains("1").should("exist");
|
|
cy.get(".MuiFormControlLabel-label").contains("2").should("exist");
|
|
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
|
|
cy.visit("http://localhost:3000/view");
|
|
cy.wait(2000);
|
|
|
|
// проверка введёных значений
|
|
cy.get(".MuiTypography-h5")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
|
|
cy.get(".MuiFormControlLabel-label").contains("1").should("exist");
|
|
cy.get(".MuiFormControlLabel-label").contains("2").should("exist");
|
|
|
|
cy.visit("http://localhost:3000/edit");
|
|
|
|
cy.wait(500);
|
|
cy.get('[data-cy="delete-question"]').click();
|
|
cy.wait(5000);
|
|
cy.get('[data-cy="create-question"]').click();
|
|
|
|
//Дата +
|
|
cy.get(`[data-cy="select-questiontype-date"]`).click();
|
|
cy.get(
|
|
'[data-cy="checkbox-optional-question"] > .PrivateSwitchBase-input',
|
|
).click();
|
|
|
|
cy.get("#questionTitle").type("Заголовок вопроса");
|
|
|
|
// превью
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
cy.wait(2000);
|
|
|
|
cy.get(".MuiTypography-h6")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
|
|
cy.visit("http://localhost:3000/view");
|
|
cy.wait(2000);
|
|
|
|
// проверка введёных значений
|
|
cy.get(".MuiTypography-h5")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
|
|
cy.wait(500);
|
|
cy.get('[data-cy="delete-question"]').click();
|
|
cy.wait(5000);
|
|
cy.get('[data-cy="create-question"]').click();
|
|
|
|
//Ползунок +
|
|
|
|
cy.get(`[data-cy="select-questiontype-number"]`).click();
|
|
cy.get(
|
|
'[data-cy="checkbox-optional-question"] > .PrivateSwitchBase-input',
|
|
).click();
|
|
|
|
cy.get("#questionTitle").type("Заголовок вопроса");
|
|
|
|
// превью
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
cy.wait(2000);
|
|
|
|
cy.get(".MuiTypography-h6")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
cy.get(".MuiTypography-p")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
|
|
cy.visit("http://localhost:3000/view");
|
|
cy.wait(2000);
|
|
|
|
// проверка введёных значений
|
|
cy.get(".MuiTypography-h5")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
|
|
cy.wait(500);
|
|
cy.get('[data-cy="delete-question"]').click();
|
|
cy.wait(5000);
|
|
cy.get('[data-cy="create-question"]').click();
|
|
|
|
// Загрузка файла +
|
|
|
|
cy.get(`[data-cy="select-questiontype-file"]`).click();
|
|
cy.get(
|
|
'[data-cy="checkbox-optional-question"] > .PrivateSwitchBase-input',
|
|
).click();
|
|
|
|
cy.get("#questionTitle").type("Заголовок вопроса");
|
|
|
|
// превью
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
cy.wait(2000);
|
|
|
|
cy.get(".MuiTypography-h6")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
|
|
cy.visit("http://localhost:3000/view");
|
|
cy.wait(2000);
|
|
|
|
// проверка введёных значений
|
|
cy.get(".MuiTypography-h5")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
|
|
cy.wait(500);
|
|
cy.get('[data-cy="delete-question"]').click();
|
|
cy.wait(5000);
|
|
cy.get('[data-cy="create-question"]').click();
|
|
|
|
// Страница
|
|
|
|
cy.get(`[data-cy="select-questiontype-page"]`).click();
|
|
cy.get(
|
|
'[data-cy="checkbox-optional-question"] > .PrivateSwitchBase-input',
|
|
).click();
|
|
|
|
cy.get("#questionTitle").type("Заголовок вопроса");
|
|
cy.get("#addText").type("Добавляю текст");
|
|
|
|
// превью
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
cy.wait(2000);
|
|
|
|
cy.get(".MuiTypography-h6")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
cy.get(".MuiTypography-p")
|
|
.should("exist")
|
|
.and("have.text", "Добавляю текст");
|
|
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
|
|
cy.visit("http://localhost:3000/view");
|
|
cy.wait(2000);
|
|
|
|
// проверка введёных значений
|
|
cy.get(".MuiTypography-h5")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
cy.get(".MuiTypography-p")
|
|
.should("exist")
|
|
.and("have.text", "Добавляю текст");
|
|
|
|
cy.wait(500);
|
|
cy.get('[data-cy="delete-question"]').click();
|
|
cy.wait(5000);
|
|
cy.get('[data-cy="create-question"]').click();
|
|
|
|
// Рейтинг
|
|
|
|
cy.get(`[data-cy="select-questiontype-rating"]`).click();
|
|
cy.get(
|
|
'[data-cy="checkbox-optional-question"] > .PrivateSwitchBase-input',
|
|
).click();
|
|
|
|
cy.get("#questionTitle").type("Заголовок вопроса");
|
|
|
|
// превью
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
cy.wait(2000);
|
|
|
|
cy.get(".MuiTypography-h6")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
|
|
cy.get(`button[data-cy="button-preview"]`).click();
|
|
|
|
cy.visit("http://localhost:3000/view");
|
|
cy.wait(2000);
|
|
|
|
// проверка введёных значений
|
|
cy.get(".MuiTypography-h5")
|
|
.should("exist")
|
|
.and("have.text", "Заголовок вопроса");
|
|
|
|
cy.wait(500);
|
|
cy.get('[data-cy="delete-question"]').click();
|
|
cy.wait(5000);
|
|
cy.get('[data-cy="create-question"]').click();
|
|
});
|
|
});
|