diff --git a/docs/reference/Commands.md b/docs/reference/Commands.md index f8bf508f..f5575bdc 100644 --- a/docs/reference/Commands.md +++ b/docs/reference/Commands.md @@ -5,123 +5,6 @@ title: Commands - Codeception - Documentation # Console Commands -## GenerateTest - -Generates skeleton for Unit Test that extends `Codeception\TestCase\Test`. - -* `codecept g:test unit User` -* `codecept g:test unit "App\User"` - - - -## Init - - - -## Build - -Generates 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` - - - - -## SelfUpdate - -Auto-updates phar archive from official site: 'https://codeception.com/codecept.phar' . - -* `php codecept.phar self-update` - -@author Franck Cassedanne - - - -## GherkinSnippets - -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 tests -* `codecept gherkin:snippets acceptance/feature/users` - snippets from `feature/users` dir of acceptance tests -* `codecept gherkin:snippets acceptance user_account.feature` - snippets from a single feature file -* `codecept gherkin:snippets acceptance/feature/users/user_accout.feature` - snippets from feature file in a dir - - - -## GenerateScenarios - -Generates user-friendly text scenarios from scenario-driven tests (Cest). - -* `codecept g:scenarios acceptance` - for all acceptance tests -* `codecept g:scenarios acceptance --format html` - in html format -* `codecept g:scenarios acceptance --path doc` - generate scenarios to `doc` dir - - - -## GenerateCest - -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"` - - - - -## GenerateSnapshot - -Generates 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` - - - -## GeneratePageObject - -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` - - - -## GherkinSteps - -Prints all steps from all Gherkin contexts for a specific suite - -{% highlight yaml %} -codecept gherkin:steps acceptance - -{% endhighlight %} - - - - -## GenerateSuite - -Create new test suite. Requires suite name and actor name - -* `` -* `codecept g:suite api` -> api + ApiTester -* `codecept g:suite integration Code` -> integration + CodeTester -* `codecept g:suite frontend Front` -> frontend + FrontTester - - - - ## Run Executes tests. @@ -210,18 +93,25 @@ Options: -## Bootstrap +## Build + +Generates 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` -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 suites -* `codecept 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 placed + +## GherkinSteps + +Prints all steps from all Gherkin contexts for a specific suite + +{% highlight yaml %} +codecept gherkin:steps acceptance + +{% endhighlight %} @@ -243,35 +133,39 @@ Creates empty GroupObject - extension which handles all group events. -## ConfigValidate +## DryRun -Validates and prints Codeception config. -Use it do debug Yaml configs +Shows step by step execution process for scenario driven tests without actually running them. -Check config: +* `codecept dry-run acceptance` +* `codecept dry-run acceptance MyCest` +* `codecept dry-run acceptance checkout.feature` +* `codecept dry-run tests/acceptance/MyCest.php` -* `codecept config`: check global config -* `codecept config unit`: check suite config -Load config: -* `codecept config:validate -c path/to/another/config`: from another dir -* `codecept config:validate -c another_config.yml`: from another config file -Check overriding config values (like in `run` command) +## CompletionFallback -* `codecept config:validate -o "settings: shuffle: true"`: enable shuffle -* `codecept config:validate -o "settings: lint: false"`: disable linting -* `codecept config:validate -o "reporters: report: \Custom\Reporter" --report`: use custom reporter +## GenerateTest +Generates skeleton for Unit Test that extends `Codeception\TestCase\Test`. -## Console +* `codecept g:test unit User` +* `codecept g:test unit "App\User"` -Try 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. + +## GenerateCest + +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"` @@ -286,29 +180,70 @@ Creates empty Helper class. -## GenerateEnvironment +## Console -Generates empty environment configuration file into envs dir: +Try to execute test commands in run-time. You may try commands before writing the test. - * `codecept g:env firefox` +* `codecept console acceptance` - starts acceptance suite environment. If you use WebDriver you can manipulate browser with Codeception commands. -Required to have `envs` path to be specified in `codeception.yml` +## GeneratePageObject -## DryRun +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. -Shows step by step execution process for scenario driven tests without actually running them. +* `codecept g:page Login` +* `codecept g:page Registration` +* `codecept g:page acceptance Login` -* `codecept dry-run acceptance` -* `codecept dry-run acceptance MyCest` -* `codecept dry-run acceptance checkout.feature` -* `codecept dry-run tests/acceptance/MyCest.php` +## GenerateStepObject +Generates StepObject class. You will be asked for steps you want to implement. -## CompletionFallback +* `codecept g:stepobject acceptance AdminSteps` +* `codecept g:stepobject acceptance UserSteps --silent` - skip action questions + + + + +## GherkinSnippets + +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 tests +* `codecept gherkin:snippets acceptance/feature/users` - snippets from `feature/users` dir of acceptance tests +* `codecept gherkin:snippets acceptance user_account.feature` - snippets from a single feature file +* `codecept gherkin:snippets acceptance/feature/users/user_accout.feature` - snippets from feature file in a dir + + + +## SelfUpdate + +Auto-updates phar archive from official site: 'https://codeception.com/codecept.phar' . + +* `php codecept.phar self-update` + +@author Franck Cassedanne + + + +## GenerateEnvironment + +Generates empty environment configuration file into envs dir: + + * `codecept g:env firefox` + +Required to have `envs` path to be specified in `codeception.yml` + + + +## Init @@ -323,13 +258,78 @@ Generates Feature file (in Gherkin): -## GenerateStepObject -Generates StepObject class. You will be asked for steps you want to implement. +## Bootstrap + +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 suites +* `codecept 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 placed + + + + +## GenerateSnapshot + +Generates 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` + + + +## ConfigValidate + +Validates and prints Codeception config. +Use it do debug Yaml configs + +Check config: + +* `codecept config`: check global config +* `codecept config unit`: check suite config + +Load config: + +* `codecept config:validate -c path/to/another/config`: from another dir +* `codecept config:validate -c another_config.yml`: from another config file + +Check overriding config values (like in `run` command) + +* `codecept config:validate -o "settings: shuffle: true"`: enable shuffle +* `codecept config:validate -o "settings: lint: false"`: disable linting +* `codecept config:validate -o "reporters: report: \Custom\Reporter" --report`: use custom reporter + + -* `codecept g:stepobject acceptance AdminSteps` -* `codecept g:stepobject acceptance UserSteps --silent` - skip action questions +## GenerateSuite + +Create new test suite. Requires suite name and actor name + +* `` +* `codecept g:suite api` -> api + ApiTester +* `codecept g:suite integration Code` -> integration + CodeTester +* `codecept g:suite frontend Front` -> frontend + FrontTester + + + + +## GenerateScenarios + +Generates user-friendly text scenarios from scenario-driven tests (Cest). + +* `codecept g:scenarios acceptance` - for all acceptance tests +* `codecept g:scenarios acceptance --format html` - in html format +* `codecept g:scenarios acceptance --path doc` - generate scenarios to `doc` dir