PracticeQAAutomation logoPracticeQAAutomation

📘 Project KT · Education

🎓 LearnHub

E-learning (LMS)

Complexity
Advanced
Screens
4
Scenarios
8
Test cases
16

1Business context

LearnHub is a learning management system. Learners enrol, watch lessons, track progress and take a timed quiz; passing (60%+) issues a certificate. Content gating and progress persistence are core business rules.

Sign up with live password rules or log in, enroll in a course, watch lessons to unlock “Mark complete”, finish the course to unlock a timed quiz, and earn a certificate.

2Users & roles

  • 👤 Learner (learner@learnhub.dev / Learn@123) — signs up or logs in, completes courses, takes quizzes

3Modules & screens

ScreenRouteWhat it does
Login / sign-up/apps/lmsValidation, password strength and duplicate-email check
Catalogue/apps/lms/coursesSearch, category chips, level filter, enrol
Course player/apps/lms/course/[id]Lessons, play then mark complete, progress bar
Quiz/apps/lms/course/[id]/quizMixed question types, 5-minute timer, result and certificate

4Main end-to-end journey

Enrol, finish, pass and certify

  1. Log in as learner@learnhub.dev / Learn@123
  2. Search Selenium and enrol
  3. For each lesson play the video then mark complete
  4. Start the quiz and answer all four correctly
  5. Submit

Expected: Progress reaches 100%, quiz scores 100%, and a certificate with an LH- id appears

5Business rules & validations

  • Sign-up validationBeginner

    password-strength updates as you type; a weak password, mismatched confirm or reused email each fail.

  • Catalog filtersBeginner

    Combine course-search, category-* chips and level-filter; assert course-count.

  • Wait for enabledIntermediate

    mark-complete is disabled until play-video finishes (~1.5s) — wait for it to be enabled.

  • Progress trackingIntermediate

    Each completed lesson updates course-progress and the lesson check marks; state survives reloads.

  • Locked contentIntermediate

    quiz-locked shows until 100%; visiting /quiz directly also shows the locked state.

  • Mixed question typesIntermediate

    Answer radio (q1-*), checkboxes (q2-*), a select (q3) and free text (q4).

  • Unanswered confirmAdvanced

    Submitting with blanks opens unanswered-modal; submit-anyway grades as wrong.

  • Timer auto-submitAdvanced

    Mock the clock past 5:00 and assert the quiz auto-submits to quiz-result.

6Test data & credentials

URL
/apps/lms
Learner
learner@learnhub.dev
Password
Learn@123
Pass mark
60%

7Glossary

Pass mark
60% — issues a certificate with an LH- id
Locked quiz
Quiz is unavailable until course progress is 100%
Mark complete
Enabled only after the lesson video finishes (~1.5 s)

8Watch-outs for automation

  • ⚠️Wait for mark-complete to become enabled — don't click it early
  • ⚠️Progress persists across reloads
  • ⚠️Mock the clock to test quiz auto-submit at 5:00

9Suggested test strategy

1 · Smoke

4

P1 positive and end-to-end cases — run on every build.

2 · Regression

16

All cases, incl. 4 negative and 4 edge — run before release.

3 · End-to-end

3

Full user journeys — run nightly.

Start with these smoke cases

  • LEARNHUB-01 — Log in and complete a lesson
  • LEARNHUB-02 — Pass the quiz
  • LEARNHUB-E2E-01 — Enrol, finish, pass and certify
  • LEARNHUB-E2E-02 — Sign up and resume later