₹0 for students · Certificate · Beginner

Testing and Debugging

3 mini courses, 12 lessons: unit tests, integration and end-to-end tests, and a method for any bug

12 lessons · ~2 hours · 24-question final exam · pass mark 70%

About the course

What you’ll learn

The skills that separate code that works once from software people can rely on. Write unit tests with pytest, design test cases that find bugs, use mocks wisely, test APIs and user flows, and try test-driven development. Then learn a calm, systematic way to debug anything, the tools that speed it up, the bug patterns that come up again and again, and how to find performance problems. Pass every lesson quiz and the final exam to earn a verifiable certificate.

TestingDebuggingpytestCode qualityPython

Part of the career tracks: Web Developer, Computer Science Foundations

How the certificate works

  1. Read each lesson’s study guide, then the full lesson and any notebooks or exercises.
  2. Pass every lesson quiz with 70% or more.
  3. Pass the final exam: 24 questions in 36 minutes.
  4. Get a certificate with a public verification link, and add it to LinkedIn.

Syllabus

12 lessons in 3 mini courses

Each mini course takes about an hour. Already know one? Test out in the app and skip it.

1. Unit testing

Write focused unit tests with pytest and design cases that catch bugs.

1
Why Test, and the Test Pyramid
10 min · Tests catch bugs early, enable refactoring and document behaviour.
2
Unit Tests with pytest
12 min · pytest finds test_* functions and uses plain assert.
3
Designing Test Cases
12 min · Equivalence partitioning: one test per group of similar inputs.
4
Mocks, Stubs and Fakes
12 min · Test doubles replace slow or external dependencies.

2. Testing whole systems

Test APIs and user flows, practise TDD and judge test quality.

5
Integration and API Tests
12 min · Integration tests check pieces working together: database, HTTP API.
6
End-to-End and UI Tests
10 min · E2E tests drive the real app like a user.
7
Test-Driven Development
10 min · TDD: write a failing test, make it pass, then refactor.
8
Coverage, Flaky Tests and Test Quality
10 min · Coverage shows which code tests execute; low coverage finds gaps.

3. Debugging

Debug systematically, use the right tools and recognise common bug patterns.

9
A Method for Any Bug
12 min · Reproduce reliably, then shrink to the smallest failing case.
10
Debuggers, Logging and Other Tools
10 min · Debuggers pause at breakpoints so you can inspect and step.
11
Common Bug Patterns
12 min · Off-by-one: ranges, < vs <=, inclusive dates.
12
Finding Performance Problems
10 min · Measure with a profiler before optimising.

Written by Vikosha. Lessons, questions and exercises are original. Licence: Original Vikosha course..