0
Je veux faire seulement 1 appel API toutes les 5 minutes pour "ConsumerApi.RunConsumer". Le 'Flow1' devrait fonctionner en continu.Je veux faire seulement 1 appel API toutes les 5 minutes. Comment puis-je y parvenir en utilisant gatling?
Je Hava une classe de scénario:
object ConsumerApi {
//Defines the Consumer API call
val PostConsumerApi = http("Consumer API")
.post("http://abc.abc.com/v1/execute")
.headers(Headers.applicationJson)
.check(status is 200)
val RunConsumer = scenario("Run the Consumer")
.pace(5 minutes)
.exitBlockOnFail {
exec(PostConsumerApi)
}
}
J'ai la classe de simulation:
class TestFlow extends Simulation {
val httpConfTest = http.baseURL(Environment.apiHost)
val Scenarios = List(
Flow1.Flow1
.inject(constantUsersPerSec(10) during (30 minutes))
// Has to run for 30 minutes continuously.
,
ConsumerApi.RunConsumer
.inject(constantUsersPerSec(1) during (30 minutes))
// has to make only 1 api call every 5 minutes for duration of 30 minutes
)
setUp(Scenarios)
.protocols(httpConfTest).maxDuration(40 minutes) .assertions(global.responseTime.max.lessThan(Environment.maxResponseTime.toInt))
.assertions(global.failedRequests.percent.lessThan(70)) .assertions(global.responseTime.percentile2.lessThan(Environment.maxResponseTime.toInt))
}