package simulations import base.BaseSimulation import endpoints.BoardEndpoints import io.gatling.core.Predef._ import scala.concurrent.duration._ class SpikeTestSimulation extends BaseSimulation { private val baselineUsers = sys.props.getOrElse("baselineUsers", "2").toInt private val baselineDuration = sys.props.getOrElse("baselineDuration", "20").toInt private val spikeUsers = sys.props.getOrElse("spikeUsers", "15").toInt setUp( BoardEndpoints.all.map { endpoint => scenarioFromEndpoint(endpoint) .inject( constantUsersPerSec(baselineUsers).during(baselineDuration.seconds), atOnceUsers(spikeUsers), nothingFor(5.seconds), constantUsersPerSec(baselineUsers).during(baselineDuration.seconds) ) }: _* ).protocols(httpProtocol) }