Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Testing PHP 2022 Edition
Welcome
Course Welcome and Important Information (2:18)
What This Course Will Cover (6:08)
Get your next course half price!
Getting Started With PHPUnit
Course Files and Github Repository
Installing PHPUnit (2:31)
Write Your First Test (8:30)
Testing Functions (4:53)
Testing Class Methods (7:15)
Command Line Options (6:36)
Filtering Tests (2:10)
Errors vs Failures (4:34)
Autoloading (5:47)
How's it going so far?
PHPUnit Workflow and Configuration
The setUp Method (5:09)
The tearDown Method (4:23)
Using Tests to Refactor (2:59)
Using Assertions (14:22)
Write Your Own Failure Message (2:21)
Configure PHPUnit Using phpunit.xml (15:14)
Testing Errors and Exceptions (14:28)
Data Providers (8:45)
Testing Strategies Part One (Unit Testing)
The Testing Strategies Project
Testing Strategies Introduction (3:58)
Got Feedback? Now’s a Great Time!
The Project Files (14:58)
Create the Database Table (4:06)
The Test Plan (1:17)
Risky Tests and Incomplete Tests (4:21)
Mocking (14:10)
Testing Mock Expectations (7:09)
Refactoring for Easier Testing (5:35)
Mocking Static Methods (7:16)
Test New Followers Per Week (10:15)
Testing All Logic Paths (3:11)
Should You Replace Static Methods (2:34)
Tidy Up Unit Testing Loose Ends (2:57)
Testing Strategies Part Two (Integration Testing)
Introduction to Integration Testing (3:02)
When Not To Mock (3:28)
Testing API Integration (12:37)
Grouping Tests Using @group (4:01)
Testing An Authentication Exception (8:53)
Intro to Testing Against A Database (3:34)
Create a Test Database Connection (5:43)
Create a Schema Tool (2:33)
Create A Database Dependant Test Case (6:13)
Testing Ordered Database Records (10:12)
Testing null Database Returns (4:12)
Test Saving to the Database (11:36)
Create a Database Test Assertion (4:30)
Flatten an Array (6:55)
Flatten the Twitter Data (3:09)
Testing Strategies Part Three (Feature / Functional Testing)
Introduction to Feature Testing (2:50)
Feature Test Setup (14:25)
Feature Test Assertions (7:05)
Running The Feature Tests (5:51)
Test Doubles (Bonus Content Section)
Introduction
PHPUnit Test Doubles (8:02)
Testing Expectations (3:36)
Faking Method Return Values (5:07)
Testing Consecutive Returns (3:42)
Throwing Exceptions From Stubbed Methods (2:38)
Will Return Callback (4:13)
Test Faked Methods Receive Correct Arguments (6:10)
Test Faked Methods Receive Correct Arguments Using Callbacks (6:21)
The Mock Builder (10:36)
Final Thoughts? We'd Love to Hear Them!
Test Coverage
Test Coverage Introduction (2:07)
Test Coverage Setup (7:22)
HTML Format Coverage Report (4:16)
Maximizing Test Coverage (7:01)
Test Driven Development
Introduction (4:11)
Setup (2:17)
TDD Baby Steps (12:46)
Red > Green > Clean (4:51)
Value Objects (4:15)
Privacy (3:53)
Dollar Objects (2:55)
Common Equals (6:09)
Comparing Apples and Oranges (3:34)
Eliminating Duplicate Classes (7:03)
Simple Currency (11:38)
Ask The Computer (11:02)
A BIG Clean Up (2:48)
Simple Addition (13:17)
A Sum of Moneys (6:32)
Make It (12:03)
Converting Currency (16:06)
Adding Mixed Currencies (5:37)
The Extra Mile (5:05)
Multiplying Sums (4:18)
Let's Go Crazy (2:49)
Retrospective (6:47)
Applying TDD to the Testing Strategies Project
Using Tests to Switch Libraries (19:02)
Switching Libraries (3:58)
Testing HTTP Request -> Response
Testing HTTP Request / Response Introduction (0:54)
Laravel Test Setup (5:12)
Asserting Against Response Content (6:38)
Testing Authenticated Endpoints (5:25)
Create a Post Model (8:06)
Full Request -> Response Test (6:12)
Refer a Friend & Unlock Big Discounts!
Congratulations
Static Analysis with PHPStan
Introduction to PHPStan
Installing PHPStan (3:45)
Command Options (2:27)
PHPStan Rule Levels (3:32)
Ignoring Errors (2:35)
Introduction to PHPStan Config (3:15)
You're Crushing It! Reward Yourself with 25% Off!
Loved This Course? Here’s Your Next Step!
Shared Configuration (6:02)
Generating The Baseline (5:19)
Add PHPStan to an Existing Codebase (2:31)
PHPStan Extensions (2:57)
Fixing Common Errors (3:29)
Config Practice (5:49)
Running Tests in CI (3:53)
Persisting Data
Love Our Courses? Get Paid to Spread the Word! (1:01)
Congrations...here are your next steps (1:07)
Course Files and Github Repository
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock