kibao/behat-mailcatcher-extension

Behat 的 MailCatcher 扩展

安装次数 59,862

依赖者: 0

建议者: 0

安全性: 0

星标: 7

关注者: 3

分支: 0

公开问题: 3

类型:behat-extension

dev-master / 0.2.x-dev 2014-05-09 12:45 UTC

This package is not auto-updated.

Last update: 2024-09-14 15:32:21 UTC


README

Build Status Scrutinizer Code Quality

MailCatcher 是一个超级简单的 SMTP 服务器,可以捕获发送给它的任何消息。

MailCatcherExtension 提供

  • Kibao\Behat\MailCatcherExtension\Context\MailCatcherAwareContext,它为您的上下文提供 MailCatcher Client 实例。
  • MailCatcherContext 上下文,它为您的上下文提供基本步骤定义。

安装

此扩展需要

  • Behat 3.0+

通过 Composer

  1. 将 MailCatcherExtension 添加到您的 composer.json

    {
        "require-dev": {
            ...
            "kibao/mailcatcher": "*@dev",
            "kibao/behat-mailcatcher-extension": "0.2.*@dev"
        }
    }
  2. 安装或更新供应商

    $ composer update kibao/mailcatcher kibao/behat-mailcatcher-extension
  3. 在您的 behat.yml 中激活扩展

    default:
       # ...
       extensions:
            Kibao\Behat\MailCatcherExtension\Extension: ~

配置

默认配置

default:
    # ...
    extensions:
        Kibao\Behat\MailCatcherExtension\Extension:
            client:
                url:    https://    # MailCatcher http url
                port:   1080                # MailCatcher http port
            purge_before_scenario:      true
            mailcatcher_client:         kibao.mailcatcher.client.default    # client service
            mailcatcher_connection:     kibao.mailcatcher.connection.guzzle # connection service

使用方法

首先,您需要安装 MailCatcher

有几个选项

  1. 在您的功能套件中扩展 RawMailCatcherContext。它提供了预配置的 MailCatcher 和基本方法。 RawMailCatcherContext 不提供任何步骤定义,因此您可以在许多上下文中扩展它。

  2. 使用您的上下文扩展 MailCatcherContext。它提供了与 RawMailCatcherContext 相同的功能,并预定义了开箱即用的步骤。

  3. MailCatcherContext 作为上下文添加到您的套件中。

    default:
      suites:
        my_suite:
          contexts:
            - FeatureContext
            - Kibao\Behat\MailCatcherExtension\Context\MailCatcherContext
  4. 使用您的上下文实现 MailCatcherAwareContext。目标上下文必须实现 setMailCatcher(ClientInterface $mailcatcher)。该方法将在每个上下文创建后立即在每个场景之前自动调用。$mailcatcher 将基于您的设置进行预配置。