# 4. Grading — Test Cases

User Type: **Super Administrator**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: grading.md — every feature, sub-feature, and rule covered

---

## Test Execution Policy
- Zero tolerance: any deviation from documented behavior = FAILED = bug
- Every bug is immediately logged/reported (Bug ID, feature, sub-feature,
  expected vs actual, severity) and fixed 100% before the group passes
- Feature group passes only at 100% test pass rate

## Coverage Matrix
| Feature | Sub-feature / Rule | Test IDs |
|---------|--------------------|----------|
| 4.1 Instant Results | Instant grading: the objective questions (MCQ, fill-in-the-blank, true/false) graded on submission | TC-SA-08-04-001 |
| 4.1 Instant Results | Immediate result: the score presented to the learner right after submission | TC-SA-08-04-002 |
| 4.1 Instant Results | Result detail: the score, the pass/fail, and the per-question breakdown | TC-SA-08-04-003 |
| 4.1 Instant Results | Auto-grade scope: the question types that are auto-graded (the objective ones) | TC-SA-08-04-004 |
| 4.1 Instant Results | Manual-grade handoff: the subjective questions (short answer, essay) routed for grading | TC-SA-08-04-005 |
| 4.1 Instant Results | Result recording: the result recorded against the learner and the assessment | TC-SA-08-04-006 |
| 4.1 Instant Results | Audit logging of the result recording | TC-SA-08-04-007 |
| 4.1 Instant Results | Rule: instant results apply to the objective questions; they are graded on submission and presented immediately | TC-SA-08-04-001 |
| 4.1 Instant Results | Rule: the subjective questions are routed for grading (AI or manual); the full result is complete once they are graded | TC-SA-08-04-005 |
| 4.1 Instant Results | Rule: the result includes the score, the pass/fail, and the per-question breakdown; it is specific, not just a number | TC-SA-08-04-003 |
| 4.1 Instant Results | Rule: a result is recorded against the learner and the assessment; it is in the history and the analytics | TC-SA-08-04-006 |
| 4.1 Instant Results | Rule: a disputed result is reviewed; a correction is applied and recorded (the original is not silently overwritten) | TC-SA-08-04-008 |
| 4.1 Instant Results | Rule: result recording is audit-logged with the learner, assessment, result, and timestamp | TC-SA-08-04-007 |
| 4.2 AI Grading for Short Answer and Essay Questions | AI grading: the short answer/essay responses graded by the in-house AI | TC-SA-08-04-009 |
| 4.2 AI Grading for Short Answer and Essay Questions | Marking criteria: the criteria the AI grades against (the rubric) | TC-SA-08-04-010 |
| 4.2 AI Grading for Short Answer and Essay Questions | Grade scale: the scale the AI uses (the marks, the bands) | TC-SA-08-04-011 |
| 4.2 AI Grading for Short Answer and Essay Questions | Rationale: the AI's reasoning for the grade (the feedback) | TC-SA-08-04-012 |
| 4.2 AI Grading for Short Answer and Essay Questions | Human review: the AI grades reviewed (a sample or all, per the configuration) | TC-SA-08-04-013 |
| 4.2 AI Grading for Short Answer and Essay Questions | Override: a human override of an AI grade (with the reason) | TC-SA-08-04-014 |
| 4.2 AI Grading for Short Answer and Essay Questions | Audit logging of the AI grades and overrides | TC-SA-08-04-015 |
| 4.2 AI Grading for Short Answer and Essay Questions | Rule: the AI grades the subjective questions against the marking criteria; the criteria are the rubric, not an implicit standard | TC-SA-08-04-010 |
| 4.2 AI Grading for Short Answer and Essay Questions | Rule: the AI grade includes a rationale (the feedback); the learner sees why they got the grade | TC-SA-08-04-012 |
| 4.2 AI Grading for Short Answer and Essay Questions | Rule: the human review is per the configuration (a sample or all); a high-stakes assessment is reviewed more thoroughly | TC-SA-08-04-013 |
| 4.2 AI Grading for Short Answer and Essay Questions | Rule: an override is recorded with the reason; the AI's original grade is preserved (not destroyed) | TC-SA-08-04-014 |
| 4.2 AI Grading for Short Answer and Essay Questions | Rule: the override rate is a quality signal; a high rate triggers a criteria review | TC-SA-08-04-016 |
| 4.2 AI Grading for Short Answer and Essay Questions | Rule: AI grades and overrides are audit-logged with the response, grade, actor, and timestamp | TC-SA-08-04-015 |
| 4.3 Detailed Explanations per Question | Per-question explanation: the explanation attached to each question | TC-SA-08-04-017 |
| 4.3 Detailed Explanations per Question | Correct answer detail: the correct answer and the reasoning for it | TC-SA-08-04-018 |
| 4.3 Detailed Explanations per Question | Wrong-answer detail: why the learner's answer (or the other options) is not correct | TC-SA-08-04-019 |
| 4.3 Detailed Explanations per Question | Explanation coverage: the explanations present for the assessment's questions | TC-SA-08-04-020 |
| 4.3 Detailed Explanations per Question | Explanation accuracy: the explanations checked for correctness | TC-SA-08-04-021 |
| 4.3 Detailed Explanations per Question | Result presentation: the explanations shown in the result (per question) | TC-SA-08-04-022 |
| 4.3 Detailed Explanations per Question | Audit logging of explanation changes | TC-SA-08-04-023 |
| 4.3 Detailed Explanations per Question | Rule: each question has a detailed explanation; the coverage is complete (a missing explanation is a gap) | TC-SA-08-04-020 |
| 4.3 Detailed Explanations per Question | Rule: the explanation covers the correct answer (the reasoning) and the wrong answer (why it is not correct); it is specific | TC-SA-08-04-018, TC-SA-08-04-019 |
| 4.3 Detailed Explanations per Question | Rule: the explanation accuracy is checked; an inaccurate explanation is corrected (it is as important as the answer) | TC-SA-08-04-021 |
| 4.3 Detailed Explanations per Question | Rule: the explanations are shown in the result, per question; the result is a learning moment, not just a score | TC-SA-08-04-022 |
| 4.3 Detailed Explanations per Question | Rule: an explanation change is recorded; the current explanation is the accurate one | TC-SA-08-04-024 |
| 4.3 Detailed Explanations per Question | Rule: explanation changes are audit-logged with the question, explanation, and timestamp | TC-SA-08-04-023 |

