Codeception and Symfony 2

Codeception is perfect starting point for beginners to Test Driven Development (TDD) and Behaviour Driven Development (BDD). That's not to say it's not also great for those already comfortable with TDD and BDD, but rather it has an easier learning curve to help get started.

If you've ever dabbled with PHPUnit, think of Codeception as PHPUnit on Steroids. You gain all the benefits of PHPUnit along with Codeception's improvements, productivity tweaks, and add-ons. And that's not even mentioning the Functional and Acceptance testing suites, which can really aid on medium scale projects and above.

In this course you're going to learn the basics to get started using Codeception in your new or existing Symfony project. This includes everything from downloading the Codeception package through configuration and project initialisation.

From there, we'll cover Unit testing in depth. If you've never created or used Unit tests before, you're in for a real treat as they are a total game changer in how you approach future tasks. Think of them as doing software development with cheats turned on.

Then we'll cover Acceptance tests. These are the ones that will blow your bosses (or your clients) mind. Being able to simulate a real life human sat at a computer, clicking, tapping, entering text, choosing options from a drop down, submitting forms and checking the database to make sure everything went as expected. It's all there, and more besides.

We'll finish off by covering some of the more intermediate to advanced stuff, from Code Coverage reports through to Page and Step Objects.

It's all super cool stuff, so lets not delay any longer.


# Title Duration
1 Installing Codeception in Your Symfony 2 Project 04:20
2 Bootstrapping Codeception 02:09
3 Codeception's Folder Structure 06:43
4 Generating Tests 06:28
5 How to Run Codeception Tests 02:44
6 Our First Acceptance Test 08:00
7 An Alternative Perspective on Acceptance Testing 04:33
8 Acceptance Testing Symfony Forms 08:22
9 Acceptance Testing and Javascript (Part 1 of 2) 07:31
10 Acceptance Testing and Javascript (Part 2 of 2) 08:06
11 An Introduction to Unit Testing in Codeception 04:24
12 Unit Testing a Symfony Service 11:59
13 Integration with Symfony 2 06:27
14 Databases and Unit Tests 14:21
15 Real World Unit Testing - Database Clean Up Issues 06:15
16 Fast PHP Unit Testing with SQLite Database 10:19
17 Mocking the Entity Manager 20:22
18 Codeception Selenium Setup 06:08
19 How to Setup XDebug with PHPStorm 07:36
20 Step Objects and Page Objects 09:35
21 Fizz Buzz Kata 24:43
22 Code Coverage Reports 10:30
23 Running Acceptance Tests Faster With Phantom JS 01:30
24 Mobile Browser Tests 01:18

Code For This Course

Get the code for this course.

Presented By

Christopher Moss

Christopher Moss

Hi, I'm Chris and welcome to In this video you will learn about... :)