This Documentation represents the last stable release of Codeception. Docs for older versions are listed below:


Guides will walk you though the basic concepts of testing to the full understanding knowlegde of Codeception. Everything you want to know about Codeception can be found in Guides.

  • Introduction - all about testing: acceptance, unit, and functional tests explained.
  • Getting Started - setting up and writing a first test with Codeception
  • Modules - understanding modules and helpers
  • Acceptance Tests - writing Selenium and PhpBrowser accetance tests.
  • Functional Tests - writing functional tests for popular PHP frameworks.
  • Unit Tests - writing PHPUnit tests using Codeception helpers.
  • Advanced Usage - improving your testing experience and project organization.
  • Customization - extending and customizing file structure and test execution routines.
  • Data - repopulation of database, cleaning up data, using fixtures, etc.
  • Web Services - testing REST and SOAP WSDL webservices.


References explains API of verious parts of Codeception. Look for them if you forgot something.

  • Commands - explains usage of Codecption console utility.
  • Configuration - explains basics of suites and modules configuration.
  • Locator - locator class which simplifies building of complex XPath or CSS locators.
  • Xml Builder - building XMLs pragmatically.
  • Stubs - cool stub builder explained.


Modules are used to test various parts of your application. There are plenty of those and many should arrive in a future. Choose the best module for your needs and see it's reference.

Testing Web Applications with Javascript

  • Selenium - use Selenium server to run tests in browser.
  • Selenium2 - use Selenium2 server to run tests in browser.
  • ZombieJS - use Zombie.js backend to run tests without browser.

Testing Web Applications without Javascript

  • PhpBrowser - emulates browser usage by fetching and parsing html pages.

Testing Inside PHP Frameworks

Quick guide for Zend Framework integration.

Unit Testing

Basically you could use PHPUnit tests for unit testing. But Codeception scenario-driven unit tests are much powerful )

  • Unit - everything for unit testing.

API Testing

  • REST - testing REST Web services (can be tested inside framework).
  • SOAP - testing SOAP WSDL web-services (can be tested inside framework).
  • XML-RPC - testing XML-RPC web-services (can be tested inside framework).

Storage Testing

  • Db - use to test changes in database
  • Doctrine2 - test database managed by Doctrine2 ORM.
  • Doctrine - test database managed by Doctrine 1.x ORM.
  • Memcache - Memcache test via one of PECL extensions.
  • AMQP - interacts with message broker software implementing Advanced Message Queuing Protocol, like RabbitMQ.

Russian Docs

All russian posts was published on habrahabr website. It's more like announcements, then documentation, but anyway it's pretty useful to start with.

Codeception Articles at Habrahabr

Следите за новыми постами на Хабре!

Quick Start →

Write and execute a test for an existing app in less then a 5 mins! No additional tools required. 

Latest stable version

Codeception was started in November 2011, and released the first stable version 1.0 in January 2012. Based on Symfony2 Components, PHPUnit, Mink. Codeception is a mature and stable project, well-tested and documented. It's open-source and MIT licensed.

Join #codeception on FreeNode IRC.