## 4.1 Instant Results

### TC-SA-08-04-001 — Instant grading: the objective questions (MCQ, fill-in-the-blank, true/false) graded on submission; they are graded on submission and presented immediately
**Type:** Positive
**Covers:** 4.1 → Instant grading: the objective questions (MCQ, fill-in-the-blank, true/false) graded on submission; Rule: instant results apply to the objective questions; they are graded on submission and presented immediately
**Preconditions:** An assessment with objective questions is live; a learner submits it.
**Steps:**
1. As the learner, submit the assessment.
2. Verify the objective questions (MCQ, fill-in-the-blank, true/false) are graded on submission.
3. Verify the result is presented immediately.
**Expected Result:** The objective questions are graded on submission — the result is presented immediately.
**Priority:** Critical

### TC-SA-08-04-002 — Immediate result: the score presented to the learner right after submission
**Type:** Positive
**Covers:** 4.1 → Immediate result: the score presented to the learner right after submission
**Preconditions:** A learner submits an auto-graded assessment.
**Steps:**
1. As the learner, submit the assessment.
2. Verify the score is presented right after submission (no waiting for a manual grade).
**Expected Result:** The score is presented to the learner right after submission — immediate feedback.
**Priority:** Critical

### TC-SA-08-04-003 — Result detail: the score, the pass/fail, and the per-question breakdown; it is specific, not just a number
**Type:** Positive
**Covers:** 4.1 → Result detail: the score, the pass/fail, and the per-question breakdown; Rule: the result includes the score, the pass/fail, and the per-question breakdown; it is specific, not just a number
**Preconditions:** A learner submits an assessment.
**Steps:**
1. As the learner, submit the assessment and view the result.
2. Verify the result includes the score, the pass/fail, and the per-question breakdown.
3. Verify it is specific, not just a number.
**Expected Result:** The result includes the score, the pass/fail, and the per-question breakdown — it is specific, not just a number.
**Priority:** Critical

### TC-SA-08-04-004 — Auto-grade scope: the question types that are auto-graded (the objective ones)
**Type:** Positive
**Covers:** 4.1 → Auto-grade scope: the question types that are auto-graded (the objective ones)
**Preconditions:** An assessment is configured; the auto-grade scope is being set.
**Steps:**
1. Set the auto-grade scope: the question types that are auto-graded (multiple choice, fill-in-the-blank, true/false).
2. Verify only the objective types are auto-graded.
**Expected Result:** The auto-grade scope is set — the objective question types (MCQ, fill-in-the-blank, true/false) are auto-graded.
**Priority:** High

### TC-SA-08-04-005 — Manual-grade handoff: the subjective questions (short answer, essay) routed for grading; the full result is complete once they are graded
**Type:** Positive
**Covers:** 4.1 → Manual-grade handoff: the subjective questions (short answer, essay) routed for grading; Rule: the subjective questions are routed for grading (AI or manual); the full result is complete once they are graded
**Preconditions:** An assessment has subjective questions (short answer, essay); a learner submits it.
**Steps:**
1. As the learner, submit the assessment with subjective questions.
2. Verify the subjective questions are routed for grading (AI or manual, per the configuration).
3. Verify the result is pending for the subjective questions (the learner sees the objective result now and the full result once the subjective grading completes).
**Expected Result:** The subjective questions are routed for grading — the full result is complete once they are graded.
**Priority:** Critical

### TC-SA-08-04-006 — Result recording: the result recorded against the learner and the assessment; it is in the history and the analytics
**Type:** Positive
**Covers:** 4.1 → Result recording: the result recorded against the learner and the assessment; Rule: a result is recorded against the learner and the assessment; it is in the history and the analytics
**Preconditions:** A learner submits an assessment and receives a result.
**Steps:**
1. Verify the result is recorded against the learner and the assessment.
2. Verify it is available in the learner's history.
3. Verify it is available in the assessment's analytics.
**Expected Result:** The result is recorded against the learner and the assessment — it is in the history and the analytics.
**Priority:** Critical

### TC-SA-08-04-007 — Result recording is audit-logged with the learner, the assessment, the result, and the timestamp
**Type:** Positive
**Covers:** 4.1 → Audit logging of the result recording; Rule: result recording is audit-logged with the learner, assessment, result, and timestamp
**Preconditions:** Assessment results have been recorded.
**Steps:**
1. Open the audit trail and filter by "result recording".
2. Verify entries show the learner, the assessment, the result, and the timestamp.
**Expected Result:** The result recording is audit-logged with the learner, assessment, result, and timestamp.
**Priority:** Critical

### TC-SA-08-04-008 — A disputed result is reviewed; a correction is applied and recorded (the original is not silently overwritten)
**Type:** Negative
**Covers:** 4.1 → Rule: a disputed result is reviewed; a correction is applied and recorded (the original is not silently overwritten)
**Preconditions:** A learner challenges a question's grading (a disputed result).
**Steps:**
1. Review the question and the grading for the disputed result.
2. Apply a correction and verify it is recorded.
3. Verify the original result is not silently overwritten (the correction is traceable).
**Expected Result:** The disputed result is reviewed — the correction is applied and recorded; the original is not silently overwritten.
**Priority:** Critical

## 4.2 AI Grading for Short Answer and Essay Questions

### TC-SA-08-04-009 — AI grading: the short answer/essay responses graded by the in-house AI
**Type:** Positive
**Covers:** 4.2 → AI grading: the short answer/essay responses graded by the in-house AI
**Preconditions:** An assessment with subjective questions is live; a learner submits a short answer/essay.
**Steps:**
1. As the learner, submit the short answer/essay.
2. Verify the in-house AI grades the response.
**Expected Result:** The short answer/essay response is graded by the in-house AI.
**Priority:** Critical

### TC-SA-08-04-010 — Marking criteria: the criteria the AI grades against (the rubric); the criteria are the rubric, not an implicit standard
**Type:** Positive
**Covers:** 4.2 → Marking criteria: the criteria the AI grades against (the rubric); Rule: the AI grades the subjective questions against the marking criteria; the criteria are the rubric, not an implicit standard
**Preconditions:** An assessment with subjective questions is configured.
**Steps:**
1. Configure the marking criteria (the rubric) for the AI grading.
2. Verify the AI grades the responses against the criteria (the rubric, not an implicit standard).
**Expected Result:** The marking criteria (the rubric) are configured — the AI grades against them, not an implicit standard.
**Priority:** Critical

### TC-SA-08-04-011 — Grade scale: the scale the AI uses (the marks, the bands)
**Type:** Positive
**Covers:** 4.2 → Grade scale: the scale the AI uses (the marks, the bands)
**Preconditions:** An assessment with subjective questions is configured.
**Steps:**
1. Set the grade scale: the marks/bands the AI uses.
2. Verify the AI's grades fall within the scale.
**Expected Result:** The grade scale is set — the AI's grades use the marks/bands.
**Priority:** High

### TC-SA-08-04-012 — Rationale: the AI's reasoning for the grade (the feedback); the learner sees why they got the grade
**Type:** Positive
**Covers:** 4.2 → Rationale: the AI's reasoning for the grade (the feedback); Rule: the AI grade includes a rationale (the feedback); the learner sees why they got the grade
**Preconditions:** A learner's short answer/essay is graded by the AI.
**Steps:**
1. Verify the AI's grade includes a rationale (the feedback).
2. As the learner, view the grade and verify the rationale is shown (why they got the grade).
**Expected Result:** The AI grade includes a rationale (the feedback) — the learner sees why they got the grade.
**Priority:** High

### TC-SA-08-04-013 — Human review: the AI grades reviewed (a sample or all, per the configuration); a high-stakes assessment is reviewed more thoroughly
**Type:** Positive
**Covers:** 4.2 → Human review: the AI grades reviewed (a sample or all, per the configuration); Rule: the human review is per the configuration (a sample or all); a high-stakes assessment is reviewed more thoroughly
**Preconditions:** An assessment with AI-graded subjective questions is configured; the human review is set (a sample for high-volume, all for high-stakes).
**Steps:**
1. Set the human review: the AI grades reviewed (a sample for a high-volume assessment, all for a high-stakes one).
2. Verify the reviewed grades are checked against the response and the criteria.
3. Verify a high-stakes assessment is reviewed more thoroughly (all grades).
**Expected Result:** The human review is per the configuration — a sample or all; a high-stakes assessment is reviewed more thoroughly.
**Priority:** Critical

### TC-SA-08-04-014 — Override: a human override of an AI grade (with the reason); the AI's original grade is preserved (not destroyed)
**Type:** Negative
**Covers:** 4.2 → Override: a human override of an AI grade (with the reason); Rule: an override is recorded with the reason; the AI's original grade is preserved (not destroyed)
**Preconditions:** An AI grade is off (the AI missed a point, or was too lenient/strict).
**Steps:**
1. Identify the off AI grade.
2. Override it with the correct grade and the reason.
3. Verify the override is recorded and the AI's original grade is preserved (not destroyed).
**Expected Result:** The override is recorded with the reason — the AI's original grade is preserved (not destroyed).
**Priority:** Critical

### TC-SA-08-04-015 — AI grades and overrides are audit-logged with the response, the grade, the actor, and the timestamp
**Type:** Positive
**Covers:** 4.2 → Audit logging of the AI grades and overrides; Rule: AI grades and overrides are audit-logged with the response, grade, actor, and timestamp
**Preconditions:** AI grades and overrides have occurred.
**Steps:**
1. Open the audit trail and filter by "AI grade".
2. Verify entries for grades and overrides show the response, the grade, the actor, and the timestamp.
**Expected Result:** The AI grades and overrides are audit-logged with the response, grade, actor, and timestamp.
**Priority:** Critical

### TC-SA-08-04-016 — The override rate is a quality signal; a high rate triggers a criteria review
**Type:** Negative
**Covers:** 4.2 → Rule: the override rate is a quality signal; a high rate triggers a criteria review
**Preconditions:** The AI grading has a high override rate (a criteria issue).
**Steps:**
1. Review the AI grading quality: the override rate.
2. Identify the high override rate (a criteria issue).
3. Verify it triggers a criteria review (the criteria are refined).
**Expected Result:** The override rate is a quality signal — the high rate triggers a criteria review.
**Priority:** High

## 4.3 Detailed Explanations per Question

### TC-SA-08-04-017 — Per-question explanation: the explanation attached to each question
**Type:** Positive
**Covers:** 4.3 → Per-question explanation: the explanation attached to each question
**Preconditions:** An assessment's questions are being prepared.
**Steps:**
1. Attach a detailed explanation to each question in the assessment.
2. Verify each question has its explanation.
**Expected Result:** Each question has a detailed explanation attached.
**Priority:** Critical

