Generating Tests

In this video we follow the third step of the Codeception quick start which is to generate our first test files.

However, deviating slightly from the Codeception quick start, we are going to go ahead and generate the four different types of test that Codeception provides for our use. These are:

  • Cept (ac-Cept-ance test)
  • Cest (a combination of Acceptance and Test)
  • PHPUnit
  • Test (Codeception's enhanced PHPUnit tests)

The syntax we will need is:

php vendor/codeception/codeception/codecept generate:cept acceptance MyFirstAcceptanceTest

php vendor/codeception/codeception/codecept generate:cest functional MyFirstFunctionalTest

php vendor/codeception/codeception/codecept generate:unit unit MyFirstUnitTest

php vendor/codeception/codeception/codecept generate:test unit MyFirstCodeceptionEnhancedPHPUnitTest

You can, of course, use the shorter syntax here.

There's lots more going on here including sub directories, some real world good practices to follow, and more.


Code For This Course

Get the code for this course.

Code For This Video

Get the code for this video.


# 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