130 lines
7.5 KiB
Gherkin
130 lines
7.5 KiB
Gherkin
@core @core_grades @javascript
|
||
Feature: Average grades are displayed in the gradebook
|
||
In order to check the expected results are displayed
|
||
As an admin
|
||
I need to assign grades and check that they display correctly in the gradebook.
|
||
|
||
Background:
|
||
Given the following "courses" exist:
|
||
| fullname | shortname | format |
|
||
| Course 1 | C1 | topics |
|
||
And the following "users" exist:
|
||
# Teacher 1 is user without preferences set, Teacher 2 is user with preferences set
|
||
| username | firstname | lastname | email |
|
||
| teacher1 | Teacher | 1 | teacher1@example.com |
|
||
| teacher2 | Teacher | 2 | teacher2@example.com |
|
||
| student1 | Student | 1 | student1@example.com |
|
||
| student2 | Student | 2 | student2@example.com |
|
||
| student3 | Student | 3 | student3@example.com |
|
||
| student4 | Student | 4 | student4@example.com |
|
||
| student5 | Student | 5 | student5@example.com |
|
||
And the following "course enrolments" exist:
|
||
| user | course | role |
|
||
| teacher1 | C1 | editingteacher |
|
||
| teacher2 | C1 | editingteacher |
|
||
| student1 | C1 | student |
|
||
| student2 | C1 | student |
|
||
| student3 | C1 | student |
|
||
| student4 | C1 | student |
|
||
| student5 | C1 | student |
|
||
And the following "grade item" exists:
|
||
| course | C1 |
|
||
| itemname | Manual item 1 |
|
||
And the following "grade grades" exist:
|
||
| gradeitem | user | grade | hidden |
|
||
| Manual item 1 | student1 | 10.00 | 0 |
|
||
| Manual item 1 | student2 | 20.00 | 0 |
|
||
| Manual item 1 | student3 | 30.00 | 0 |
|
||
| Manual item 1 | student4 | 40.00 | 1 |
|
||
| Manual item 1 | student5 | 50.00 | 0 |
|
||
And the following "course enrolments" exist:
|
||
| user | course | role | status |
|
||
| student2 | C1 | student | suspended |
|
||
And I log in as "admin"
|
||
And I navigate to "Users > Accounts > Browse list of users" in site administration
|
||
And I press "Delete" action in the "Student 5" report row
|
||
And I click on "Delete" "button" in the "Delete user" "dialogue"
|
||
# Enable averages
|
||
And I am on the "Course 1" "grades > course grade settings" page
|
||
And I set the following fields to these values:
|
||
| Show average | Show |
|
||
And I press "Save changes"
|
||
|
||
Scenario: Grade averages display correctly in the gradebook according to various settings
|
||
# Check the admin grade table
|
||
Given I am on the "Course 1" "grades > Grader report > View" page logged in as "teacher1"
|
||
# Average is (10 + 30 + 40)/3 = 26.67 for manual and total since hidden items are included on grader report
|
||
And the following should exist in the "user-grades" table:
|
||
| -1- | -2- | -3- |
|
||
| Overall average | 26.67 | 26.67 |
|
||
And I am on the "Course 1" "grades > Grade summary > View" page
|
||
# Average is (10 + 20 + 30)/3 = 30.00 for manual since
|
||
# 1. Hidden items are NOT included on grader report.
|
||
# 2. There is a bug when we have suspended users in the course so here Student 2 is included.
|
||
# So the average is not write when preference is either not set or set to 0.
|
||
# Possibly this should be changed later to match grader report.
|
||
And I should see "30.00" in the "Manual item 1" "table_row"
|
||
|
||
And I am on the "Course 1" "grades > Grader report > View" page logged in as "teacher2"
|
||
And the following "user preferences" exist:
|
||
| user | preference | value |
|
||
| teacher2 | grade_report_showonlyactiveenrol | 1 |
|
||
And I am on the "Course 1" "grades > Grader report > View" page
|
||
And the following should exist in the "user-grades" table:
|
||
| -1- | -2- | -3- |
|
||
| Overall average | 26.67 | 26.67 |
|
||
And I am on the "Course 1" "grades > Grade summary > View" page
|
||
# Average is (10 + 30)/2 = 20.00 for manual (when preference is set to 1 set average is correct).
|
||
And I should see "20.00" in the "Manual item 1" "table_row"
|
||
And the following "user preferences" exist:
|
||
| user | preference | value |
|
||
| teacher2 | grade_report_showonlyactiveenrol | 0 |
|
||
And I am on the "Course 1" "grades > Grader report > View" page
|
||
And the following should exist in the "user-grades" table:
|
||
| -1- | -2- | -3- |
|
||
| Overall average | 25.00 | 25.00 |
|
||
And I am on the "Course 1" "grades > Grade summary > View" page
|
||
# Average is (10 + 30)/2 = 20.00 for manual (when preference is set to 0 set average is NOT correct).
|
||
And I should see "20.00" in the "Manual item 1" "table_row"
|
||
|
||
# Check the user grade table
|
||
When I am on the "Course 1" "grades > user > View" page logged in as "student1"
|
||
# Average of manual item is (10 + 30)/2 = 20.00 since hidden items are not included on user report.
|
||
# But total is calculated and its settings allow using hidden grades so it will stay the same.
|
||
Then the following should exist in the "user-grade" table:
|
||
| Grade item | Calculated weight | Grade | Range | Percentage | Average | Contribution to course total |
|
||
| Manual item 1 | 100.00 % | 10.00 | 0–100 | 10.00 % | 20.00 | 10.00 % |
|
||
| Course total | - | 10.00 | 0–100 | 10.00 % | 26.67 | - |
|
||
|
||
# Default grade_report_showonlyactiveenrol is 1 so change that
|
||
And the following config values are set as admin:
|
||
| grade_report_showonlyactiveenrol | 0 |
|
||
And I am on the "Course 1" "grades > Grader report > View" page logged in as "teacher2"
|
||
And the following should exist in the "user-grades" table:
|
||
| -1- | -2- | -3- |
|
||
| Overall average | 25.00 | 25.00 |
|
||
And I am on the "Course 1" "grades > Grade summary > View" page
|
||
And I should see "20.00" in the "Manual item 1" "table_row"
|
||
And the following "user preferences" exist:
|
||
| user | preference | value |
|
||
| teacher2 | grade_report_showonlyactiveenrol | 1 |
|
||
And I am on the "Course 1" "grades > Grader report > View" page
|
||
And the following should exist in the "user-grades" table:
|
||
| -1- | -2- | -3- |
|
||
| Overall average | 26.67 | 26.67 |
|
||
And I am on the "Course 1" "grades > Grade summary > View" page
|
||
And I should see "20.00" in the "Manual item 1" "table_row"
|
||
|
||
And I am on the "Course 1" "grades > Grader report > View" page logged in as "teacher1"
|
||
And the following should exist in the "user-grades" table:
|
||
| -1- | -2- | -3- |
|
||
| Overall average | 25.00 | 25.00 |
|
||
And I am on the "Course 1" "grades > Grade summary > View" page
|
||
And I should see "20.00" in the "Manual item 1" "table_row"
|
||
|
||
And I am on the "Course 1" "grades > user > View" page logged in as "student1"
|
||
And the following should exist in the "user-grade" table:
|
||
| Grade item | Calculated weight | Grade | Range | Percentage | Average | Contribution to course total |
|
||
| Manual item 1 | 100.00 % | 10.00 | 0–100 | 10.00 % | 20.00 | 10.00 % |
|
||
| Course total | - | 10.00 | 0–100 | 10.00 % | 26.67 | - |
|