You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

437 lines
21 KiB

@mod @mod_feedback
Feature: Testing multichoice questions in feedback
In order to create feedbacks
As a teacher
I need to be able to create different types of multichoice questions
Background:
Given the following "users" exist:
| username | firstname | lastname |
| teacher1 | Teacher | 1 |
| student1 | Student | 1 |
| student2 | Student | 2 |
And the following "courses" exist:
| fullname | shortname |
| Course 1 | C1 |
And the following "course enrolments" exist:
| user | course | role |
| teacher1 | C1 | editingteacher |
| student1 | C1 | student |
| student2 | C1 | student |
And the following "activities" exist:
| activity | name | course | idnumber |
| feedback | Learning experience | C1 | feedback0 |
And I log in as "teacher1"
And I am on "Course 1" course homepage
And I follow "Learning experience"
And I click on "Edit questions" "link" in the "[role=main]" "css_element"
@javascript
Scenario: Non-rated single-answer multiple choice questions in feedback
When I add a "Multiple choice" question to the feedback with:
| Question | this is a multiple choice 1 |
| Label | multichoice1 |
| Multiple choice type | Multiple choice - single answer |
| Multiple choice values | option a\noption b\noption c |
And I add a "Label" question to the feedback with:
| Contents | this is the first page of the feedback |
And I select "Add a page break" from the "Add question" singleselect
And I add a "Multiple choice" question to the feedback with:
| Question | this is a multiple choice 2 |
| Label | multichoice2 |
| Multiple choice type | Multiple choice - single answer |
| Multiple choice values | option d\noption e\noption f |
| Required | 1 |
And I add a "Label" question to the feedback with:
| Contents | this is the second page of the feedback |
And I select "Add a page break" from the "Add question" singleselect
And I add a "Multiple choice" question to the feedback with:
| Question | this is a multiple choice 3 |
| Label | multichoice3 |
| Multiple choice type | Multiple choice - single answer |
| Multiple choice values | option g\noption h\noption i |
| Hide the "Not selected" option | Yes |
| Dependence item | multichoice2 |
| Dependence value | option d |
And I add a "Label" question to the feedback with:
| Contents | this is the third page of the feedback |
And I log out
And I log in as "student1"
And I am on "Course 1" course homepage
And I follow "Learning experience"
And I follow "Answer the questions"
# Examine the first page, select nothing, go to the next page
Then the following fields match these values:
| Not selected | 1 |
| option a | 0 |
| option b | 0 |
| option c | 0 |
And "Previous page" "button" should not exist
And "Submit your answers" "button" should not exist
And I should see "this is the first page of the feedback"
And I should not see "this is the second page of the feedback"
And I should not see "this is the third page of the feedback"
And I press "Next page"
# Examine the second page, select nothing, try to go to the next page
And I should see "Not selected"
And the following fields match these values:
| Not selected | 1 |
| option d | 0 |
| option e | 0 |
| option f | 0 |
And "Previous page" "button" should exist
And "Submit your answers" "button" should not exist
And I should not see "this is the first page of the feedback"
And I should see "this is the second page of the feedback"
And I should not see "this is the third page of the feedback"
And I press "Next page"
# We are still on the second page because the field is required
And I should see "Required" in the "form" "css_element"
And I should see "this is the second page of the feedback"
And I set the field "option e" to "1"
And the following fields match these values:
| Not selected | 0 |
| option d | 0 |
| option e | 1 |
| option f | 0 |
And I press "Next page"
# Now we are on the third page, element is not shown because of wrong dependency.
And I should see "this is the third page of the feedback"
And I should not see "this is a multiple choice 3"
# Go back, check that values are preserved and change the option to enable dependency.
And I press "Previous page"
And the following fields match these values:
| Not selected | 0 |
| option d | 0 |
| option e | 1 |
| option f | 0 |
And I set the field "option d" to "1"
And I press "Next page"
# Now third page contains all items.
And I should see "this is a multiple choice 3"
And I should see "this is the third page of the feedback"
And I should not see "Not selected"
And the following fields match these values:
| option g | 0 |
| option h | 0 |
| option i | 0 |
And "Previous page" "button" should exist
And "Next page" "button" should not exist
And "Submit your answers" "button" should exist
And I set the field "option i" to "1"
And I press "Submit your answers"
And I log out
# Student 2 tries to trick - he answers the third question and then
# goes back and changes dependency question. Analysis should not show this answer!
And I log in as "student2"
And I am on "Course 1" course homepage
And I follow "Learning experience"
And I follow "Answer the questions"
And I set the field "option a" to "1"
And I press "Next page"
And I set the field "option d" to "1"
And I press "Next page"
And I set the field "option g" to "1"
And I press "Previous page"
And I set the field "option f" to "1"
And I press "Next page"
And I press "Submit your answers"
And I log out
# Login as teacher and check analysis
And I log in as "teacher1"
And I am on "Course 1" course homepage
And I follow "Learning experience"
And I navigate to "Analysis" in current page administration
And I should see "Submitted answers: 2"
And I should see "Questions: 3"
And I show chart data for the "multichoice1" feedback
And I should see "1 (50.00 %)" in the "option a" "table_row"
And I should not see "%" in the "option b" "table_row"
And I should not see "%" in the "option c" "table_row"
And I show chart data for the "multichoice2" feedback
And I should see "1 (50.00 %)" in the "option d" "table_row"
And I should not see "%" in the "option e" "table_row"
And I should see "1 (50.00 %)" in the "option f" "table_row"
And I show chart data for the "multichoice3" feedback
And I should not see "%" in the "option g" "table_row"
And I should not see "%" in the "option h" "table_row"
And I should see "1 (100.00 %)" in the "option i" "table_row"
# Change the settings so we don't analyse empty submits
And I click on "Edit questions" "link" in the "[role=main]" "css_element"
And I open the action menu in "//div[contains(@class, 'feedback_itemlist') and contains(.,'multichoice1')]" "xpath_element"
And I choose "Edit question" in the open action menu
And I set the field "Do not analyse empty submits" to "Yes"
And I press "Save changes to question"
And I follow "Analysis"
And I show chart data for the "multichoice1" feedback
And I should see "1 (100.00 %)" in the "option a" "table_row"
And I should not see "%" in the "option b" "table_row"
And I should not see "%" in the "option c" "table_row"
And I log out
@javascript
Scenario: Non-rated multiple-answers multiple choice questions in feedback
# Create a feedback with three pages, required and dependent questions.
When I add a "Multiple choice" question to the feedback with:
| Question | this is a multiple choice 1 |
| Label | multichoice1 |
| Multiple choice type | Multiple choice - multiple answers |
| Multiple choice values | option a\noption b\noption c |
And I add a "Label" question to the feedback with:
| Contents | this is the first page of the feedback |
And I select "Add a page break" from the "Add question" singleselect
And I add a "Multiple choice" question to the feedback with:
| Question | this is a multiple choice 2 |
| Label | multichoice2 |
| Multiple choice type | Multiple choice - multiple answers |
| Multiple choice values | option d\noption e\noption f |
| Required | 1 |
And I add a "Label" question to the feedback with:
| Contents | this is the second page of the feedback |
And I select "Add a page break" from the "Add question" singleselect
And I add a "Multiple choice" question to the feedback with:
| Question | this is a multiple choice 3 |
| Label | multichoice3 |
| Multiple choice type | Multiple choice - multiple answers |
| Multiple choice values | option g\noption h\noption i |
| Dependence item | multichoice2 |
| Dependence value | option d |
And I add a "Label" question to the feedback with:
| Contents | this is the third page of the feedback |
And I log out
# Login as the first student.
And I log in as "student1"
And I am on "Course 1" course homepage
And I follow "Learning experience"
And I follow "Answer the questions"
# Examine the first page, select nothing, go to the next page
And I should not see "Not selected"
And the following fields match these values:
| option a | 0 |
| option b | 0 |
| option c | 0 |
And "Previous page" "button" should not exist
And "Submit your answers" "button" should not exist
And I should see "this is the first page of the feedback"
And I should not see "this is the second page of the feedback"
And I should not see "this is the third page of the feedback"
And I press "Next page"
# Examine the second page, select nothing, try to go to the next page
Then I should not see "Not selected"
And the following fields match these values:
| option d | 0 |
| option e | 0 |
| option f | 0 |
And "Previous page" "button" should exist
And "Submit your answers" "button" should not exist
And I should not see "this is the first page of the feedback"
And I should see "this is the second page of the feedback"
And I should not see "this is the third page of the feedback"
And I press "Next page"
# We are still on the second page because the field is required
And I should see "Required" in the "form" "css_element"
And I should see "this is the second page of the feedback"
And I set the field "option e" to "1"
And I set the field "option f" to "1"
And the following fields match these values:
| option d | 0 |
| option e | 1 |
| option f | 1 |
And I press "Next page"
# Now we are on the third page, element is not shown because of wrong dependency.
And I should see "this is the third page of the feedback"
And I should not see "this is a multiple choice 3"
# Go back, check that values are preserved and change the option to enable dependency.
And I press "Previous page"
And the following fields match these values:
| option d | 0 |
| option e | 1 |
| option f | 1 |
And I set the field "option d" to "1"
And I set the field "option e" to "0"
And I press "Next page"
# Now third page contains all items.
And I should see "this is a multiple choice 3"
And I should see "this is the third page of the feedback"
And the following fields match these values:
| option g | 0 |
| option h | 0 |
| option i | 0 |
And "Previous page" "button" should exist
And "Next page" "button" should not exist
And "Submit your answers" "button" should exist
And I set the field "option i" to "1"
And I press "Submit your answers"
And I log out
# Student 2 tries to trick - he answers the third question and then
# goes back and changes dependency question. Analysis should not show this answer!
And I log in as "student2"
And I am on "Course 1" course homepage
And I follow "Learning experience"
And I follow "Answer the questions"
And I set the field "option a" to "1"
And I set the field "option b" to "1"
And I press "Next page"
And I set the field "option d" to "1"
And I press "Next page"
And I set the field "option g" to "1"
And I press "Previous page"
And I set the field "option d" to "0"
And I set the field "option f" to "1"
And I press "Next page"
And I press "Submit your answers"
And I log out
# Login as teacher and check analysis
And I log in as "teacher1"
And I am on "Course 1" course homepage
And I follow "Learning experience"
And I navigate to "Analysis" in current page administration
And I should see "Submitted answers: 2"
And I should see "Questions: 3"
And I show chart data for the "multichoice1" feedback
And I should see "1 (50.00 %)" in the "option a" "table_row"
And I should see "1 (50.00 %)" in the "option b" "table_row"
And I should not see "%" in the "option c" "table_row"
And I show chart data for the "multichoice2" feedback
And I should see "1 (50.00 %)" in the "option d" "table_row"
And I should not see "%" in the "option e" "table_row"
And I should see "2 (100.00 %)" in the "option f" "table_row"
And I show chart data for the "multichoice3" feedback
And I should not see "%" in the "option g" "table_row"
And I should not see "%" in the "option h" "table_row"
And I should see "1 (100.00 %)" in the "option i" "table_row"
# Change the settings so we don't analyse empty submits
And I click on "Edit questions" "link" in the "[role=main]" "css_element"
And I open the action menu in "//div[contains(@class, 'feedback_itemlist') and contains(.,'multichoice1')]" "xpath_element"
And I choose "Edit question" in the open action menu
And I set the field "Do not analyse empty submits" to "Yes"
And I press "Save changes to question"
And I follow "Analysis"
And I show chart data for the "multichoice1" feedback
And I should see "1 (100.00 %)" in the "option a" "table_row"
And I should see "1 (100.00 %)" in the "option b" "table_row"
And I should not see "%" in the "option c" "table_row"
And I log out
@javascript
Scenario: Non-rated single-answer dropdown multiple choice questions in feedback
When I add a "Multiple choice" question to the feedback with:
| Question | this is a multiple choice 1 |
| Label | multichoice1 |
| Multiple choice type | Multiple choice - single answer allowed (drop-down menu) |
| Multiple choice values | option a\noption b\noption c |
And I add a "Label" question to the feedback with:
| Contents | this is the first page of the feedback |
And I select "Add a page break" from the "Add question" singleselect
And I add a "Multiple choice" question to the feedback with:
| Question | this is a multiple choice 2 |
| Label | multichoice2 |
| Multiple choice type | Multiple choice - single answer allowed (drop-down menu) |
| Multiple choice values | option d\noption e\noption f |
| Required | 1 |
And I add a "Label" question to the feedback with:
| Contents | this is the second page of the feedback |
And I select "Add a page break" from the "Add question" singleselect
And I add a "Multiple choice" question to the feedback with:
| Question | this is a multiple choice 3 |
| Label | multichoice3 |
| Multiple choice type | Multiple choice - single answer allowed (drop-down menu) |
| Multiple choice values | option g\noption h\noption i |
| Dependence item | multichoice2 |
| Dependence value | option d |
And I add a "Label" question to the feedback with:
| Contents | this is the third page of the feedback |
And I log out
And I log in as "student1"
And I am on "Course 1" course homepage
And I follow "Learning experience"
And I follow "Answer the questions"
# Examine the first page, select nothing, go to the next page
Then the following fields match these values:
| this is a multiple choice 1 | 0 |
And "Previous page" "button" should not exist
And "Submit your answers" "button" should not exist
And I should see "this is the first page of the feedback"
And I should not see "this is the second page of the feedback"
And I should not see "this is the third page of the feedback"
And I press "Next page"
# Examine the second page, select nothing, try to go to the next page
And the following fields match these values:
| this is a multiple choice 2 | 0 |
And "Previous page" "button" should exist
And "Submit your answers" "button" should not exist
And I should not see "this is the first page of the feedback"
And I should see "this is the second page of the feedback"
And I should not see "this is the third page of the feedback"
And I press "Next page"
# We are still on the second page because the field is required
And I should see "Required" in the "form" "css_element"
And I should see "this is the second page of the feedback"
And I set the field "this is a multiple choice 2" to "option e"
And I press "Next page"
# Now we are on the third page, element is not shown because of wrong dependency.
And I should see "this is the third page of the feedback"
And I should not see "this is a multiple choice 3"
# Go back, check that values are preserved and change the option to enable dependency.
And I press "Previous page"
And the following fields match these values:
| this is a multiple choice 2 | option e |
And I set the field "this is a multiple choice 2" to "option d"
And I press "Next page"
# Now third page contains all items.
And I should see "this is the third page of the feedback"
And the following fields match these values:
| this is a multiple choice 3 | 0 |
And "Previous page" "button" should exist
And "Next page" "button" should not exist
And "Submit your answers" "button" should exist
And I set the field "this is a multiple choice 3" to "option i"
And I press "Submit your answers"
And I log out
# Student 2 tries to trick - he answers the third question and then
# goes back and changes dependency question. Analysis should not show this answer!
And I log in as "student2"
And I am on "Course 1" course homepage
And I follow "Learning experience"
And I follow "Answer the questions"
And I set the field "this is a multiple choice 1" to "option a"
And I press "Next page"
And I set the field "this is a multiple choice 2" to "option d"
And I press "Next page"
And I set the field "this is a multiple choice 3" to "option g"
And I press "Previous page"
And I set the field "this is a multiple choice 2" to "option f"
And I press "Next page"
And I press "Submit your answers"
And I log out
# Login as teacher and check analysis
And I log in as "teacher1"
And I am on "Course 1" course homepage
And I follow "Learning experience"
And I navigate to "Analysis" in current page administration
And I should see "Submitted answers: 2"
And I should see "Questions: 3"
And I show chart data for the "multichoice1" feedback
And I should see "1 (50.00 %)" in the "option a" "table_row"
And I should not see "%" in the "option b" "table_row"
And I should not see "%" in the "option c" "table_row"
And I show chart data for the "multichoice2" feedback
And I should see "1 (50.00 %)" in the "option d" "table_row"
And I should not see "%" in the "option e" "table_row"
And I should see "1 (50.00 %)" in the "option f" "table_row"
And I show chart data for the "multichoice3" feedback
And I should not see "%" in the "option g" "table_row"
And I should not see "%" in the "option h" "table_row"
And I should see "1 (100.00 %)" in the "option i" "table_row"
# Change the settings so we don't analyse empty submits
And I click on "Edit questions" "link" in the "[role=main]" "css_element"
And I open the action menu in "//div[contains(@class, 'feedback_itemlist') and contains(.,'multichoice1')]" "xpath_element"
And I choose "Edit question" in the open action menu
And I set the field "Do not analyse empty submits" to "Yes"
And I press "Save changes to question"
And I follow "Analysis"
And I show chart data for the "multichoice1" feedback
And I should see "1 (100.00 %)" in the "option a" "table_row"
And I should not see "%" in the "option b" "table_row"
And I should not see "%" in the "option c" "table_row"
And I log out