Vaadin lets you build secure, UX-first PWAs entirely in Java.
Free ebook & tutorial.
Gatling Load Testing
This question relates to the Gatling-Vaadin load test project example (https://github.com/mstahv/gatling-vaadin-example/blob/master/src/test/scala/loadtest/BasicVaadinHelloSimulation.scala).
In the header comments, it mentions that the execution is simply recorded against the web app. How was this done and what was used to record the scenario?
Also, the Ajax request calls use some fairly specific urls (.post(uri1 + """/?v-1408798653302""") and .post(uri1 + """/UIDL/?v-wsver=7.3.2&v-uiId=0""") ) and POST data (BasicVaadinHelloSimulation4_request_3.txt). Was all this information obtained from just recording the interaction with the webapp, and is it safe to hardcode it all (?v-1408798653302 for example) in the specifications?
Gatlin contains a recorder (practically an http proxy that cathes all the communication). I used that to record the base case and then modified it bit manually (added e.g. another "exec" to let cookies be prepared properly for state requests). I haven't tried this with latest Gatlin versions, but it might have been developed a bit further so that manual modifications aren't needed anymore.
IIRC, you can leave the URI parameters as they are recorder. The first one is some id of the UI, version is just a health check (no need to update even if you update vaadin version), v-uiId=0 is practically always that, increases if your have multiple browser windows with the same session.