wip: Add user tests
This commit is contained in:
parent
3a5c941360
commit
fa31def0b5
|
|
@ -176,7 +176,7 @@ onMounted(async () => {
|
||||||
@next="nextStep()"
|
@next="nextStep()"
|
||||||
>
|
>
|
||||||
<div>
|
<div>
|
||||||
<p v-if="stepNo === 0" class="mt-10">
|
<p v-if="stepNo === 0" class="mt-10" data-cy="introduction">
|
||||||
{{ introduction }}
|
{{ introduction }}
|
||||||
</p>
|
</p>
|
||||||
<p v-if="stepNo > 0 && stepNo + 1 < numSteps" class="pb-2">
|
<p v-if="stepNo > 0 && stepNo + 1 < numSteps" class="pb-2">
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,11 @@ describe("feedbackStudent.cy.js", () => {
|
||||||
cy.visit("/course/test-lehrgang/learn/fahrzeug/feedback");
|
cy.visit("/course/test-lehrgang/learn/fahrzeug/feedback");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
describe("Feedback UK", () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.visit("/course/test-lehrgang/learn/fahrzeug/feedback");
|
||||||
|
});
|
||||||
|
|
||||||
it("can open feedback page", () => {
|
it("can open feedback page", () => {
|
||||||
cy.testLearningContentTitle("Kursfeedback");
|
cy.testLearningContentTitle("Kursfeedback");
|
||||||
cy.testLearningContentSubtitle("Feedback");
|
cy.testLearningContentSubtitle("Feedback");
|
||||||
|
|
@ -141,10 +146,12 @@ describe("feedbackStudent.cy.js", () => {
|
||||||
expect(ac.submitted).to.be.true;
|
expect(ac.submitted).to.be.true;
|
||||||
expect(ac.data).to.deep.equal({
|
expect(ac.data).to.deep.equal({
|
||||||
course_negative_feedback: "Ich bin unzufrieden mit einigen Sachen.",
|
course_negative_feedback: "Ich bin unzufrieden mit einigen Sachen.",
|
||||||
course_positive_feedback: "Ich bin zufrieden mit den meisten Dingen.",
|
course_positive_feedback:
|
||||||
|
"Ich bin zufrieden mit den meisten Dingen.",
|
||||||
goal_attainment: 3,
|
goal_attainment: 3,
|
||||||
instructor_competence: 2,
|
instructor_competence: 2,
|
||||||
instructor_open_feedback: "Der Kursleiter ist eigentlich ganz nett.",
|
instructor_open_feedback:
|
||||||
|
"Der Kursleiter ist eigentlich ganz nett.",
|
||||||
instructor_respect: 1,
|
instructor_respect: 1,
|
||||||
preparation_task_clarity: false,
|
preparation_task_clarity: false,
|
||||||
proficiency: 80,
|
proficiency: 80,
|
||||||
|
|
@ -154,4 +161,134 @@ describe("feedbackStudent.cy.js", () => {
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
describe("Feedback VV", () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.visit("/course/test-lehrgang/learn/reisen/feedback");
|
||||||
|
});
|
||||||
|
|
||||||
|
it("can open feedback page", () => {
|
||||||
|
cy.testLearningContentTitle("Feedback");
|
||||||
|
cy.testLearningContentSubtitle("Feedback");
|
||||||
|
});
|
||||||
|
|
||||||
|
it("can create feedback by giving answers to all steps", () => {
|
||||||
|
// initial wait for step 0 (or none with step==0) is required for pipelines
|
||||||
|
cy.url().should((url) => {
|
||||||
|
expect(url).to.match(/\/reisen\/feedback(\?step=0)?$/);
|
||||||
|
});
|
||||||
|
cy.get('[data-cy="introduction"]').should(
|
||||||
|
"contain",
|
||||||
|
"Wir bitten dich um dein Feedback. Es hilft uns, damit wir deine Lernerlebnisse verbessern können."
|
||||||
|
);
|
||||||
|
|
||||||
|
cy.wait(200);
|
||||||
|
cy.learningContentMultiLayoutNextStep();
|
||||||
|
cy.wait(200);
|
||||||
|
|
||||||
|
// fill feedback form
|
||||||
|
// step 1
|
||||||
|
cy.url().should("include", "step=1");
|
||||||
|
cy.get('[data-cy="next-step"]').should("be.disabled");
|
||||||
|
cy.get('[data-cy="radio-4"]').click();
|
||||||
|
cy.wait(200);
|
||||||
|
cy.learningContentMultiLayoutNextStep();
|
||||||
|
cy.wait(200);
|
||||||
|
|
||||||
|
// step 2
|
||||||
|
cy.url().should("include", "step=2");
|
||||||
|
cy.get('[data-cy="next-step"]').should("be.disabled");
|
||||||
|
// the system should store after every step -> check stored data
|
||||||
|
cy.loadFeedbackResponse("feedback_user_id", TEST_STUDENT1_USER_ID).then(
|
||||||
|
(ac) => {
|
||||||
|
expect(ac.submitted).to.be.false;
|
||||||
|
expect(ac.data.satisfaction).to.equal(4);
|
||||||
|
expect(ac.data.instructor_competence).to.equal(null);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
cy.get('[data-cy="radio-3"]').click();
|
||||||
|
cy.wait(200);
|
||||||
|
cy.learningContentMultiLayoutNextStep();
|
||||||
|
cy.wait(200);
|
||||||
|
|
||||||
|
// step 3
|
||||||
|
cy.url().should("include", "step=3");
|
||||||
|
cy.get('[data-cy="next-step"]').should("be.disabled");
|
||||||
|
cy.get('[data-cy="radio-80"]').click();
|
||||||
|
cy.wait(200);
|
||||||
|
cy.learningContentMultiLayoutNextStep();
|
||||||
|
cy.wait(200);
|
||||||
|
|
||||||
|
// step 4
|
||||||
|
cy.url().should("include", "step=4");
|
||||||
|
cy.get('[data-cy="next-step"]').should("be.disabled");
|
||||||
|
cy.get('[data-cy="radio-false"]').click();
|
||||||
|
cy.wait(200);
|
||||||
|
cy.learningContentMultiLayoutNextStep();
|
||||||
|
cy.wait(200);
|
||||||
|
|
||||||
|
// step 5
|
||||||
|
cy.url().should("include", "step=5");
|
||||||
|
cy.get('[data-cy="next-step"]').should("be.disabled");
|
||||||
|
cy.get('[data-cy="radio-false"]').click();
|
||||||
|
cy.wait(200);
|
||||||
|
cy.learningContentMultiLayoutNextStep();
|
||||||
|
cy.wait(200);
|
||||||
|
|
||||||
|
// step 6
|
||||||
|
cy.url().should("include", "step=6");
|
||||||
|
cy.get('[data-cy="next-step"]').should("be.disabled");
|
||||||
|
cy.get('[data-cy="it-textarea-course_positive_feedback"]').type(
|
||||||
|
"Der Circle ist eigentlich ganz nett."
|
||||||
|
);
|
||||||
|
cy.wait(200);
|
||||||
|
cy.learningContentMultiLayoutNextStep();
|
||||||
|
cy.wait(200);
|
||||||
|
|
||||||
|
// step 7
|
||||||
|
cy.url().should("include", "step=7");
|
||||||
|
cy.get('[data-cy="next-step"]').should("be.disabled");
|
||||||
|
cy.get('[data-cy="it-textarea-course_negative_feedback"]').type(
|
||||||
|
"Ich bin unzufrieden mit einigen Sachen."
|
||||||
|
);
|
||||||
|
cy.wait(200);
|
||||||
|
cy.learningContentMultiLayoutNextStep();
|
||||||
|
cy.wait(200);
|
||||||
|
|
||||||
|
cy.url().should("include", "step=8");
|
||||||
|
cy.get('[data-cy="sendFeedbackButton"]').click();
|
||||||
|
cy.get('[data-cy="complete-and-continue"]').click({ force: true });
|
||||||
|
|
||||||
|
// marked complete in circle
|
||||||
|
cy.url().should((url) => {
|
||||||
|
expect(url).to.match(/\/reisen#lu-transfer?$/);
|
||||||
|
});
|
||||||
|
cy.reload();
|
||||||
|
cy.get(
|
||||||
|
'[data-cy="test-lehrgang-lp-circle-reisen-lc-feedback-checkbox"]'
|
||||||
|
).should("have.class", "cy-checked");
|
||||||
|
|
||||||
|
// reopening page should get directly to last step
|
||||||
|
cy.visit("/course/test-lehrgang/learn/reisen/feedback");
|
||||||
|
cy.url().should("include", "step=8");
|
||||||
|
|
||||||
|
// check stored data
|
||||||
|
cy.loadFeedbackResponse("feedback_user_id", TEST_STUDENT1_USER_ID).then(
|
||||||
|
(ac) => {
|
||||||
|
expect(ac.submitted).to.be.true;
|
||||||
|
expect(ac.data).to.deep.equal({
|
||||||
|
course_negative_feedback: "Ich bin unzufrieden mit einigen Sachen.",
|
||||||
|
course_positive_feedback:
|
||||||
|
"Ich bin zufrieden mit den meisten Dingen.",
|
||||||
|
goal_attainment: 3,
|
||||||
|
preparation_task_clarity: false,
|
||||||
|
proficiency: 80,
|
||||||
|
satisfaction: 4,
|
||||||
|
would_recommend: true,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
);
|
||||||
|
});
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue