# 2. Course Performance Analytics — Test Cases

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

## Test Execution Policy

- Zero tolerance: any deviation from the documented behavior is a defect.
- Every failed test is logged with a Bug ID, the feature, the sub-feature, the expected vs actual result, and the severity; 100% of bugs are fixed before the group passes.
- 100% pass rate is required for the group to be marked complete.

## Coverage Matrix

| Feature | Sub-feature / Rule | Test IDs |
|---------|--------------------|----------|
| 2.1 | Course completion analytics | TC-TI-6-02-001 |
| 2.1 | Completion rate per course | TC-TI-6-02-002 |
| 2.1 | Average time to complete | TC-TI-6-02-003 |
| 2.1 | Drop-off points shown | TC-TI-6-02-004 |
| 2.1 | Completion trend shown | TC-TI-6-02-005 |
| 2.1 | Per course or all courses | TC-TI-6-02-006 |
| 2.1 | Analytics available on web and mobile | TC-TI-6-02-007 |
| 2.1 | Analytics event logging (viewed) | TC-TI-6-02-008 |
| 2.1 | Audit logging of the course completion analytics | TC-TI-6-02-009 |
| 2.1 | Rule: The drop-off points are the lessons with the highest exit rate. | TC-TI-6-02-001 |
| 2.1 | Rule: The completion rate is completions over enrollments. | TC-TI-6-02-002 |
| 2.1 | Rule: Analytics events (viewed) are logged with the account and the timestamp. | TC-TI-6-02-003 |
| 2.1 | Rule: The course completion analytics is audit-logged with the account and the timestamp. | TC-TI-6-02-004 |
| 2.2 | Assessment performance analytics | TC-TI-6-02-010 |
| 2.2 | Average score per assessment | TC-TI-6-02-011 |
| 2.2 | Score distribution shown | TC-TI-6-02-012 |
| 2.2 | Pass rate shown | TC-TI-6-02-013 |
| 2.2 | Most-missed questions shown | TC-TI-6-02-014 |
| 2.2 | Per assessment or across the course | TC-TI-6-02-015 |
| 2.2 | Analytics available on web and mobile | TC-TI-6-02-016 |
| 2.2 | Analytics event logging (viewed) | TC-TI-6-02-017 |
| 2.2 | Audit logging of the assessment performance analytics | TC-TI-6-02-018 |
| 2.2 | Rule: The most-missed questions are ranked by miss rate. | TC-TI-6-02-010 |
| 2.2 | Rule: The pass rate is based on the assessment's pass mark. | TC-TI-6-02-011 |
| 2.2 | Rule: Analytics events (viewed) are logged with the account and the timestamp. | TC-TI-6-02-012 |
| 2.2 | Rule: The assessment performance analytics is audit-logged with the account and the timestamp. | TC-TI-6-02-013 |
| 2.3 | Course comparison view | TC-TI-6-02-019 |
| 2.3 | Select two or more courses | TC-TI-6-02-020 |
| 2.3 | Completion rates side by side | TC-TI-6-02-021 |
| 2.3 | Average scores side by side | TC-TI-6-02-022 |
| 2.3 | Enrollment side by side | TC-TI-6-02-023 |
| 2.3 | Export the comparison | TC-TI-6-02-024 |
| 2.3 | Comparison available on web and mobile | TC-TI-6-02-025 |
| 2.3 | Comparison event logging (viewed, exported) | TC-TI-6-02-026 |
| 2.3 | Audit logging of the course comparison | TC-TI-6-02-027 |
| 2.3 | Rule: At least two courses are required for a comparison. | TC-TI-6-02-019 |
| 2.3 | Rule: The comparison is exportable. | TC-TI-6-02-020 |
| 2.3 | Rule: Comparison events (viewed, exported) are logged with the account and the timestamp. | TC-TI-6-02-021 |
| 2.3 | Rule: The course comparison is audit-logged with the account and the timestamp. | TC-TI-6-02-022 |

## 2.1 Course Completion Analytics

### TC-TI-6-02-001 — Course completion analytics
**Type:** Positive
**Covers:** 2.1 → Course completion analytics; Rule: The drop-off points are the lessons with the highest exit rate.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Course completion analytics.
2. Observe the result and verify the full behavior: Course completion analytics.
**Expected Result:** Course completion analytics — delivered exactly as documented.
**Priority:** Critical

### TC-TI-6-02-002 — Completion rate per course
**Type:** Positive
**Covers:** 2.1 → Completion rate per course; Rule: The completion rate is completions over enrollments.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Completion rate per course.
2. Observe the result and verify the full behavior: Completion rate per course.
**Expected Result:** Completion rate per course — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-003 — Average time to complete
**Type:** Positive
**Covers:** 2.1 → Average time to complete; Rule: Analytics events (viewed) are logged with the account and the timestamp.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Average time to complete.
2. Observe the result and verify the full behavior: Average time to complete.
**Expected Result:** Average time to complete — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-004 — Drop-off points shown
**Type:** Positive
**Covers:** 2.1 → Drop-off points shown; Rule: The course completion analytics is audit-logged with the account and the timestamp.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Drop-off points shown.
2. Observe the result and verify the full behavior: Drop-off points shown.
**Expected Result:** Drop-off points shown — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-005 — Completion trend shown
**Type:** Positive
**Covers:** 2.1 → Completion trend shown
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Completion trend shown.
2. Observe the result and verify the full behavior: Completion trend shown.
**Expected Result:** Completion trend shown — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-006 — Per course or all courses
**Type:** Positive
**Covers:** 2.1 → Per course or all courses
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Per course or all courses.
2. Observe the result and verify the full behavior: Per course or all courses.
**Expected Result:** Per course or all courses — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-007 — Analytics available on web and mobile
**Type:** Positive
**Covers:** 2.1 → Analytics available on web and mobile
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Analytics available on web and mobile.
2. Observe the result and verify the full behavior: Analytics available on web and mobile.
**Expected Result:** Analytics available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-008 — Analytics event logging (viewed)
**Type:** Positive
**Covers:** 2.1 → Analytics event logging (viewed)
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Analytics event logging (viewed).
2. Observe the result and verify the full behavior: Analytics event logging (viewed).
**Expected Result:** Analytics event logging (viewed) — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-009 — Audit logging of the course completion analytics
**Type:** Positive
**Covers:** 2.1 → Audit logging of the course completion analytics
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, perform the course completion analytics action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The course completion analytics action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical


## 2.2 Assessment Performance Analytics

### TC-TI-6-02-010 — Assessment performance analytics
**Type:** Positive
**Covers:** 2.2 → Assessment performance analytics; Rule: The most-missed questions are ranked by miss rate.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Assessment performance analytics.
2. Observe the result and verify the full behavior: Assessment performance analytics.
**Expected Result:** Assessment performance analytics — delivered exactly as documented.
**Priority:** Critical

### TC-TI-6-02-011 — Average score per assessment
**Type:** Positive
**Covers:** 2.2 → Average score per assessment; Rule: The pass rate is based on the assessment's pass mark.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Average score per assessment.
2. Observe the result and verify the full behavior: Average score per assessment.
**Expected Result:** Average score per assessment — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-012 — Score distribution shown
**Type:** Positive
**Covers:** 2.2 → Score distribution shown; Rule: Analytics events (viewed) are logged with the account and the timestamp.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Score distribution shown.
2. Observe the result and verify the full behavior: Score distribution shown.
**Expected Result:** Score distribution shown — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-013 — Pass rate shown
**Type:** Positive
**Covers:** 2.2 → Pass rate shown; Rule: The assessment performance analytics is audit-logged with the account and the timestamp.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Pass rate shown.
2. Observe the result and verify the full behavior: Pass rate shown.
**Expected Result:** Pass rate shown — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-014 — Most-missed questions shown
**Type:** Positive
**Covers:** 2.2 → Most-missed questions shown
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Most-missed questions shown.
2. Observe the result and verify the full behavior: Most-missed questions shown.
**Expected Result:** Most-missed questions shown — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-015 — Per assessment or across the course
**Type:** Positive
**Covers:** 2.2 → Per assessment or across the course
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Per assessment or across the course.
2. Observe the result and verify the full behavior: Per assessment or across the course.
**Expected Result:** Per assessment or across the course — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-016 — Analytics available on web and mobile
**Type:** Positive
**Covers:** 2.2 → Analytics available on web and mobile
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Analytics available on web and mobile.
2. Observe the result and verify the full behavior: Analytics available on web and mobile.
**Expected Result:** Analytics available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-017 — Analytics event logging (viewed)
**Type:** Positive
**Covers:** 2.2 → Analytics event logging (viewed)
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Analytics event logging (viewed).
2. Observe the result and verify the full behavior: Analytics event logging (viewed).
**Expected Result:** Analytics event logging (viewed) — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-018 — Audit logging of the assessment performance analytics
**Type:** Positive
**Covers:** 2.2 → Audit logging of the assessment performance analytics
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, perform the assessment performance analytics action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The assessment performance analytics action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical


## 2.3 Course Comparison

### TC-TI-6-02-019 — Course comparison view
**Type:** Positive
**Covers:** 2.3 → Course comparison view; Rule: At least two courses are required for a comparison.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Course comparison view.
2. Observe the result and verify the full behavior: Course comparison view.
**Expected Result:** Course comparison view — delivered exactly as documented.
**Priority:** Critical

### TC-TI-6-02-020 — Select two or more courses
**Type:** Positive
**Covers:** 2.3 → Select two or more courses; Rule: The comparison is exportable.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Select two or more courses.
2. Observe the result and verify the full behavior: Select two or more courses.
**Expected Result:** Select two or more courses — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-021 — Completion rates side by side
**Type:** Positive
**Covers:** 2.3 → Completion rates side by side; Rule: Comparison events (viewed, exported) are logged with the account and the timestamp.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Completion rates side by side.
2. Observe the result and verify the full behavior: Completion rates side by side.
**Expected Result:** Completion rates side by side — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-022 — Average scores side by side
**Type:** Positive
**Covers:** 2.3 → Average scores side by side; Rule: The course comparison is audit-logged with the account and the timestamp.
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Average scores side by side.
2. Observe the result and verify the full behavior: Average scores side by side.
**Expected Result:** Average scores side by side — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-023 — Enrollment side by side
**Type:** Positive
**Covers:** 2.3 → Enrollment side by side
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Enrollment side by side.
2. Observe the result and verify the full behavior: Enrollment side by side.
**Expected Result:** Enrollment side by side — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-024 — Export the comparison
**Type:** Positive
**Covers:** 2.3 → Export the comparison
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Export the comparison.
2. Observe the result and verify the full behavior: Export the comparison.
**Expected Result:** Export the comparison — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-025 — Comparison available on web and mobile
**Type:** Positive
**Covers:** 2.3 → Comparison available on web and mobile
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Comparison available on web and mobile.
2. Observe the result and verify the full behavior: Comparison available on web and mobile.
**Expected Result:** Comparison available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-026 — Comparison event logging (viewed, exported)
**Type:** Positive
**Covers:** 2.3 → Comparison event logging (viewed, exported)
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, set up the precondition and perform: Comparison event logging (viewed, exported).
2. Observe the result and verify the full behavior: Comparison event logging (viewed, exported).
**Expected Result:** Comparison event logging (viewed, exported) — delivered exactly as documented.
**Priority:** High

### TC-TI-6-02-027 — Audit logging of the course comparison
**Type:** Positive
**Covers:** 2.3 → Audit logging of the course comparison
**Preconditions:** A Training Institute account is active and the Training Institute is in the state required for this behavior.
**Steps:**
1. As a Training Institute, perform the course comparison action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The course comparison action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical
