105 lines
3.5 KiB
Markdown
105 lines
3.5 KiB
Markdown
# Codeception
|
|
|
|
[](https://packagist.org/packages/Codeception/Codeception)
|
|
[](https://packagist.org/packages/codeception/codeception)
|
|
[](https://scrutinizer-ci.com/g/Codeception/Codeception/?branch=2.4)
|
|
|
|
**Modern PHP Testing for everyone**
|
|
|
|
Codeception is a modern full-stack testing framework for PHP.
|
|
Inspired by BDD, it provides an absolutely new way of writing acceptance, functional and even unit tests.
|
|
Powered by PHPUnit.
|
|
|
|
| General | Windows | Webdriver | HHVM |
|
|
| ------- | -------- | -------- | -------- |
|
|
| [](http://travis-ci.org/Codeception/Codeception) | [](https://ci.appveyor.com/project/DavertMik/codeception/branch/2.4) | [](https://semaphoreci.com/codeception/codeception) | [](https://app.wercker.com/project/byKey/b4eecd0596bedb65333ff7ab7836bc7f) |
|
|
|
|
#### 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](https://github.com/Codeception/Codeception/blob/2.4/CONTRIBUTING.md).
|
|
|
|
### 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.
|
|
|
|
#### Requirements
|
|
|
|
* PHP 5.6+
|
|
* `curl` and `mbstring` extensions
|
|
|
|
#### Sample test
|
|
|
|
``` php
|
|
$I->wantTo('create wiki page');
|
|
$I->amOnPage('/');
|
|
$I->click('Pages');
|
|
$I->click('New');
|
|
$I->see('New Page');
|
|
$I->submitForm('form#new_page', ['title' => 'Movie Review']);
|
|
$I->see('page created'); // notice generated
|
|
$I->see('Movie Review','h1'); // head of page of is our title
|
|
$I->seeInCurrentUrl('pages/movie-review'); // slug is generated
|
|
$I->seeInDatabase('pages', ['title' => 'Movie Review']); // data is stored in database
|
|
```
|
|
|
|
For unit testing you can stay on classic PHPUnit tests, as Codeception can run them too.
|
|
|
|
## Installation
|
|
|
|
### Composer
|
|
|
|
```
|
|
php composer.phar require "codeception/codeception"
|
|
```
|
|
|
|
### Phar
|
|
|
|
Download [codecept.phar](http://codeception.com/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
|
|
```
|
|
|
|
See also [Installation](http://codeception.com/install) | **[QuickStart](http://codeception.com/quickstart)**
|
|
|
|
## Getting Started
|
|
|
|
After you successfully installed Codeception, run this command:
|
|
|
|
```
|
|
codecept bootstrap
|
|
```
|
|
|
|
This will create a default directory structure and default test suites.
|
|
|
|
## Documentation
|
|
|
|
[Documentation](http://codeception.com/docs/01-Introduction)
|
|
|
|
Documentation is included within the project. Look for it in the ['docs' directory](https://github.com/Codeception/Codeception/tree/master/docs).
|
|
|
|
## License
|
|
MIT
|
|
|
|
(c) [Codeception Team](http://codeception.com/credits)
|
|
2011-2018
|