consensus / behat-mailpit-extension
Behat Mailpit Extension
dev-main
2025-06-06 16:04 UTC
Requires
- php: ^8.0
- behat/behat: ^3.14
- friends-of-behat/mink-extension: ^2.7
- guzzlehttp/guzzle: ^7.0
Requires (Dev)
This package is not auto-updated.
Last update: 2025-06-07 02:47:26 UTC
README
composer require consensus/behat-mailpit-extension
Note that this package depends on Guzzle and the Mink extension.
Example scenario, showing some of the capabilities
This is just an example and doesn't show all the provided step definitions.
Scenario: User registration
Given I am not logged in
And I reset Mailpit
When I am on the homepage
And I click "Create new account"
When I enter "user@example.com" for "Email address"
And I press "Create new account"
Then there is 1 email to "user@example.com"
Given I wait for my "user@example.com" account to be approved
Then there are 2 emails to "user@example.com"
And the email to "user@example.com" with the subject matching "Account details for user@example.com" contains the text:
"""
You may now log in by clicking this link
"""
MailpitExtension
Support for asserting against emails in Mailpit.
Uses the Mailpit v1 API.
Usage
Enabling the Extension
Enabling the extension, using the default Mailpit base URL of http://localhost:8025:
behat.yml
default:
extensions:
Consensus\Behat\MailpitExtension: ~
Enabling the extension, setting a specific base URL:
default:
extensions:
Consensus\Behat\MailpitExtension: ~
base_url: http://example.com:8025
Enabling the context
Note that you need to enable the extension to be able to use the context and its added step definitions.
behat.yml
default:
suites:
default:
contexts:
- Consensus\Behat\MailpitExtension\Context\MailpitContext