2017-12-17 11 views
0

私はGatling.ioを使ってウェブサイトをテストしています。複数の仮想ユーザーがいるシナリオがあります。Gatling.ioは仮想ユーザー間でデータを共有します

val users = scenario("Users").exec(Session.browse) 
val admins = scenario("Admins").exec(Session.create) 

は私が管理者ユーザーは、私がテストしてるウェブサイト上で「セッション」を作成し、ウェブサイトから返された結果から、セッション名を保存し、以前で作成されたセッションを訪問する他のユーザーを持つようにしたいですユーザーadminからセッション名を取得します。

ユーザー間でセッション名を共有するにはどうすればよいですか?

答えて

1

私はこれをセッションのために作成し、それをある種のファイルに保存し、新しいシミュレーションでその値を読み取り、ユーザーにそれを拾わせることをお勧めします。 'Fanning out'は、ガトリングが単一のシミュレーションでサポートするシナリオではありません。

あなたが本当に欲しいのであれば、特に管理者がすぐに実行する必要があるだけで、シミュレーションファイル内でシナリオを定義する準備ができていれば、それを見分けることができます。 「管理者」のシナリオがmySession 『VAR

からセッション変数を設定したシナリオに』ユーザの一環として「mySession」VAR

にあなたのセッションの値を保存するの一環として

class simulation extends Simulation { 
    private var mySession = "NOT_SET" 

val users = scenario("Users").exec(Session.browse) 
val admins = scenario("Admins").exec(Session.create) 
} 

それが迅速かつダーティデータの播種のために[OK]を動作しますが、あなたが本当にガトリングが設計される方法の穀物に対して切断している

setUp(
admins.inject(
    atOnceUsers(1) 
), 
users.inject(
    nothingFor(1 minutes), //enough time for admins to complete 
    atOnceUsers(10) //or however many you need 
) 

、その後のようなあなたのシミュレーションに何かを実行

... 。

+0

あなたの答えをありがとう。私は最終的に私の期待を下げ、より簡単なシミュレーションを実行しました。 – Shengis

関連する問題