セレン/ junitのテストケースで記録されたjmeterスクリプト(複数のユーザーによって記録された一連のアクションによって記録された負荷をテストする)を統合する方法はありますか?私はちょうどそのjavaを使ってそのセレン/ junitテストケースを実行し、それは私にjunitレポートのパフォーマンス結果を与えるのですか? セレンのwebdriverをjmeterに統合する方法を説明する記事を見つけましたが、それ以外の方法はありません。junitテストからjmeterを起動する
答えて
あなたは例のコードは次のようになり、JMeter Java APIを使用して、既存のJMeterのテストを実行することができます。
import org.apache.jmeter.engine.StandardJMeterEngine;
import org.apache.jmeter.reporters.ResultCollector;
import org.apache.jmeter.reporters.Summariser;
import org.apache.jmeter.save.SaveService;
import org.apache.jmeter.util.JMeterUtils;
import org.apache.jorphan.collections.HashTree;
import java.io.File;
public class JMeterFromCode {
public static void main(String[] args) throws Exception {
// JMeter Engine
StandardJMeterEngine jmeter = new StandardJMeterEngine();
// Initialize Properties, logging, locale, etc.
JMeterUtils.loadJMeterProperties("/tmp/jmeter/bin/jmeter.properties");
JMeterUtils.setJMeterHome("/tmp/jmeter");
JMeterUtils.initLogging();// you can comment this line out to see extra log messages of i.e. DEBUG level
JMeterUtils.initLocale();
// Initialize JMeter SaveService
SaveService.loadProperties();
// Load Test Plan
HashTree testPlanTree = SaveService.loadTree(new File("/tmp/jmeter/bin/test.jmx"));
Summariser summer = null;
String summariserName = JMeterUtils.getPropDefault("summariser.name", "summary");
if (summariserName.length() > 0) {
summer = new Summariser(summariserName);
}
// Store execution results into a .jtl file
String logFile = "/tmp/jmeter/bin/test.jtl";
ResultCollector logger = new ResultCollector(summer);
logger.setFilename(logFile);
testPlanTree.add(testPlanTree.getArray()[0], logger);
// Run JMeter Test
jmeter.configure(testPlanTree);
jmeter.run();
}
}
は交換してください:
- を
/tmp/jmeter
のすべての出現 - あなたのJMeterインストール /tmp/jmeter/bin/test.jmx
へのパスに - 記録されたJMeterスクリプトを含む.jmxファイルへのパス。/tmp/jmeter/bin/test.jtl
- JMeterのテストはMaven pluginを介して実行することができるよう多分あなたは簡単に統合ソリューションを見つけるでしょう、JMeterのテストを実行する可能性の詳細についてはFive Ways To Launch a JMeter Test without Using the JMeter GUIの記事を参照してください
ありがとう、これは私が望んでいたものです!同じAPIを使用してレポートの結果に対してアサーションを付けることもできますか?たとえば、実行時間が2秒未満の場合はテストに合格する必要があります。 – CodeMaker
JMeterテストプランでは、[Duration Assertion](http://jmeter.apache.org/usermanual/component_reference.html#Duration_Assertion)を使用して、 JMeterアサーションを3つの簡単なステップで使用する方法(https://www.blazemeter.com/blog/how-use-jmeter-assertions-3-easy-steps)を参照してください。 JMeter関連のコードをJUnitまたはTestNGテストにラップすると、次のようなことができます: 'long before = System.currentTimeMillis(); // jmeterコードの後ろに= System.currentTimeMillis(); if((after-before))> 2000){Assert.fail( "Duration of 2 seconds exceeded");} ' –
- 1. jUnitテストからmavenフィルタリングを起動する方法は?
- 2. Jmeter JunitテストのセットアップでJDBCを使用
- 3. 起動時のIllegalStateException Spring JUnitテスト
- 4. プレイフレームワーク2.1 JUnitテストは、JUnitテストを日食からzentaskチュートリアル以下
- 5. マスタからjmeterスレーブを起動およびシャットダウンする方法
- 6. Jmeter junit not sampler menu
- 7. JUnitテスト間のJettyサーバーの起動と停止
- 8. JUnitテスト:スレッドからの結果をテストする方法
- 9. eclipse android-junit起動設定を使用してテストアプリケーションからテストを除外する方法
- 10. Apache JMeterテスト動的URL
- 11. JMeterレポートをJUnitレポートに変換する
- 12. Jenkins JMeter Selenium JUnitテストでブラウザが表示されない
- 13. 自動テストのためにpythonからテストpubsubエミュレータを起動する方法
- 14. Junit 3、テストからデータを取得
- 15. Jmeter JunitのFirefoxDriverでのリクエスト
- 16. JMeter、JUnit、Spring Javaの設定
- 17. BlazeMeter/JMeter問題:JUnitサンプラーClassNotFoundException
- 18. jUnitによるデータ駆動テスト
- 19. JUnitテストからspringコンテキストにアクセス
- 20. SpringブートアプリケーションがJUnitテストから起動していますが、URLにアクセスできない
- 21. Maven.surefire.util.SurefireReflectionException Junitテストをテストするとき
- 22. getInstanceメソッドをテストするJunit
- 23. JUnitでGUIをテストする
- 24. JUnitテストをデバッグ
- 25. Pythonスクリプト、ベースディレクトリでJmeterサーバを起動
- 26. ブックマークからSeleniumテストを起動しますか?
- 27. JMeterの再起動プラグインマネージャを選択すると、JMeterのGUIモードでマネージャー
- 28. Groovy ConsoleからJUnitテストを実行する
- 29. ./gradlewテストから単一のJUnitレポートを作成する方法
- 30. JunitテストでFaceContextからのNullPointerExceptionを回避する方法は?
このようなことは一度も聞いたことがありませんが、一般的にJMeter APIとJUnit Runnerでは可能です。小さな仕事ではありません。代わりにJenkinsプラグインを使用することをお勧めします。https://wiki.jenkins-ci.org/display/JENKINS/JMeter+Plugin –
あなたは何を求めているのか明確にすることができますか?最初に書かれたようにあなたの質問は絶対に意味がありません。 jmeterとseleniumは非常に異なるものに使われる2つのツールです.Junitは単なるテストフレームワークです。あなたは正確に何をしようとしていますか? –
@Corey Goldberg、OP質問(junitのjmeterテストを実行中)は意味があります。答えが大きすぎる –