Faire une requête POST en Sélénium sans remplissage d'un formulaire?
J'ai une application qui doit gérer la soumission d'un formulaire fait avec la méthode POST. La forme actuelle, que l'initiative de la demande, est totalement séparé de l'application B. je suis en train de tester Une application à l'aide de Sélénium, et je voudrais écrire un test pour soumettre le formulaire de manutention.
Comment faire? Cela peut être fait en Sélénium? Demande A n'A pas de forme qui peuvent déclencher cette demande.
Note que la demande doit utiliser POST, sinon je pouvais WebDriver.get(url) de la méthode.
Pourquoi ne pas vous remplissez le formulaire de sélénium et de soumettre le formulaire et vous assurer que vous êtes présenté avec les données appropriées lors de l'exécution à la fin. Toutefois, si l'application B est en baisse ce test échouera toujours, en d'autres mots, je pense que vous avez besoin pour se moquer de cette interaction.
Je n'aurai pas accès à l'application B lorsque le formulaire sera.
il semble que la seule façon de le faire est de se moquer de l'intérieur de l'application, vous avez accès à l', sinon le sélénium n'est pas de faire le plus de sens dans ce contexte.
Je pense que la forme se moquant est la meilleure façon d'aller. Vous pouvez même créer ce formulaire de manière dynamique avec JavaScript
Double de stackoverflow.com/questions/5660956/... ?
Je n'aurai pas accès à l'application B lorsque le formulaire sera.
il semble que la seule façon de le faire est de se moquer de l'intérieur de l'application, vous avez accès à l', sinon le sélénium n'est pas de faire le plus de sens dans ce contexte.
Je pense que la forme se moquant est la meilleure façon d'aller. Vous pouvez même créer ce formulaire de manière dynamique avec JavaScript
Double de stackoverflow.com/questions/5660956/... ?
OriginalL'auteur Juha Syrjälä | 2012-05-08
Vous devez vous connecter pour publier un commentaire.
Avec le sélénium, vous pouvez executer du Javascript, y compris par programme soumettre un formulaire de.
Plus simple JS exécution du Sélénium Java:
et avec Javascript, vous pouvez créer une requête POST, définissez les paramètres requis et les en-têtes HTTP, et de le soumettre.
Si vous avez besoin de passer plus de sélénium le texte de la réponse alors au lieu de
alert(this.responseText)
utilisationreturn this.responseText
et d'affecter le résultat de executeScript() à une variable java.Voici un exemple complet pour python:
OriginalL'auteur ccpizza
Je ne pense pas que ce soit possible à l'aide de Sélénium. Il n'y a pas un moyen de créer une requête POST à partir de rien en utilisant un navigateur web, et le Sélénium travaille en manipulant les navigateurs web. Je vous suggérons d'utiliser un HTTP bibliothèque pour envoyer la requête POST au lieu de cela, et le lancer à côté de votre Sélénium tests. (Quel langage/framework de test que vous utilisez?)
OriginalL'auteur Zarkonnen