マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

HTTPプロトコルの場合

テキスト・フォーマット

SOAP、JSONなどのテキスト・フォーマットの場合、コチラと同じ方法で負荷テストが可能。

バイナリ・フォーマット

  • HTTP内部にbase64等のバイナリ・フォーマットが存在する場合、
    スクリプト修正は不可能(電文再送で再現可能な負荷に限りテスト可能)。

その他のプロトコルの場合

サンプラー

適切なプロトコル系のサンプラーを使用して
負荷テストを実施(ワークロードの記録はできない)

  • FTP
  • LDAP
  • JDBC
  • MongoDB
  • SMTP
  • POP3(S)/IMAP(S)
  • JMS(Java Message Service)
  • OSコマンド

テンプレート

テンプレートを使用してテスト計画を作成すると良い。

生バイナリ電文対応

Jmeter

  • 以下の問題が発生する。
  • bin/jmeter.propertiesに、以下の設定を行う。
    proxy.binary.types=application/x-amf,application/x-java-serialized-object,application/octet-stream
  • コードは以下のように修正する(VBでWebRequest?を使用する際の例)。
    ' HttpWebRequest作成
    request = DirectCast(WebRequest.Create(server), HttpWebRequest)
    request.Proxy = New WebProxy("127.0.0.1", 8888)
    request.ContentType = "application/octet-stream"
  • 生バイナリ電文でも、キャプチャ・リプレイが可能になる。
    ※ 以下のようにバイナリのボディがファイルに保存されるようになる。
    バイナリ電文ファイル

Fiddler and Test Studio

Fiddlerを使用すれば、キャプチャ電文をそのままリプレイできる。

  • しかし、*.sazファイルのログを
    • シーケンシャル実行したり
    • 多重度を上げて実行したり

できない。

  • Test Studioを使用すればできるようにも見えたが、
    ログをシーケンシャル実行する機能テストは可能だったが、
    多重度を上げるような負荷テストができなかった。

pcap再生ツール

TCP/IPの電文再送でテスト可能ならpcap再生ツールが使える。
(ただし、一通り調べたところ、多重実行できるまでのツール発見できなかった)

Bit-Twist

元々はUnix系OS向けのツールだが、Windows版のバイナリもある。

  • コマンドは2種類あり、
    • bittwiste.exe
      PCAPファイルを編集するコマンドでパケットに含まれるIPアドレスやポート番号を編集できる。
    • bittwist.exe
      PCAPファイルを送信するコマンドでパケットの送信速度等を設定できる。
  • Cygwin1.dll
    Windows版ではCygwin1.dllが必要

PReplay

非常に単純なツール。また、2パケット間の時間差を保持する。

  • 評価 使えるが、ポート番号が同じになるので多重実行ができない。
    そもそも多重起動に対応していなそう(→ 下記設定でファイルを複数設定する仕様)。
  • 設定
    追跡 -> TCP/IPで全選択した後にエクスポートした「selected.pcap」を指定。
    ※ ここに、1, 2, 3 ... と指定して行くと、シーケンシャルではなく多重実行に見える。
    [SendingDetails]
    SendingFilePath=C:\
    GatewayOldMac=00-0F-A3-35-C4-15
    GatewayNewMac=00-0D-56-69-14-6D
    ClientOldMac=00-02-44-8E-98-7B
    ClientNewMac=00-15-F2-33-6A-D5
    GatewayOldIP=192.168.1.1
    GatewayNewIP=192.168.8.3
    ClientOldIP=192.168.1.2
    ClientNewIP=192.168.8.8
    [SendingFileName]
    1=PReplay\\selected.pcap
    ;1=pcap1.cap
    ;2=pcap2.cap
  • 実行
    PReplayでpcapファイルを再生する。
    PReplayでpcap再生
  • 結果
    実行したパケットをキャプチャして実際に実行できたかを確認する。
    PReplayでのpcap再生結果
  • bat化
    bat化する場合、Echoコマンドで使用するNICの番号を指定可能。
    echo 3 | PacketSendingUtility.exe

tcpreplay

Windows用のサポートやバイナリがない。

  • tcpreplay man page
    http://otsuka752.github.io/wiki/tcpreplay-man.html

    tcpreplay の基本的な使い方は、

    • 指定されたファイル群を キャプチャされた時と同じ速度で再送信したり、
    • ハードウェアが許す限りの速度の範囲内であれば、指定したデータ速度で再送信する。

Ostinato

昔はフリーだったのかもしれないが、今は有償化されている。

XenaManager?-2G

UIが複雑すぎるとの、Replay Fileメニュー・アイテムをEnabeにする方法が不明で利用を断念。

参考


Tags: :テスト, :ツール類


添付ファイル: filebinaries.png 52件 [詳細] filewire.png 57件 [詳細] filecmd.png 55件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-03-17 (土) 18:53:53 (153d)