Thank you Stéphane,
That could help. The engine is based on loading compiled Simulation classes. Somehow, i must create them before, not exactly what i’m looking for. I explain :
I have a parameterized scenario : MyScenario(param1, parma2)
With a cartesian product i can do this :
listParams1 = 1::2::Nil
listParams2 = a::Nil
possibleScenarios = for {
p1 ← listParams1
p2 ← listParams2
} yield MyScenario(p1,p2)
I can run them concurrently in a global simulation :
GloablSimul {
…
setUp(possibleScenarios)
}
But if I want to run them sequentially with a report for each scenario, i have to write a simulation that wraps my scenario to do so :
Smu1forScen1 {
setUp(possibleScenarios.head)
}
Smu2forScen2 {
setUp(possibleScenarios.last)
}
I’m facing this by generating my simulation classes. But, what could be cool is something like
setUpSequentiallyWithReport(possibleScenario) = Each scenario is a simulation with its own report.
Thus, by configuration i can provide different scenarios for different environnement (local, test, integ).
Maybe it’s possible to use Gatling Engine to do this, but this is making me using an App. I would like it to continue being a test, thus i can run them from “sbt test or mvn test”.
That needs to do some POCs. But it could be a cool Gatling feature : With a cartesian product i can cover all my REST API programmatically.
I hope it’s a clean explanation of my use case.
Thanks