2016-02-08 33 views
0

我使用Gatling進行了kafka模擬測試,目前我們可以在給定的持續時間內使用constantUsersPerSec運行。但我們想在constantUsersPerSec上運行這個模擬(比如說大約1000 /秒),這個測試應該一直運行,直到有人殺死測試/進程。使用Feed永遠加特林測試

目前我們已經調整爲使用天數來代替持續時間。但是有沒有一個選項可以永遠運行一個使用饋線的測試。這裏是代碼片段:

val scn = scenario("Kafka Test Demo") 
    .feed(ssv(conf.getString("filename"), true).circular) 
    .exec(kafka("request") 
     // message to send 
     .send[String]("${t}")) 
    setUp(
    scn.inject(constantUsersPerSec(conf.getInt("constantUsersPerSec")) during (conf.getInt("run_duration_in_mins") hours))) 
    .protocols(kafkaConf) 

任何建議/方向請嗎?

千恩萬謝, MPHA

回答

0

是代碼波紋管去上班?

val scn = scenario("Kafka Test Demo") 
    .feed(ssv(conf.getString("filename"), true)).circular.forever() { 
    exec(kafka("request") 
    // message to send 
    .send[String]("${t}")) 
} 
+0

我試着用上面的代碼片段運行,但它運行的時候沒有發佈任何消息到主題。做我需要做下面的代碼的任何改變,因爲我在注射期間設置,它不會被永遠告訴並通過時間任何意義:設置( scn.inject(constantUsersPerSec(conf.getInt(「constantUsersPerSec」 ))期間(conf.getInt(「run_duration_in_mins」)小時))) .protocols(kafkaConf) – user1459742

+0

此外上面的代碼工作,但它不會持續發送請求的相同的負載,例如說我們想送1000 REQ /秒,那麼一會兒它將是1000,然後它可以隨機跳到我們不確定的任何值。 – user1459742