I’m still setting up for BDD testing. All the basics are already there (see previous post).
I spoke quickly about setting up WPBrowser: WordPress specific set of extensions for Codeception. Here’s what to do (from the Readme):
- Require the package in the composer.json, then run “composer update” (details)
- Add the WPBrowser or WPWebDriver module in tests/acceptance.suite.yml (details)
The added bonus, if you’re using PhpStorm is that you will also get the related auto-complete package. And there’s plenty of functions that really speed things up.
Next for me was setting up MailCatcher
MailCatcher runs a super simple SMTP server which catches any message sent to it to display in a web interface
You need mailcatcher if you’re testing sending email out from the site. Here’s what I used:
\curl -sSL https://get.rvm.io | bash
source /etc/profile.d/rvm.sh
rvm install 2.2.2
rvm default@mailcatcher --create do gem install mailcatcher
rvm wrapper default@mailcatcher --no-prefix mailcatcher catchmail
You also need to add the following in /etc/php5/apache2/php.ini:
sendmail_path = /usr/local/rvm/wrappers/default/catchmail -f some@from.address #
(and restart apache after that)
Next you need to install the codeception mailcatcher module using composer
"captbaritone/mailcatcher-codeception-module": "1.*"
And set the configuration inacceptance.suite.yml
You might get by with only that, but I had trouble with mail being routed through special plugins we use at work, so I had to install the ‘mailcatcher’ plugin
After that it was smooth testing …
No Comments
You can leave the first : )