2009-02-05 7 views
3

J'écris un test sélénium pour une application GWT. Il utilise l'approche mouseover/ mousedown/mouseup pour cliquer sur les boutons-poussoirs. Il clique sur le bouton de connexion de mon application, qui appelle le div contenant userid et champs de saisie de mot de passe, et cela fonctionne très bien. Il saisit ensuite un ID utilisateur et un mot de passe , puis clique sur le bouton Soumettre pour le formulaire de connexion.Test sélénium sur une application GWT - demande non envoyée au serveur

Si je l'exécute lentement, je peux voir le bouton cliquer, mais la demande jamais est envoyée au serveur (je regarde le fil).

En fait, si l'IDE sélénium est toujours ouvert, je clique manuellement sur le bouton , la requête n'est pas envoyée. Si je ferme ensuite le sélénium IDE et clique sur le bouton, la requête passe bien.

Quelqu'un a vu celui-ci? Cela semble vraiment étrange.

Mise à jour:

Firebug affiche une erreur de script. Apparemment, le script sélénium a un conflit avec le script GWT. Voici le début de l'erreur, mais le tout est assez long:

[Exception ... "'com.google.gwt.core.client.JavaScriptException: (TypeError): le résultat est nul nomfichier: chrome://selenium-ide/content/recorder.js lineNumber: 74 pile: ([objet XMLHttpRequest], "POST", "http://localhost:8080/login", true) @chrome: //selenium-ide/content/recorder.js: 74 XPC_SJOW_CallWrapper ((fonction (url, windowName, windowFeatures, replaceFlag) {if (self.openCalled) {return self.originalOpen.call (fenêtre, url, windowName, windowFeatures, replaceFlag);} else {self.o

+0

quelle version de GWT vous utilisez, il y avait des problèmes connus avec Sélénium dans les anciennes versions – rustyshelf

+0

Le dernier - 1.5.3. –

Répondre

1

D'accord, j'ai trouvé la réponse. C'est un peu embarrassant, mais ça donne la réponse et c'est marrant aussi. Je vais partager la réponse afin que vous puissiez éviter le problème, et peut-être rire à mes dépens. :)

La réponse est que vous devez compiler à OBF au lieu de PRETTY. Tous les liens associés sont listés ci-dessous. Ils expliquent pleinement le problème et comment l'éviter.

Qu'est-ce que c'est drôle à propos de ça? Eh bien, alors que je faisais des recherches, j'ai enfin trouvé le premier lien ci-dessous. Presque immédiatement, j'ai réalisé, ou au moins eu une suspicion, que j'avais déjà résolu ce problème. Effectivement, la question originale a été publiée en octobre et j'étais l'auteur de l'affiche. Donc, j'ai eu une réponse avant, et complètement oublié. Et bien. J'espère que la réponse aidera quelqu'un, et mon malheur comique illumine votre journée.

http://clearspace.openqa.org/message/50170

http://groups.google.com/group/Google-Web-Toolkit/browse_thread/thread/5d6a9c448a82b916/af62e5877237b107?lnk=raot

http://code.google.com/p/google-web-toolkit/issues/detail?id=2861

0

Peut-être que vous pourriez essayer clickAt ou mouseDownAt, ils semblent fonctionner un peu différemment:

+0

Ce n'est pas un problème de cliquer sur le bouton. Il est cliqué, et je sais que cette partie fonctionne. C'est un échec de l'appel ajax sous-jacent. –

+0

Oui, je vois ça maintenant avec la mise à jour. –

+0

Cool. C'est difficile. Si je le découvre, je posterai une mise à jour. –