2012-07-31 40 views
2

我的问题与Symfony2中某些应用程序的测试有关。我使用Behat和Mink编写测试,并且在注册系统测试方面存在一些问题。使用Behat和Mink测试Symfony2的注册系统

我想在用户提交注册表单后检查电子邮件,然后按照此电子邮件中的激活链接。

我发现有关电子邮件测试一个简短的教程:
http://docs.behat.org/cookbook/using_the_profiler_with_minkbundle.html

在本教程的解决方案适用于当“intercept_redirects”在symfony的配置文件设置为“真”,但我已经有一些测试我需要将这个变量保留为“false”,所以我的问题是......是否可以暂时更改此值,仅用于一次测试,还是必须将此值更改为“true”,然后更新所有测试?

您如何测试您的注册系统,以及如何为他们编写测试?

回答

1

尝试使用MinkRedirectContextCommonContexts。它可以让你停止自动重定向的情况,并检查URL:

Given I do not follow redirects 
When I ... 
Then I should be redirected to "/thank-you" 

你也可以做手工调用followRedirects()自己:

$this->getSession()->getDriver()->getClient()->followRedirects(false); 
+0

谢谢你,这是真的很有帮助。 – acorncom 2013-09-30 20:26:37