您好我正在寻找一个想法,当我在symfony处理我的功能测试时,跳过来自sfFormExtraPlugin的验证码?
有什么想法吗?
谢谢!
答案 0 :(得分:0)
我完成它的方法就是在代码在测试环境中运行时根本不使用验证码。这样您在测试期间就不必担心它。虽然我仍然在开发环境中运行它,但至少我仍然可以确保它一次又一次地工作。
但这不是最好的解决方案。我希望reCaptcha允许你定义一个额外的“测试”API密钥,其中一切都会正常工作,除了密钥总是验证,但它们不是我最后一次检查。
我认为下一个最好的事情是为reCaptcha小部件编写验证器代码,这样如果环境是“测试”,或者基于某个应用程序配置设置,您只需通过验证而不必费心去除reCaptcha服务器。
我很想知道是否有人有更好的想法。
答案 1 :(得分:0)
很少有东西,例如扩展验证器,或者小部件来测试上下文,但最后我刚刚完成了: 在app.yml:
test:
.general:
recaptcha_enabled: false
以我的形式:
if(sfConfig::get('app_recaptcha_enabled', true))
$this->validatorSchema['captcha'] = new sfValidatorReCaptcha(array('private_key' => sfConfig::get('app_recaptcha_private_key'), "required" => true));
else
$this->validatorSchema['captcha'] = new sfValidatorString(array('required' => false));
这就是全部。 app.yml是环境敏感的,所以你只需要为你的环境指定值。
希望这是某个人!