# 4. Student Communication & Reports — Test Cases

User Type: **Training Institute**
Source: *Mi Digital Academy - Education CRM Features Document*
Spec: student_communication_reports.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 |
|---------|--------------------|----------|
| 4.1 | Compose an announcement | TC-TI-4-04-001 |
| 4.1 | Target all students or a group | TC-TI-4-04-002 |
| 4.1 | Announcement sent in-app and by email | TC-TI-4-04-003 |
| 4.1 | Delivery status shown | TC-TI-4-04-004 |
| 4.1 | Announcement history | TC-TI-4-04-005 |
| 4.1 | Edit or withdraw a pending announcement | TC-TI-4-04-006 |
| 4.1 | Announcements available on web and mobile | TC-TI-4-04-007 |
| 4.1 | Announcements event logging (sent, delivered) | TC-TI-4-04-008 |
| 4.1 | Audit logging of the student announcements | TC-TI-4-04-009 |
| 4.1 | Rule: A pending announcement can be edited or withdrawn before sending. | TC-TI-4-04-001 |
| 4.1 | Rule: The delivery status is per student. | TC-TI-4-04-002 |
| 4.1 | Rule: Announcements events (sent, delivered) are logged with the account and the timestamp. | TC-TI-4-04-003 |
| 4.1 | Rule: The student announcements is audit-logged with the account and the timestamp. | TC-TI-4-04-004 |
| 4.2 | Student engagement report | TC-TI-4-04-010 |
| 4.2 | Active students count | TC-TI-4-04-011 |
| 4.2 | Login frequency shown | TC-TI-4-04-012 |
| 4.2 | Time on platform shown | TC-TI-4-04-013 |
| 4.2 | Engagement trend shown | TC-TI-4-04-014 |
| 4.2 | Set the report period | TC-TI-4-04-015 |
| 4.2 | View or export the report | TC-TI-4-04-016 |
| 4.2 | Report available on web and mobile | TC-TI-4-04-017 |
| 4.2 | Report event logging (viewed, exported) | TC-TI-4-04-018 |
| 4.2 | Audit logging of the student engagement report | TC-TI-4-04-019 |
| 4.2 | Rule: The engagement trend is over the selected period. | TC-TI-4-04-010 |
| 4.2 | Rule: The report period is selectable. | TC-TI-4-04-011 |
| 4.2 | Rule: Report events (viewed, exported) are logged with the account and the timestamp. | TC-TI-4-04-012 |
| 4.2 | Rule: The student engagement report is audit-logged with the account and the timestamp. | TC-TI-4-04-013 |
| 4.3 | Student data export | TC-TI-4-04-020 |
| 4.3 | Select data fields | TC-TI-4-04-021 |
| 4.3 | Select the student scope | TC-TI-4-04-022 |
| 4.3 | Select the export format | TC-TI-4-04-023 |
| 4.3 | Export downloaded | TC-TI-4-04-024 |
| 4.3 | Export includes only entitled data | TC-TI-4-04-025 |
| 4.3 | Export available on web and mobile | TC-TI-4-04-026 |
| 4.3 | Export event logging (exported) | TC-TI-4-04-027 |
| 4.3 | Audit logging of the student data export | TC-TI-4-04-028 |
| 4.3 | Rule: The export includes only the data the Institute is entitled to. | TC-TI-4-04-020 |
| 4.3 | Rule: The export is limited to the selected scope. | TC-TI-4-04-021 |
| 4.3 | Rule: Export events (exported) are logged with the account and the timestamp. | TC-TI-4-04-022 |
| 4.3 | Rule: The student data export is audit-logged with the account and the timestamp. | TC-TI-4-04-023 |

## 4.1 Student Announcements

### TC-TI-4-04-001 — Compose an announcement
**Type:** Positive
**Covers:** 4.1 → Compose an announcement; Rule: A pending announcement can be edited or withdrawn before sending.
**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: Compose an announcement.
2. Observe the result and verify the full behavior: Compose an announcement.
**Expected Result:** Compose an announcement — delivered exactly as documented.
**Priority:** Critical

### TC-TI-4-04-002 — Target all students or a group
**Type:** Positive
**Covers:** 4.1 → Target all students or a group; Rule: The delivery status is per student.
**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: Target all students or a group.
2. Observe the result and verify the full behavior: Target all students or a group.
**Expected Result:** Target all students or a group — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-003 — Announcement sent in-app and by email
**Type:** Positive
**Covers:** 4.1 → Announcement sent in-app and by email; Rule: Announcements events (sent, delivered) 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: Announcement sent in-app and by email.
2. Observe the result and verify the full behavior: Announcement sent in-app and by email.
**Expected Result:** Announcement sent in-app and by email — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-004 — Delivery status shown
**Type:** Positive
**Covers:** 4.1 → Delivery status shown; Rule: The student announcements 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: Delivery status shown.
2. Observe the result and verify the full behavior: Delivery status shown.
**Expected Result:** Delivery status shown — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-005 — Announcement history
**Type:** Positive
**Covers:** 4.1 → Announcement history
**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: Announcement history.
2. Observe the result and verify the full behavior: Announcement history.
**Expected Result:** Announcement history — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-006 — Edit or withdraw a pending announcement
**Type:** Positive
**Covers:** 4.1 → Edit or withdraw a pending announcement
**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: Edit or withdraw a pending announcement.
2. Observe the result and verify the full behavior: Edit or withdraw a pending announcement.
**Expected Result:** Edit or withdraw a pending announcement — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-007 — Announcements available on web and mobile
**Type:** Positive
**Covers:** 4.1 → Announcements 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: Announcements available on web and mobile.
2. Observe the result and verify the full behavior: Announcements available on web and mobile.
**Expected Result:** Announcements available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-008 — Announcements event logging (sent, delivered)
**Type:** Positive
**Covers:** 4.1 → Announcements event logging (sent, delivered)
**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: Announcements event logging (sent, delivered).
2. Observe the result and verify the full behavior: Announcements event logging (sent, delivered).
**Expected Result:** Announcements event logging (sent, delivered) — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-009 — Audit logging of the student announcements
**Type:** Positive
**Covers:** 4.1 → Audit logging of the student announcements
**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 student announcements action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The student announcements action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical


## 4.2 Student Engagement Report

### TC-TI-4-04-010 — Student engagement report
**Type:** Positive
**Covers:** 4.2 → Student engagement report; Rule: The engagement trend is over the selected period.
**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: Student engagement report.
2. Observe the result and verify the full behavior: Student engagement report.
**Expected Result:** Student engagement report — delivered exactly as documented.
**Priority:** Critical

### TC-TI-4-04-011 — Active students count
**Type:** Positive
**Covers:** 4.2 → Active students count; Rule: The report period is selectable.
**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: Active students count.
2. Observe the result and verify the full behavior: Active students count.
**Expected Result:** Active students count — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-012 — Login frequency shown
**Type:** Positive
**Covers:** 4.2 → Login frequency shown; Rule: Report 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: Login frequency shown.
2. Observe the result and verify the full behavior: Login frequency shown.
**Expected Result:** Login frequency shown — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-013 — Time on platform shown
**Type:** Positive
**Covers:** 4.2 → Time on platform shown; Rule: The student engagement report 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: Time on platform shown.
2. Observe the result and verify the full behavior: Time on platform shown.
**Expected Result:** Time on platform shown — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-014 — Engagement trend shown
**Type:** Positive
**Covers:** 4.2 → Engagement 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: Engagement trend shown.
2. Observe the result and verify the full behavior: Engagement trend shown.
**Expected Result:** Engagement trend shown — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-015 — Set the report period
**Type:** Positive
**Covers:** 4.2 → Set the report period
**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: Set the report period.
2. Observe the result and verify the full behavior: Set the report period.
**Expected Result:** Set the report period — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-016 — View or export the report
**Type:** Positive
**Covers:** 4.2 → View or export the report
**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: View or export the report.
2. Observe the result and verify the full behavior: View or export the report.
**Expected Result:** View or export the report — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-017 — Report available on web and mobile
**Type:** Positive
**Covers:** 4.2 → Report 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: Report available on web and mobile.
2. Observe the result and verify the full behavior: Report available on web and mobile.
**Expected Result:** Report available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-018 — Report event logging (viewed, exported)
**Type:** Positive
**Covers:** 4.2 → Report 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: Report event logging (viewed, exported).
2. Observe the result and verify the full behavior: Report event logging (viewed, exported).
**Expected Result:** Report event logging (viewed, exported) — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-019 — Audit logging of the student engagement report
**Type:** Positive
**Covers:** 4.2 → Audit logging of the student engagement report
**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 student engagement report action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The student engagement report action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical


## 4.3 Student Data Export

### TC-TI-4-04-020 — Student data export
**Type:** Positive
**Covers:** 4.3 → Student data export; Rule: The export includes only the data the Institute is entitled to.
**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: Student data export.
2. Observe the result and verify the full behavior: Student data export.
**Expected Result:** Student data export — delivered exactly as documented.
**Priority:** Critical

### TC-TI-4-04-021 — Select data fields
**Type:** Positive
**Covers:** 4.3 → Select data fields; Rule: The export is limited to the selected scope.
**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 data fields.
2. Observe the result and verify the full behavior: Select data fields.
**Expected Result:** Select data fields — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-022 — Select the student scope
**Type:** Positive
**Covers:** 4.3 → Select the student scope; Rule: Export events (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: Select the student scope.
2. Observe the result and verify the full behavior: Select the student scope.
**Expected Result:** Select the student scope — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-023 — Select the export format
**Type:** Positive
**Covers:** 4.3 → Select the export format; Rule: The student data export 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: Select the export format.
2. Observe the result and verify the full behavior: Select the export format.
**Expected Result:** Select the export format — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-024 — Export downloaded
**Type:** Positive
**Covers:** 4.3 → Export downloaded
**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 downloaded.
2. Observe the result and verify the full behavior: Export downloaded.
**Expected Result:** Export downloaded — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-025 — Export includes only entitled data
**Type:** Positive
**Covers:** 4.3 → Export includes only entitled data
**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 includes only entitled data.
2. Observe the result and verify the full behavior: Export includes only entitled data.
**Expected Result:** Export includes only entitled data — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-026 — Export available on web and mobile
**Type:** Positive
**Covers:** 4.3 → Export 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: Export available on web and mobile.
2. Observe the result and verify the full behavior: Export available on web and mobile.
**Expected Result:** Export available on web and mobile — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-027 — Export event logging (exported)
**Type:** Positive
**Covers:** 4.3 → Export event logging (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: Export event logging (exported).
2. Observe the result and verify the full behavior: Export event logging (exported).
**Expected Result:** Export event logging (exported) — delivered exactly as documented.
**Priority:** High

### TC-TI-4-04-028 — Audit logging of the student data export
**Type:** Positive
**Covers:** 4.3 → Audit logging of the student data export
**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 student data export action.
2. Open the audit log and verify the entry for the action.
**Expected Result:** The student data export action is recorded in the audit log with the account and the timestamp.
**Priority:** Critical
