Creates default config, tests directory and sample suites for current project. Use this command to start building a test suite.
By default it will create 3 suites acceptance, functional, and unit.
codecept bootstrap
- creates tests
dir and codeception.yml
in current dir.codecept bootstrap --empty
- creates tests
dir without suitescodecept bootstrap --namespace Frontend
- creates tests, and use Frontend
namespace for actor classes and helpers.codecept bootstrap --actor Wizard
- sets actor as Wizard, to have TestWizard
actor in tests.codecept bootstrap path/to/the/project
- provide different path to a project, where tests should be placedGenerates Actor classes (initially Guy classes) from suite configs. Starting from Codeception 2.0 actor classes are auto-generated. Use this command to generate them manually.
codecept build
codecept build path/to/project
Recursively cleans output
directory and generated code.
codecept clean
Validates and prints Codeception config. Use it do debug Yaml configs
Check config:
codecept config
: check global configcodecept config unit
: check suite configLoad config:
codecept config:validate -c path/to/another/config
: from another dircodecept config:validate -c another_config.yml
: from another config fileCheck overriding config values (like in run
command)
codecept config:validate -o "settings: shuffle: true"
: enable shufflecodecept config:validate -o "settings: lint: false"
: disable lintingcodecept config:validate -o "reporters: report: \Custom\Reporter" --report
: use custom reporterTry to execute test commands in run-time. You may try commands before writing the test.
codecept console acceptance
- starts acceptance suite environment. If you use WebDriver you can manipulate browser with Codeception commands.Shows step by step execution process for scenario driven tests without actually running them.
codecept dry-run acceptance
codecept dry-run acceptance MyCest
codecept dry-run acceptance checkout.feature
codecept dry-run tests/acceptance/MyCest.php
Generates Cept (scenario-driven test) file:
codecept generate:cept suite Login
codecept g:cept suite subdir/subdir/testnameCept.php
codecept g:cept suite LoginCept -c path/to/project
Generates Cest (scenario-driven object-oriented test) file:
codecept generate:cest suite Login
codecept g:cest suite subdir/subdir/testnameCest.php
codecept g:cest suite LoginCest -c path/to/project
codecept g:cest "App\Login"
Generates empty environment configuration file into envs dir:
codecept g:env firefox
Required to have envs
path to be specified in codeception.yml
Generates Feature file (in Gherkin):
codecept generate:feature suite Login
codecept g:feature suite subdir/subdir/login.feature
codecept g:feature suite login.feature -c path/to/project
Creates empty GroupObject - extension which handles all group events.
codecept g:group Admin
Creates empty Helper class.
codecept g:helper MyHelper
codecept g:helper "My\Helper"
Generates PageObject. Can be generated either globally, or just for one suite. If PageObject is generated globally it will act as UIMap, without any logic in it.
codecept g:page Login
codecept g:page Registration
codecept g:page acceptance Login
Generates user-friendly text scenarios from scenario-driven tests (Cest, Cept).
codecept g:scenarios acceptance
- for all acceptance testscodecept g:scenarios acceptance --format html
- in html formatcodecept g:scenarios acceptance --path doc
- generate scenarios to doc
dirGenerates Snapshot. Snapshot can be used to test dynamical data. If suite name is provided, an actor class will be included into placeholder
codecept g:snapshot UserEmails
codecept g:snapshot Products
codecept g:snapshot acceptance UserEmails
Generates StepObject class. You will be asked for steps you want to implement.
codecept g:stepobject acceptance AdminSteps
codecept g:stepobject acceptance UserSteps --silent
- skip action questionsCreate new test suite. Requires suite name and actor name
codecept g:suite api
-> api + ApiTestercodecept g:suite integration Code
-> integration + CodeTestercodecept g:suite frontend Front
-> frontend + FrontTesterGenerates skeleton for Unit Test that extends Codeception\TestCase\Test
.
codecept g:test unit User
codecept g:test unit "App\User"
Generates code snippets for matched feature files in a suite. Code snippets are expected to be implemented in Actor or PageObjects
Usage:
codecept gherkin:snippets acceptance
- snippets from all feature of acceptance testscodecept gherkin:snippets acceptance/feature/users
- snippets from feature/users
dir of acceptance testscodecept gherkin:snippets acceptance user_account.feature
- snippets from a single feature filecodecept gherkin:snippets acceptance/feature/users/user_accout.feature
- snippets from feature file in a dirPrints all steps from all Gherkin contexts for a specific suite
codecept gherkin:steps acceptance
Executes tests.
Usage:
codecept run acceptance
: run all acceptance testscodecept run tests/acceptance/MyCept.php
: run only MyCeptcodecept run acceptance MyCept
: same as abovecodecept run acceptance MyCest:myTestInIt
: run one test from a Cestcodecept run acceptance checkout.feature
: run feature-filecodecept run acceptance -g slow
: run tests from slow groupcodecept run unit,functional
: run only unit and functional suitesVerbosity modes:
codecept run -v
:codecept run --steps
: print step-by-step executioncodecept run -vv
:codecept run --debug
: print steps and debug informationcodecept run -vvv
: print internal debug informationLoad config:
codecept run -c path/to/another/config
: from another dircodecept run -c another_config.yml
: from another config fileOverride config values:
codecept run -o "settings: shuffle: true"
: enable shufflecodecept run -o "settings: lint: false"
: disable lintingcodecept run -o "reporters: report: \Custom\Reporter" --report
: use custom reporterRun with specific extension
codecept run --ext Recorder
run with Recorder extension enabledcodecept run --ext DotReporter
run with DotReporter printercodecept run --ext "My\Custom\Extension"
run with an extension loaded by class nameFull reference:
Arguments: suite suite to be tested test test to be run Options: -o, --override=OVERRIDE Override config values (multiple values allowed) --config (-c) Use custom path for config --report Show output in compact style --html Generate html with results (default: "report.html") --xml Generate JUnit XML Log (default: "report.xml") --phpunit-xml Generate PhpUnit XML Log (default: "phpunit-report.xml") --no-redirect Do not redirect to Composer-installed version in vendor/codeception --tap Generate Tap Log (default: "report.tap.log") --json Generate Json Log (default: "report.json") --colors Use colors in output --no-colors Force no colors in output (useful to override config file) --silent Only outputs suite names and final results --steps Show steps in output --debug (-d) Show debug and scenario output --bootstrap Execute bootstrap script before the test --coverage Run with code coverage (default: "coverage.serialized") --coverage-html Generate CodeCoverage HTML report in path (default: "coverage") --coverage-xml Generate CodeCoverage XML report in file (default: "coverage.xml") --coverage-text Generate CodeCoverage text report in file (default: "coverage.txt") --coverage-phpunit Generate CodeCoverage PHPUnit report in file (default: "coverage-phpunit") --coverage-cobertura Generate CodeCoverage Cobertura report in file (default: "coverage-cobertura") --no-exit Don't finish with exit code --group (-g) Groups of tests to be executed (multiple values allowed) --skip (-s) Skip selected suites (multiple values allowed) --skip-group (-x) Skip selected groups (multiple values allowed) --env Run tests in selected environments. (multiple values allowed, environments can be merged with ',') --fail-fast (-f) Stop after first failure --no-rebuild Do not rebuild actor classes on start --help (-h) Display this help message. --quiet (-q) Do not output any message. --verbose (-v|vv|vvv) Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug --version (-V) Display this application version. --ansi Force ANSI output. --no-ansi Disable ANSI output. --no-interaction (-n) Do not ask any interactive question. --seed Use the given seed for shuffling tests
Auto-updates phar archive from official site: ‘http://codeception.com/codecept.phar’ .
php codecept.phar self-update
@author Franck Cassedanne [email protected]
© 2011 Michael Bodnarchuk and contributors
Licensed under the MIT License.
https://codeception.com/docs/reference/Commands