我正在为GWT应用程序编写一个selenium测试。它使用鼠标悬停/ 单击按钮的mousedown / mouseup方法。它单击Login 我的应用程序的按钮,它调用包含userid和的div 密码输入字段,并且工作得很好。然后它进入用户ID和 密码,然后单击登录表单的“提交”按钮。
如果我慢慢运行,我可以看到按钮点击,但请求永远不会 被发送到服务器(我正在看电线)。
事实上,如果,当selenium IDE仍然打开时,我手动点击 按钮,请求不发送。如果我然后关闭selenium IDE 然后点击按钮,请求就可以了。
有人见过这个吗?看起来很奇怪。
更新
Firebug显示脚本错误。显然,selenium脚本与GWT脚本存在一些冲突。这是错误的开始,但整个过程非常冗长:
[Exception ...“'com.google.gwt.core.client.JavaScriptException:(TypeError):result is null fileName:chrome://selenium-ide/content/recorder.js lineNumber:74 stack :( [object XMLHttpRequest],“POST”,“http://localhost:8080/login”,true)@chrome://selenium-ide/content/recorder.js:74 XPC_SJOW_CallWrapper((function(url,windowName,windowFeatures,replaceFlag){if (self.openCalled){return self.originalOpen.call(window,url,windowName,windowFeatures,replaceFlag);} else {self.o
答案 0 :(得分:1)
好的,我找到了答案。这有点令人尴尬,但它提供了答案,也很有趣。我会分享答案,以便你可以避免这个问题,也许会为我付出代价。 :)
答案是你必须编译为OBF而不是PRETTY。下面列出了所有相关链接。他们充分解释了这个问题,以及如何避免这个问题。
这有什么好玩的?好吧,当我通过搜索时,我终于点击了下面的第一个链接。几乎立刻,我意识到,或者至少有一种潜行的怀疑,我之前已经解决了这个问题。果然,最初的问题是在十月份发布的,我就是这张海报。所以,我之前得到了答案,完全忘了。呃,好吧。希望答案可以帮到某人,而我的漫画不幸会让你的一天变得光彩照人。
http://clearspace.openqa.org/message/50170
http://code.google.com/p/google-web-toolkit/issues/detail?id=2861
答案 1 :(得分:0)
也许你可以试试clickAt或mouseDownAt,它们似乎有点不同。