### TC-SA-08-04-018 — Correct answer detail: the correct answer and the reasoning for it
**Type:** Positive
**Covers:** 4.3 → Correct answer detail: the correct answer and the reasoning for it; Rule: the explanation covers the correct answer (the reasoning) and the wrong answer (why it is not correct); it is specific
**Preconditions:** A question's explanation is being written.
**Steps:**
1. Write the explanation covering the correct answer and the reasoning for it.
2. Verify the explanation is specific (the reasoning is clear).
**Expected Result:** The explanation covers the correct answer and the reasoning for it — it is specific.
**Priority:** High

### TC-SA-08-04-019 — Wrong-answer detail: why the learner's answer (or the other options) is not correct
**Type:** Positive
**Covers:** 4.3 → Wrong-answer detail: why the learner's answer (or the other options) is not correct; Rule: the explanation covers the correct answer (the reasoning) and the wrong answer (why it is not correct); it is specific
**Preconditions:** A question's explanation is being written.
**Steps:**
1. Write the explanation covering why the learner's answer (or the other options) is not correct.
2. Verify the wrong-answer detail is specific.
**Expected Result:** The explanation covers why the learner's answer (or the other options) is not correct — it is specific.
**Priority:** High

### TC-SA-08-04-020 — Explanation coverage: the explanations present for the assessment's questions; a missing explanation is a gap
**Type:** Negative
**Covers:** 4.3 → Explanation coverage: the explanations present for the assessment's questions; Rule: each question has a detailed explanation; the coverage is complete (a missing explanation is a gap)
**Preconditions:** An assessment has a question missing an explanation.
**Steps:**
1. Review the explanation coverage for the assessment.
2. Identify the question missing an explanation (a gap).
3. Add the explanation (the correct answer and the reasoning) and verify the coverage is complete.
**Expected Result:** The explanation coverage is complete — the missing explanation (a gap) is added.
**Priority:** Critical

### TC-SA-08-04-021 — Explanation accuracy: the explanations checked for correctness; an inaccurate explanation is corrected (it is as important as the answer)
**Type:** Negative
**Covers:** 4.3 → Explanation accuracy: the explanations checked for correctness; Rule: the explanation accuracy is checked; an inaccurate explanation is corrected (it is as important as the answer)
**Preconditions:** An assessment has an inaccurate explanation (a wrong explanation is as bad as a wrong answer).
**Steps:**
1. Check the explanation accuracy.
2. Identify the inaccurate explanation.
3. Correct it and verify the correction is recorded.
**Expected Result:** The explanation accuracy is checked — the inaccurate explanation is corrected (it is as important as the answer).
**Priority:** Critical

### TC-SA-08-04-022 — Result presentation: the explanations shown in the result (per question); the result is a learning moment, not just a score
**Type:** Positive
**Covers:** 4.3 → Result presentation: the explanations shown in the result (per question); Rule: the explanations are shown in the result, per question; the result is a learning moment, not just a score
**Preconditions:** A learner completes an assessment with explanations.
**Steps:**
1. As the learner, complete the assessment and review the result.
2. Verify per question, the explanation shows the correct answer, why it is correct, and why their answer was not.
3. Verify the result is a learning moment, not just a score.
**Expected Result:** The explanations are shown in the result, per question — the result is a learning moment, not just a score.
**Priority:** Critical

### TC-SA-08-04-023 — Explanation changes are audit-logged with the question, the explanation, and the timestamp
**Type:** Positive
**Covers:** 4.3 → Audit logging of explanation changes; Rule: explanation changes are audit-logged with the question, explanation, and timestamp
**Preconditions:** Question explanations have been changed.
**Steps:**
1. Open the audit trail and filter by "explanation".
2. Verify entries show the question, the explanation, and the timestamp.
**Expected Result:** The explanation changes are audit-logged with the question, explanation, and timestamp.
**Priority:** Critical

### TC-SA-08-04-024 — An explanation change is recorded; the current explanation is the accurate one
**Type:** Edge
**Covers:** 4.3 → Rule: an explanation change is recorded; the current explanation is the accurate one
**Preconditions:** A question's explanation is corrected.
**Steps:**
1. Correct the question's explanation.
2. Verify the change is recorded.
3. Verify the current explanation is the accurate one (learners see the corrected version).
**Expected Result:** The explanation change is recorded — the current explanation is the accurate one.
**Priority:** High
