My team is looking to implement Gatling as an enterprise solution for our load and performance testing. We have found plenty of information on general Gatling use, but we have found information on how to do it at the enterprise level to be sorely lacking. Can anyone point me in the direction of information on how to get started with this? Specifically we are looking for common strategies for abstracting out much of the call information to keep our code dry and a design pattern to utilize. The abstraction we have some decent ideas on, but have yet to find anything as far as a design pattern. For our functional testing we have had great success using a basic builder/ method chaining pattern with Selenium. I know from years of experience that without a good design pattern automated functional testing efforts will fail due to painful levels of maintenance required as the systems changes. We don’t want to fail in our Gatling implementation. I would not call myself or my team Scala experts, but we have a decent foundation in the language. Any suggestions would be greatly appreciated.
If I’m not mistaken, the type of examples/tutorial you described, in general (not specific to Gatling), are rather lacking on the load & performance testing side, at least with respect to open source tooling. If they exist, one might have to search harder to come by them compared to functional testing version like with Selenium.
In a nutshell though, I think you can just apply the Selenium approach with Gatling, just the pattern is based off classes representing business logic, transactions, and/or request/response instead of UI-based business logic and page objects for example.
I don’t think similar load tools like JMeter and locust.io have such examples/tutorial either.