パフォーマンステスト用のアプリケーションで、Javaで作成されてます。
http://jmeter.apache.org/download_jmeter.cgi
wget http://ftp.kddilabs.jp/infosystems/apache//jmeter/binaries/apache-jmeter-3.2.tgz tar zxvf apache-jmeter-3.2.tgz cd bin chmod 755 jmeter ./jmeter -v
OpenJDK 64-Bit Server VM warning: If the number of processors is expected to increase from one, then you should configure the number of parallel GC threads appropriately using -XX:ParallelGCThreads=N _ ____ _ ____ _ _ _____ _ __ __ _____ _____ _____ ____ / \ | _ \ / \ / ___| | | | ____| | | \/ | ____|_ _| ____| _ \ / _ \ | |_) / _ \| | | |_| | _| _ | | |\/| | _| | | | _| | |_) | / ___ \| __/ ___ \ |___| _ | |___ | |_| | | | | |___ | | | |___| _ < /_/ \_\_| /_/ \_\____|_| |_|_____| \___/|_| |_|_____| |_| |_____|_| \_\ 3.2 r1790748
チュートリアルは、GUIモードで書かれていて設定がGUIでやるようだ。 テストの操作の記録をしたり、操作の編集ができるようだ。
GroovyとかのJSR223で定義されて言語で拡張可能なようだ。
コマンドラインでの設定は、以下の網羅的なドキュメントを読むようだ。
http://jmeter.apache.org/usermanual/test_plan.html
Five Ways To Launch a JMeter Test without Using the JMeter GUI
https://www.blazemeter.com/blog/5-ways-launch-jmeter-test-without-using-jmeter-gui
http://jmeter.apache.org/usermanual/junitsampler_tutorial.html
JUnitのデフォルトの初期化と、後始末のメソッド、つまり、 setUpとtearDownの両メソッドのかわりに
oneTimeSetUp?と oneTimeTearDown?というオプションが用意されているようだ。
テストケースのコンストラクターのうち、文字列を引数に持つコンストラクターを 優先的につかう仕組みがあるらしい。
mavenのmaven-dependency-pluginをつかう場合だと
mvn clean test jar:jar jar:test-jar dependency:copy-dependencies
でtargetディレクトリに生成されるのでそれを$JMETER_HOME/lib/junitにコピー
テスト計画ファイル(.jmxファイル)が作れるようだ
./jmeter -n -t xxx.jmx
JMeter 「ANT JMeter Task」がある。
「ANT JMeter Task」は、.jmxファイルをピックアップし HTMLファイルでレポートを生成する
JMater Maven Pluginが存在する
[root folder]/src/test/jmeter/Test.jmx
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.blazemeter</groupId> <artifactId>mvn-jmeter</artifactId> <packaging>jar</packaging> <version>1.0-SNAPSHOT</version> <name>maven-jmeter-demo</name> <url>http://maven.apache.org</url> <build> <plugins> <plugin> <groupId>com.lazerycode.jmeter</groupId> <artifactId>jmeter-maven-plugin</artifactId> <version>1.4.1</version> <executions> <execution> <id>jmeter-tests</id> <phase>verify</phase> <goals> <goal>jmeter</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </project>
mvn verify
または
mvn install
StandardJMeterEngine?
とやらで動かす。gradleでtest jarの作り方がちょっとわからないので、 こちらで試すのがいいのか?
https://github.com/jmeter-gradle-plugin/jmeter-gradle-plugin
BlazeMeter?
テスト計画(jmxファイル)をアップロードしてテストができる
YAML形式やjson形式にも対応
Jenkinsとかいろいろ、CIツール(Jenkins, Bamboo, Travis, Teamcity, CircleCI)と連携
http://labs.gree.jp/blog/2014/12/12037/
http://qiita.com/tatesuke/items/bd6b23053aa5629f8434