web-dev-qa-db-ja.com

イナゴ:特定の時間イナゴを走らせる方法

公式 locustioドキュメント 無期限に実行される単純なイナゴタスクの書き方について説明しています。

指定された間隔でテストが自動的に停止するように、特定の時間続くロードを実行する方法を見つけることができませんでした。

私はウェブインターフェースからそれを必要としません、コマンドライン/コードオプションはちょうど素晴らしいでしょう。

18
binithb

私は最近イナゴを自分で使い始めましたが、残念ながらイナゴ0.7.1は時間の長さに基づいてテストを終了する方法を提供していません。

ただし、発行されたリクエストの数に基づいてテストを終了する方法を提供します。 CLIインターフェースを使用してlocustを実行する場合は、指定された数の要求が処理された後に実行を停止するように指定できます。から locust --help出力:

-n NUM_REQUESTS, --num-request=NUM_REQUESTS
       Number of requests to perform. Only used together with --no-web

したがって、次のようなものでセッションを開始できます。

# locust --clients=20 --hatch-rate=2 --num-request=500

500のリクエストが処理されると、テストを終了する必要があります。

21
aztlan2k

答えるにはおそらく遅すぎますが、将来誰かに役立つかもしれません。 Locustは、-tまたは--run-timeオプションをサポートして、-no-webオプションを指定してLocustを実行するときの期間を指定できるようになりました。 locust --helpから:

-t RUN_TIME, --run-time=RUN_TIME
                        Stop after the specified amount of time, e.g. (300s,
                        20m, 3h, 1h30m, etc.). Only used together with --no-
                        web
9
Abhishek Dalvi

パーティーにはかなり遅れましたが、テストをやめたのでこれに出くわしました。助けになるかもしれません。

stop_timeout = 20 

あなたのイナゴのクラスで。

ああ、それはsecondsの値を受け入れます。

7
Izy-

イナゴがランタイムパラメータをサポートするようになりました--run-time=1h20m。マスターブランチからイナゴをインストールしました。 (GitHub issue を参照)。この機能は0.9vで正式にリリースされたと思います。

6
Ema

StopLocust 例外をスローすることで、個々のグリーンレット( "locust")を停止することができるため、タスクに時間をチェックするガードを追加できます。

これは文書化されていない動作であり、将来変更される可能性がありますが、0.7.2で機能します。

http://lookonmyworks.co.uk/2015/03/13/stopping-a-locust/

5
grahamrhay

ここでは、イナゴ0.8.1による私のソリューションでは、CLIモードで実行する時間を定義できません。

timeout $TIME locust -f $YOUR_FILE --Host=$YOUR_Host_TARGET --no-web

時間は分または秒で指定できます

timeout 10s locust -f $YOUR_FILE --Host=$YOUR_Host_TARGET --no-web
timeout 10m locust -f $YOUR_FILE --Host=$YOUR_Host_TARGET --no-web
1
abmap