Full-stack testing PHP framework
PHP HTML Other
Latest commit dc22ed6 Jul 29, 2016 @samdark samdark committed with DavertMik Mailer mock is now configured with options that make sense for it only (
#3385)

* Mailer mock is now configured with options that make sense for it only

* Forgot to remove original line of code
Failed to load latest commit information.
docs Maintenance (CodeStyle fix, Release Script updates, ...) (#3369) Jul 26, 2016
ext Maintenance (CodeStyle fix, Release Script updates, ...) (#3369) Jul 26, 2016
package fixed phar build Jun 6, 2016
src/Codeception Mailer mock is now configured with options that make sense for it only ( Jul 29, 2016
tests Merge pull request #3373 from neoascetic/complex-params-replacing Jul 28, 2016
.gitattributes added .gitattributes Jan 24, 2015
.gitignore merged with 2.1 Jun 8, 2016
.travis.yml [TravisCI] Don't install mongodb/mongodb on HHVM Jul 27, 2016
CHANGELOG.md Maintenance (CodeStyle fix, Release Script updates, ...) (#3369) Jul 26, 2016
CONTRIBUTING.md PSR-2 compliance (#3105) May 16, 2016
Dockerfile Feature/docker support (#3067) May 25, 2016
ISSUE_TEMPLATE.md Update ISSUE_TEMPLATE.md Jul 28, 2016
LICENSE Fixes #2207: added license file Jul 23, 2015
RoboFile.php Maintenance (CodeStyle fix, Release Script updates, ...) (#3369) Jul 26, 2016
appveyor.yml merged with origin/2.1 May 11, 2016
autoload.php refactored to have multiple independent test formats Jan 25, 2016
codecept added dry-run command (#3023) Apr 25, 2016
codecept.bat fix to #8 Feb 28, 2012
codeception.yml Changed lint to true, because ParserTest::testCeptValidation fails if… Mar 22, 2016
composer.json fixed bad merge Jun 29, 2016
nitpick.json added nitpick ignores Mar 22, 2016
readme.md Moved FB tests to separate suite (#3283) Jun 28, 2016
ruleset.xml PSR-2 compliance (#3105) May 16, 2016
shim.php shim to be autoloaded only for PHPUnit 5.4+ Jun 3, 2016

readme.md

Codeception

Latest Stable Total Downloads Daily Downloads Gitter PHP 7 ready Scrutinizer Code Quality

Modern PHP Testing for everyone

Codeception is a modern full-stack testing framework for PHP. Inspired by BDD, it provides you an absolutely new way of writing acceptance, functional and even unit tests. Powered by PHPUnit.

General Windows Webdriver Facebook
Build Status Build status Build Status Facebook Status for Codeception/Codeception

Contributions

At Codeception we are glad to receive contributions from the community. If you want to send additions or fixes to the code or the documentation please check the Contributing guide.

At a Glance

Describe what you test and how you test it. Use PHP to write descriptions faster.

Run tests and see what actions were taken and what results were seen.

Sample acceptance test

<?php

$I = new FunctionalTester($scenario);
$I->wantTo('create wiki page');
$I->amOnPage('/');
$I->click('Pages');
$I->click('New');
$I->see('New Page');
$I->submitForm('form#new_page', array('title' => 'Tree of Life Movie Review','body' => "Next time don't let Hollywood create art-house!"));
$I->see('page created'); // notice generated
$I->see('Tree of Life Movie Review','h1'); // head of page of is our title
$I->seeInCurrentUrl('pages/tree-of-life-movie-review'); // slug is generated
$I->seeInDatabase('pages', array('title' => 'Tree of Life Movie Review')); // data is stored in database
?>

For unit testing you can stay on classic PHPUnit tests, as Codeception can run them too.

Documentation

Documentation on Github

Documentation is currently included within the project. Look for it in the 'docs' directory.

Installation

Phar

Download codecept.phar

Copy it into your project.

You can also make Codeception an executable and it put it into your $PATH, for instance:

wget http://codeception.com/codecept.phar

chmod +x codecept.phar

sudo mv codecept.phar /usr/local/bin/codecept

You can then run Codecept in the command line using: codecept bootstrap, codecept run, etc

Run CLI utility:

php codecept.phar

Composer

php composer.phar require "codeception/codeception"

Read Also Installation | QuickStart

Getting Started

If you successfully installed Codeception, run this command:

codecept bootstrap

this will create a default directory structure and default test suites

See Documentation for more information.

License

MIT

(c) Michael Bodnarchuk "Davert" 2011-2016