5
votes

I am trying to run jmeter to load test vaadin13 application following the article here How to perform an Load Test/Performance Test with Vaadin 10 (is it possible with Jmeter?) which is absolutely very helpful. However, i encounter being return for(;;);[{"meta":{"sessionExpired":true}}] for every request which i am clueless.

I check that Vaadin-Security-Key is extracted correctly. Check the request data csrfToken, node is replaced with the value correctly. I am clueless on what i am missing here. Would like to seek advice what else i am missing. Thanks in advance.

enter image description here

3
@user7294900, i have attached the screenshot. Thanks a lot.sel
@user7294900, yes. i already running latest jmeter ie 5.1.1sel
Check with one thread, if running with multiple. Also, why multiple register key request? Record two request with sniffing tools like fiddler and compare if the correlation performed is same.Points to check, 1-correlation and 2-Number of request send via fiddler...This is what I have in mind to check.sunny_teo

3 Answers

0
votes

Request payload (data) you are sending is JSON. I guess you have not set Content-Type header in your request and Vaadin cannot read payload you have sent, thus cannot read csrfToken which is needed to validate session.

You can set headers using HTTP Header Manager component. If all requests are sending json data, you can add this component on Thread Group level, and if only certain requests needs it you can add it to specific HTTP Sampler...

For json-type requests, content-type header should have value application/json; charset=UTF-8.

I hope this will resolve issue you are facing...

0
votes

There are a lot of ids that need to be correlated when writing a test plan for VAADIN.

If the answer you're pointing at did not work for you, it will be easier to try to use this autocorrelator for Vaadin.

Disclaimer: We are providers of this solution

0
votes

As you can see in your request POST data, you have CSRF Token. You need to correlate the CSRF Token and that error should resolve.