イナゴの前の書き込みには、チュートリアルを開始しました
この参照:イナゴチュートリアル:https://www.axihe.com/tools/locust/home.html。
イナゴ公式Githubのは、次のとおりです。https://github.com/locustio/locust
このチュートリアルでは、導入や関連記事を検索は、ネットワークがああチュートリアル整理使用イナゴ公式のGithubの私の翻訳したものです。
イナゴこのツールは、あなたの実際の状況に応じてあなたに適していないかを決定する必要があります。
あなたは、JMeterのテスターだけでなく、プログラミングについての詳細を理解している場合。
それはあなたのテストJMeterの不器用な取り扱いを置き換えることができ、それはあなたが何をする必要があるかでも欠陥をもたらす非常によくに対処する習慣、ですが、あなたの能力と論理的思考の特定のコードがあります要件;
あなたが無知なプログラミングが状態を強制されて見れば、私はあなたが(仕事に、すべての後に)メインJMeterをし、次を理解示唆Locust
それがどのように動作するか確認し、その思考プロセスの下を理解するために、。
高い何イナゴのですか?
イナゴは比較的使いやすいユーザー分散負荷テストツールです。
これは、サイト(または他のシステム)負荷テストのために設計されており、システムが処理できる多くの同時ユーザーは、JMeterのはこのシナリオを扱うことができる方法を決定するが、この領域での個人的な感情JMeterはイナゴプロとして良いようではありません。
イナゴは英語である蝗虫
手段。
著者のアイデアは、試験中の大規模なグループに置く、ということであるイナゴをあなたのサイトを攻撃します。
もちろん、それぞれは、Web UIの包囲プロセスを通じて監視イナゴ(またはテストユーザ)ローカストと行動、およびリアルタイムの事前に定義することができます。
これは、あなたがテストし、プロジェクトの前にプロジェクトのライン上のボトルネックを特定するのに役立ちます。
いくつかの人々へのオンラインアクセスがひざまずいた場合は、ライン上のプロジェクトは、より幸せにすることができイナゴで、力の無知ボス天国を引き抜きます。
イナゴは、より多くのプロの開発者やプロジェクトマネージャに対応するためにテストエンジニアを可能に
このプロジェクトのパフォーマンスは、どのくらいの時間の圧力に耐えることができますどのようにプロジェクトマネージャーやリーダーがお聞きしたときに、想像し;
などXXXようパイ、特定のアクセス時間を);あなたは2341で、このボトルネックプロジェクトは、人々へのアクセスは、それがハングアップします比べながらということ/ダウン/など間違っている、人々が訪問したときに1834年に、遅くなりますときながら答えました
この回答は力グリッド高いにではないでしょうか?
イナゴの動作原理
あなたは、単一のコンピュータ上で数千の同時ユーザーをサポートできるように、イナゴの動作原理は、完全にイベントの実行に基づいています。
他の多くのイベントベースのアプリケーションと比較すると、それはコールバックを使用しない(コールバックに属し、そのようなNodejsなどを、イナゴは、この種のロジックを使用しないでください)。
逆に、それはであるgevent軽量プロセスの使用。すべてのイナゴが実際に独自のプロセスで実行され、あなたのサイトをテストします(正確には、それはGreenletです)。
これはJSコールバック領域の似たようなものに行くことなく、Pythonコードよりシンプルの時間を書くことができます。
私はどのようにイナゴを理解し始めました。
私はポストマン離れて1ヤード農業、書き込みインタフェースは、チェックが、時折いくつかのインタフェースのCECE性能をんでした。
インターフェイスは、ストレステストは、DEMOはまだ非常にハイ皮膚約JMeterの書き込みの使用を検討されていない2017年。
しかし、1,000以上の同時単一の時間で見JMeterの本当の同時インタフェースは、単一のデスクトップマシンのリソースが長いのJMeterは、移動することはできません、最大使用されていても、基本的な寒さであれば、
私は、圧力センサインターフェース研究のJMeter十分かもしれそれを使用しないでください - - エレガントな方法がある場合は、私に教えて歓迎します。
非常に理想的な、テスト環境で測定もたらした圧力であり、本当に同時の数千人を達成することができそうですスタンドアロンの同時実行イナゴのPython開発者に基づいて検索して見つけ、その後、イナゴのドアを開けました。
イナゴの機能
Pythonでテストプログラムの作成
- あなたは愚かなUIインターフェイス、そのためだけに通常の書き込みコードをクリックする必要はありません。
- イナゴのではなく補正よりもコルーチンベースなので、同期実行などの通常のブロックコードにあなたのPythonコードを近づけます。
- 分散&スケーラブル
- シミュレートされたユーザーの行動の何千ものサポート数百(まだ非常に素晴らしいです)
- イナゴのサポートは、(並行して複数のマシンが出て開くことができます)負荷テストを実行している複数のコンピュータに分散しました。
- イベントベースの、ユーザーのノードイナゴ千が単一のプロセスで処理することができる場合であっても以来。
- しかし、あなたは、誰もがあなたのシステムのこの周波数を使用しているので、多くのユーザーをシミュレートしても、通常は、ユーザーがそれを行うにはどのように次のステップを考えるだろう、考える時間を持つことになります。
- ことを理解する必要がある秒あたりの要求の数は、オンラインユーザーの数と同じではありません。
- 統計Webベースのインタフェース
- イナゴは、単純なユーザーインターフェース、テストに関連する詳細情報をリアルタイムで表示することができています。
- 統計インターフェースは、クロスプラットフォームやWebページが生まれて、ウェブベースであるため、イナゴは(この考え方の著者は、まだ非常に良いですバッタ)、クロスプラットフォームとの容易な拡張です。
- あなたは、任意のWeb /アプリケーション/システムをテストすることができます
- でも、イナゴは、それはほとんどすべての項目をテストすることができ、Web指向であります
- ちょうどそのプロジェクトは非常に単純な、それをテストする必要が嫌いする「イナゴ」を入れ、パイソンで書かれたテストプログラムにしたいです!
- 公式のプロパガンダはそうですが、あなたは非常に良好ではないのpythonのを理解すれば、それはおそらく、単純なああではないですが、商人はその後、ランボルギーニ宣伝操作が簡単であるように、私が買いにお金がないことは何も良い(古い鉄、Iすぎではありません難しいです!)
- あなたが状態を強制的に、そしてそれはJMeterのに戻ってそれを行くことにしたプログラムの無知されている場合は、私は、少なくともあなたが仕事にそれを使用することができ、優雅に洗練の話ではないだろう。
- 簡単に侵入
- バッタバッタは、小さな出す簡単に妥協することができ、開発チームは、この状態を維持する計画です。
- イベントI / Oおよびすべての重い物を持ち上げるのコルーチンはgeventに委任されています
- チームはこれだけ、私はイナゴを書き、硬すぎる、低すぎる処理し、JMeterのと他のテストツールを見ています。
イナゴは、Pythonに完全に基づいています
HTTPリクエストは完全に要求ライブラリーに基づいています。
イナゴは、WebSocketのとそうでHTTP、HTTPSプロトコルをサポートしていますが、他の試験プロトコルをサポートしています。
限りのPythonの使用は、それに対応するライブラリを呼び出すよう。
- HTTP / HTTPS采用要求。
- 採用のWebSocket用WebSocket。
イナゴ創造的な背景
Locust
著者は、既存のソリューションにうんざりしているため、作成された理由。
著者彼らは右の質問は単純に言えば、ポイントを逃して対処していないことを信じて、それが著者である彼らが低すぎると思うし、遊びは、イナゴ独自のラインと使用に皆のために、ではありません。
また、深さにしようとした著者は、時折のApacheのJMeterと宗を使用します。
ほんの少しのようなUI、多くの人々が、これは良いことだと思うかもしれない、とのJMeter。
あなたがテストにテストされている場合しかし、あなたはすぐにあなたのテスト計画のいくつかのクリックインターフェース「コード」で面倒くさであることを理解するであろう。
第二に、JMeterはシミュレートするため、各ユーザのために、私たちは別のスレッドを必要とすることを意味し、スレッド結合です。これはまた、ベンチマークが実行可能ではない、単一のコンピュータシミュレーション上の何千人ものユーザーにつながりました。
一方、宗にはErlangの使用で書かれた問題をスレッドません。
ビーム自体の軽量な技術を提供するために使用することができ、喜んで規模を拡大することができます。
しかし、限られた宗とJMeterのように、テストプログラムを定義します。
これは、(この形式は依然として非常に低いですが、それは非常に直感的である)は、XMLベースのDSLを定義するために、ユーザの動作をテストする方法を提供します。グラフィックのいずれかの種類を表示したり、レポートの完了後に、我々は、生成されるログファイルが処理されているテストする必要がある、唯一のあなたは、テストの実施を理解することができます。
バッタを作成する際にこれらの問題に対処するために、著者の試み。
オープンソースライセンス
MITによる(詳細については、LICENSEファイルを参照してください)オープンソースライセンスのライセンスを取得。
参考記事:https://www.axihe.com/tools/locust/home.html