Hello! I am using Gatling to test SQS based app and I use Gatling JMS feature for that. I have noticed that I combine to simulations in one scenario then they “steal” messages from one another. For example
class AllRequestsCustomSimulation extends Simulation {
setUp(
FundsRequests.fundsRequestsSimulationScn.inject(
// atOnceUsers(10)
nothingFor(7 minutes),
constantUsersPerSec(24 * usersMagnifier) during (3 * durationMagnifier minutes),
nothingFor(20 minutes),
)
Taps.newCardsTaps.inject(
constantUsersPerSec(10 * usersMagnifier) during (30 * durationMagnifier minutes)
)
)
.protocols(SQSTestBase.jmsConfig)
.maxDuration(maxDuration minutes)
}
Both simulations use "requestReply" mode of JMS and connected to the same queues though they send/receive different messages. In this scenario some users will never finish because they don't get reply messages (which already have been consumed by other simulation and ignored there)
I can workaround it by creating one combined simulation but it is not really convenient, because it makes sense to describe each message type in separate class and then combine them together
What do you think?