Software Testing Course – Playwright, E2E, and AI Agents
Learn the essentials of software testing, from fundamental concepts like the testing pyramid to hands-on automation using Playwright. You will explore real-world case studies of software failures and learn advanced techniques such as mocking, edge case testing, and accessibility. Finally, discover how AI-powered tools like Kane AI are enabling natural language test generation and auto-healing capabilities.
✏️ Course created by @beau
Code: https://github.com/beaucarnes/software-testing-course
🔗 Sign up for KaneAI here: https://www.testmuai.com/kane-ai/?utm_source=youtube&utm_medium=freecodecamp_ifm&utm_campaign=kane_ai&utm_content=dv&via=vibetest
🏗️ TestMu provided a grant to make this course possible.
⭐️ Video Chapters ⭐️
- 0:00:00 Course Introduction and Overview
- 0:01:18 Why Software Testing Matters
- 0:01:43 Case Studies: Knight Capital & Therac-25
- 0:02:43 The Boeing 737 Max & The Cost of Everyday Bugs
- 0:03:33 Testing as "Insurance" for Your Code
- 0:04:32 The Testing Pyramid: Unit, Integration, & E2E
- 0:11:19 Test-Driven Development (TDD) Explained
- 0:12:15 Hands-on: Setting Up the TechMart Sample App
- 0:14:12 Playwright Framework Installation & Setup
- 0:16:48 Understanding Playwright Test Structure & Assertions
- 0:19:13 Writing a Search Functionality Test from Scratch
- 0:22:02 Strategic Locators: Finding Elements Effectively
- 0:23:05 Testing Complex Shopping Cart Logic
- 0:24:53 Login Forms, Validations, & Error Handling
- 0:27:09 Full End-to-End Checkout Flow Walkthrough
- 0:30:00 Direct API Testing with Playwright
- 0:31:59 Debugging Tests in Headed and UI Interactive Modes
- 0:34:15 Testing Edge Cases and Security (XSS) Vulnerabilities
- 0:37:29 Mocking API Responses and Simulating Slow Networks
- 0:41:26 Accessibility Testing for Screen Readers & Keyboards
- 0:45:40 Challenges: Learning Curves and Maintenance Burdens
- 0:47:18 Introduction to AI-Powered Software Testing
- 0:50:11 Hands-on with KaneAI: Authoring Tests in Plain English
- 0
Watch on YouTube ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
Playlist
Uploads from freeCodeCamp.org · freeCodeCamp.org · 0 of 60
← Previous
Next →
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
React: Production Server Setup Part 2 - Live Coding with Jesse
freeCodeCamp.org
cookies vs localStorage vs sessionStorage - Beau teaches JavaScript
freeCodeCamp.org
Browser history tutorial - Beau teaches JavaScript
freeCodeCamp.org
Graph Data Structure Intro (inc. adjacency list, adjacency matrix, incidence matrix)
freeCodeCamp.org
React: Parameterized Routing with Next.js - Live Coding with Jesse
freeCodeCamp.org
React: Dealing with jQuery Issues - Live Coding with Jesse
freeCodeCamp.org
setInterval and setTimeout: timing events - Beau teaches JavaScript
freeCodeCamp.org
Browser and Device Testing - Live Coding with Jesse
freeCodeCamp.org
Last Minute Updates - Live Coding with Jesse
freeCodeCamp.org
Post Launch Updates - Live Coding with Jesse
freeCodeCamp.org
React: Setting Up Google Analytics - Live Coding with Jesse
freeCodeCamp.org
React: Masonry Layout - Live Coding with Jesse
freeCodeCamp.org
Load Balancing Digital Ocean Droplets - Live Coding with Jesse
freeCodeCamp.org
try, catch, finally, throw - error handling in JavaScript
freeCodeCamp.org
Load Balancing: SSL Passthrough Setup - Live Coding with Jesse
freeCodeCamp.org
Graphs: breadth-first search - Beau teaches JavaScript
freeCodeCamp.org
React: Masonry Layout Part 2 - Live Coding with Jesse
freeCodeCamp.org
React: WordPress API Live Search - Live Coding with Jesse
freeCodeCamp.org
Creating WordPress Custom Post Types - Live Coding With Jesse
freeCodeCamp.org
Dates - Beau teaches JavaScript
freeCodeCamp.org
Miscellaneous Front End Updates - Live Coding with Jesse
freeCodeCamp.org
Merging a Pull Request from GitHub - Live Coding with Jesse
freeCodeCamp.org
React + Prettier + Standard JS - Live Coding with Jesse
freeCodeCamp.org
React: Sortable Responsive Table - Live Coding with Jesse
freeCodeCamp.org
Geolocation Sorting by Distance - Live Coding with Jesse
freeCodeCamp.org
Tradeoff Matrix - Agile Software Development
freeCodeCamp.org
The Definition of Ready - Agile Software Development
freeCodeCamp.org
Getting first React job without experience - Ask Preethi
freeCodeCamp.org
React: Google Analytics Click Tracking - Live Coding with Jesse
freeCodeCamp.org
Submitting a PR to an Open Source Project - Live Coding with Jesse
freeCodeCamp.org
Should I go back to school to get CS degree? - Ask Preethi
freeCodeCamp.org
Hero Section CSS Changes - Live Coding with Jesse
freeCodeCamp.org
Working Agreement - Agile Software Development
freeCodeCamp.org
A day at Pennybox with Co-Founder Reji Eapen
freeCodeCamp.org
React: Sorting and Filtering Data - Live Coding with Jesse
freeCodeCamp.org
React: Sorting and Filtering Data Part 2 - Live Coding with Jesse
freeCodeCamp.org
React: Building a New UI - Live Coding with Jesse
freeCodeCamp.org
Definition of Done - Agile Software Development
freeCodeCamp.org
Getting started with jQuery (tutorial) - Beau teaches JavaScript
freeCodeCamp.org
Making a React Blog with WordPress Content - Live Coding with Jesse
freeCodeCamp.org
React, NextJS, CSS - Live Coding with Jesse
freeCodeCamp.org
jQuery events - Beau teaches JavaScript
freeCodeCamp.org
React/NextJS Routing and WordPress API Custom Types - Live Coding with Jesse
freeCodeCamp.org
React: Working with API Data - Live Coding with Jesse
freeCodeCamp.org
React: Refactoring Components - Live Streaming with Jesse
freeCodeCamp.org
jQuery effects - Beau teaches JavaScript
freeCodeCamp.org
More React Refactoring - Live Coding with Jesse
freeCodeCamp.org
animate in jQuery - Beau teaches JavaScript
freeCodeCamp.org
"Finishing" My React Site - Live Coding with Jesse
freeCodeCamp.org
Starting a New React Project (P2D1) - Live Coding with Jesse
freeCodeCamp.org
React Project 2 Day 2: Learning Material UI - Live Coding with Jesse
freeCodeCamp.org
The Agile Manifesto - Agile Software Development
freeCodeCamp.org
jQuery: get and set with http, text, val, and attr - Beau teaches JavaScript
freeCodeCamp.org
React Project 2 Day 3 - Live Coding with Jesse
freeCodeCamp.org
The INVEST approach to product backlog items
freeCodeCamp.org
React Project 2 Day 4 - Live Coding with Jesse
freeCodeCamp.org
Chickens and Pigs - Agile Software Development
freeCodeCamp.org
React Project 2 Day 5 - Live Coding with Jesse
freeCodeCamp.org
jQuery: add and remove DOM elements - Beau teaches JavaScript
freeCodeCamp.org
React Project 2 Day 6 - Live Coding with Jesse
freeCodeCamp.org
More on: Tool Use & Function Calling
View skill →Related AI Lessons
⚡
⚡
⚡
⚡
Autocomplete Was a Mistake T-shirt — built by an AI agent
Dev.to AI
MCP Gives AI Agents Hands. Safety Teaches Them Where Not to Touch
Dev.to AI
What Is an AI Agent: A Builder's Definition from Production
Dev.to · Elena Revicheva
MCP (Model Context Protocol) for .NET Devs — What It Is and Why You'll Be Using It Soon
Dev.to · Vikrant Bagal
🎓
Tutor Explanation
DeepCamp AI