我们有一个基于Vaadin的web应用程序,我正在尝试测试它的性能。应用程序具有报告。所以每当我打开一个报表时,它都会在内部发送一些Get和Post调用,其中一些是异步调用。问题是每次打开报告时,内部发送的请求数量都会有所不同。例如,第一次5个请求被随机发送/审查,第二次7个请求,第三次大约11个请求,并且下一次再次5个请求等等。所以当我记录的时候,假设它是5个请求,在重放过程中它会失败。是否可以围绕这些问题编写脚本?
发布于 2020-09-30 20:43:06
根据How to test Vaadin web application performance with JMeter的文章:
在Vaadin7中,不再存在
setDebugId()
方法;取而代之的是setId()
方法。不幸的是,这个方法不会设置ajax-request中使用的组件ids。因此,默认情况下,Vaadin7应用程序的JMeter测试对UI更改并不稳定。要解决这个问题,您可以使用我们的JMeterServlet
(参见本文末尾)而不是默认的VaadinServlet
。在使用JMeterServlet
时,ajax请求中再次使用组件in。请参见上面的示例,了解如何用JMeterServlet替换默认的VaadinServlet。有关更多信息,请参阅Vaadin ticket #13396。
此外,重放记录的AJAX请求也不是最好的主意,因为真正的浏览器并行执行AJAX请求,而JMeter依次执行HTTP请求采样器,这会产生完全不同的网络占用空间,因此可以考虑将这些模仿AJAX调用的HTTP请求采样器放在Parallel Controller下
https://stackoverflow.com/questions/64127854
复制相似问题