我们可以使用JMeter进行哪种类型的项目测试

时间:2017-01-06 11:31:08

标签: java multithreading maven testing jmeter

在我的java应用程序中,有多个maven项目使用,它们相互依赖。在那个10个线程中一次运行以创建一个10个游览计划(一天访问店主)并且在完成其中一个线程执行之后其他线程处于队列中等待线程得到改变。 我想测试我的应用程序的负载测试是否所有线程都正常工作。我不知道JMeter是否可行。 如果可能,那么如何通过JMeter执行我的应用程序。

请有人建议我是否可以使用JMeter进行应用程序测试,如果没有,那么是否有其他选择

2 个答案:

答案 0 :(得分:1)

JMeter是一种负载测试工具,适用于协议层。它主要支持使用HTTP / HTTPS协议的Web应用程序,无论用于构建Java,NodeJS,PHP,ASP.NET等应用程序的技术如何.JMeter还支持各种其他协议,如FTP,SMTP,SOAP / REST Web服务,数据库通过JDBC,LDAP,TCP,Java对象等。

与场景的线程模拟相关,使用Thread Group定义线程数以运行脚本化请求(在协议层)。如果单个线程不够用,则使用多个线程组并按顺序运行它们(完成一个线程组,然后只运行第二个线程组,因为它取决于第一个线程组),或者根据您的需要并行运行。

参考文献:

  1. http://jmeter.apache.org/
  2. http://jmeter.apache.org/usermanual/component_reference.html
  3. http://jmeter.apache.org/usermanual/get-started.html

答案 1 :(得分:0)

通常,您使用JMeter执行性能/负载测试。 您可以测试的项目/应用程序通常是基于Web的(http / https),但还有其他可用的协议,如FTP,REST / SOAP,JDBC,LDAP,JMS,POP3,SMTP,IMAP,TCP,Shell脚本,Java对象等Reference link

如果你有10个线程,但一次只有一个线程正在工作,那么,它不会属于负载测试类别,因为你并没有真正产生负载。好的部分是您仍然可以使用JMeter测试逻辑/功能,因为您可以使用JMeter使用断言进行功能测试。

在您的情况下,项目是基于Web的应用程序,还是具有使用线程实现的逻辑的桌面应用程序? 如果它是一个Web应用程序,那么您可以简单地创建一个触发相应线程的请求的HTTP采样器(在JMeter中),并且可以轻松地对其进行测试。关于这个主题有很多教程。

但是,如果您想特别想要测试特定的Java类,可以使用“Java Request”采样器来完成。 此采样器允许您控制实现org.apache.jmeter.protocol.java.sampler.JavaSamplerClient接口的java类。 Reference link