labbots/codeception-gherkin-dependsload

Codeception 扩展,用于在 Gherkin 测试中加载依赖场景

dev-master 2017-02-23 09:04 UTC

This package is not auto-updated.

Last update: 2024-09-28 20:14:46 UTC


README

这是 Codeception 扩展,用于支持使用 @dependsload 注解动态加载 Gherkin 测试的依赖功能。

最低要求

  • Codeception 2.2
  • PHP 5.5

安装

可以使用 Composer 安装此扩展。

$ composer require labbots/codeception-gherkin-dependsload

请确保在下面的配置中启用扩展 codeception.yml,如所示。

配置

codeception.yml 中启用 DependsLoad 注解以在您的测试中使用。

extensions:
    enabled:
        - Codeception\Extension\DependsLoad

用法

安装完成后,您将能够在功能文件中使用 @dependsload 注解来定义在测试之前要执行的场景。此注解将确保在执行实际测试之前执行依赖测试,您还可以指定来自其他功能文件的场景。该扩展会自动加载指定的文件中的场景。

@dependsload <feature_dirname>:<scenario_title>

示例

验收测试的目录结构如下

.
+-- acceptance
|   +-- prepareSystem
|        +-- prepareData.feature
|        +-- prepareSystem.feature
|   +-- loginTest
|        +-- loginTest.feature

注意: 子目录结构对于注解的工作非常重要,因为子目录名称用于加载指定目录下的所有功能。

功能文件 1:此文件位于 prepareSystem 子目录下

Feature: Greg blog login

  Scenario: Login to blog
    Given a global administrator named "Greg"
    And a blog named "Greg's anti-tax rants"
    And a customer named "Wilson"
    And a blog named "Expensive Therapy" owned by "Wilson"

功能文件 2:此文件位于 loginTest 子目录下

Feature: Multiple site support

  Scenario: Wilson posts to his own blog
    Given I am logged in as Wilson
    When I try to post to "Expensive Therapy"
    Then I should see "Your article was published."
	
  @dependsload prepareSystem:Login to blog
  Scenario: Greg posts to a client's blog
    Given I am logged in as Greg
    When I try to post to "Expensive Therapy"
    Then I should see "Your article was published."