Salut je cherche une idée pour passer mon captcha venant de sfFormExtraPlugin quand je traite mon test fonctionnel dans symfony?sfFormExtraPlugin reCaptcha pour valider la forme pendant le test fonctionnel?
Une idée?
Merci!
Salut je cherche une idée pour passer mon captcha venant de sfFormExtraPlugin quand je traite mon test fonctionnel dans symfony?sfFormExtraPlugin reCaptcha pour valider la forme pendant le test fonctionnel?
Une idée?
Merci!
La façon dont je l'ai fait est simplement de ne pas utiliser le captcha du tout si le code est en cours d'exécution dans l'environnement de test. De cette façon, vous n'avez pas à vous en préoccuper pendant les tests. Bien que je l'exécute toujours dans l'environnement de développement, parce qu'au moins je peux toujours m'assurer que cela fonctionne de temps en temps.
Cependant, ce n'est pas la meilleure solution. J'aurais espéré que reCaptcha vous permettrait de définir une clé API "test" supplémentaire, où tout fonctionnerait normalement sauf que les clés seraient toujours validées, mais ce n'est pas la dernière fois que j'ai vérifié. Je suppose que la meilleure solution serait de coder le validateur pour le widget reCaptcha de sorte que si l'environnement est "test", ou basé sur un paramètre de configuration d'application, vous passez la validation sans déranger le serveur reCaptcha.
J'aimerais entendre si quelqu'un a de meilleures idées.
ried quelques trucs, comme le validateur étendu, ou le widget pour tester le contexte, mais finalement je viens de le faire que: En app.yml:
test:
.general:
recaptcha_enabled: false
Dans ma forme:
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));
C'est tout. app.yml est sensible à l'environnement, il vous suffit donc de spécifier la valeur de votre environnement.
J'espère que ça va à quelqu'un!
Merci pour votre réponse. J'ai finalement fait différemment – Faboo03