javascript - Vaadin - 来自服务器的 POST 请求过多

标签 javascript selenium-webdriver http-post client vaadin


我正在尝试使用 Selenium WebDriver 测试 vaadin 应用程序。执行测试时,WebDriverWait 的结果非常随机。有时会出现 StaleElementExceptions 或元素不可见,无论它们是否可见。
所以我添加了一个 JavaScript 来获取已连接客户端的事件状态。但还是出现同样的错误。
然后,我使用 FireBug 观察该应用程序,发现对于几次按钮单击,服务器最多会发送三个 POST 请求。我对应用程序的实现一无所知,所以我的问题是:“vaadin 应用程序为单个用户输入发送‘那么多’POSTS 是否正常?”

最佳答案

Vaadin 使用 POST 请求从客户端到服务器进行交互通信。如果页面上注册了其他监听器,则单击按钮可能会产生多个 POST。这些监听器可以用于:模糊、焦点、轮询、文本更改或其他此类事件。

使用基于 Selenium 的工具测试 Vaadin 应用程序的最简单方法是使用 Vaadin TestBench 。如果您使用普通 Selenium,那么您需要引入等待或创建一个可以捕获 Vaadin POSTS 的 fork,以便它知道服务器何时收到并处理按钮单击的响应。

关于javascript - Vaadin - 来自服务器的 POST 请求过多,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47475141/

相关文章:

powershell - 如何使用 Powershell httpListener 捕获 post/get 变量?

javascript - 拉伸(stretch)选项卡。面板选项卡垂直适合 "center border"

javascript - html 5 计数器的 drop 功能

javascript - 用JS(chrome扩展)删除不可选择的="on"

javascript - 过滤后 Angular 表达式中出现意外标记

java - Selenium/WebDriver - 处理仅有时存在的弹出窗口?

selenium - 使用 TestNG 框架使用 Selenium WebDriver 跳过测试用例

java - 如何在 webdriver(selenium2.0) 的情况下单击链接

javascript - POST 请求返回 text/html 而不是 JSON,如何在 JS 中获取 JSON?

authentication - 身份验证过滤器重定向回Laravel中的原始POST请求