2016-08-24 1 views
1

En utilisant behat/vison, je suis en train de tester la fonctionnalité "se souvenir de moi". Fonctionnellement, lorsque l'utilisateur visite la page principale, le code javascript/ajax vérifie si l'utilisateur est «mémorisé». Si oui, les javascripts redirigent vers une autre page. Mon LoginPage est défini avec $path = '/login.html' - après la redirection, je finirai par /main.html.Javascript redirige sur la page-> ouvrir

Dans mon contexte, j'utilise $loginPage->open() - cependant cela jette l'exception Expected to be on "https://example.com/login.html" but found "https://example.com/main.html" instead. Naturellement, cela interrompt l'exécution et entraîne l'échec du test - mais c'est exactement le comportement que je veux.

Comment puis-je dire behat/vison à pas vérifier l'URL ou ignorer la non-concordance d'URL?

Répondre

0

Si vous vérifiez la méthode open(), vous verrez que la vérification qui échoue pour vous est de vérifier les paramètres url de la méthode verify().

Si vous voulez éviter cela, vous pouvez remplacer cette méthode pour vérifier uniquement la réponse et non les paramètres de l'URL.

Pour ce faire, vous devez étendre la page et de déclarer une nouvelle méthode comme ceci:

public function verify(array $urlParameters){ 
    $this->verifyResponse(); 
}