`
hacker_zxf
  • 浏览: 148815 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

JMeter性能测试初识

阅读更多
   刚接触JMeter,看完JMeter的介绍后,觉得JMeter真的很强大,很佩服apache开源组织的人,一值能推出这么好用的东西,下面就开始做了第一个例子,看看怎么使用JMeter。

  首先,做一个模拟一个http,在测试计划下需要添加一个线程组,用来多线程并发请求http服务,然后在测试计划下添加一个默认的request的连接,然后在线程组下添加一个sample,类型是http请求,最后在测试计划下添加一个监听,类型可以是表格或其他,各配置项一看就明白;接下去运行就可以了;

  然后尝试下Java 请求的性能测试,这个也是会比较常用的功能,首先随便建个java工程,建一个测试类,测试类需要先继承AbstractJavaSamplerClient类,这个类似于junit的TestCase,是任何javaSampler的基类,类似代码如下:

import org.apache.jmeter.config.Arguments;
import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient;
import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext;
import org.apache.jmeter.samplers.SampleResult;

import src.proxydemo.ISayHello;
import src.proxydemo.LoggerHandler;
import src.proxydemo.SayHelloImpl;

/**
 * @author xiaofeng.zhouxf
 * @mail: zhouxiaofeng0710@hotmail.com
 * 
 * @date 2010-9-2
 */
public class Test extends AbstractJavaSamplerClient {

	/** 
     *  
     */
	private static long start = 0;
	private static long end = 0;

	/**
	 * 执行runTest()方法前会调用此方法,可放一些初始化代码
	 */
	public void setupTest(JavaSamplerContext arg0) {

		// 开始时间
		start = System.currentTimeMillis();
	 System.err.println(" ======begin======");
	}

	/**
	 * 执行runTest()方法后会调用此方法.
	 */
	public void teardownTest(JavaSamplerContext arg0) {

		// 结束时间
		end = System.currentTimeMillis();

		// 总体耗时
		System.err.println("cost time:" + (end - start) / 1000);
		System.err.println(" =====end======= ");
	}

	/**
	 * JMeter界面中可手工输入参数,代码里面通过此方法获取
	 */
	public Arguments getDefaultParameters() {

		Arguments args = new Arguments();
		args.addArgument("test", "123");
		return args;
	}

	/**
	 * JMeter测试用例入口
	 */
	public SampleResult runTest(JavaSamplerContext arg0) {

		SampleResult sr = new SampleResult();
		String test = arg0.getParameter("test");
		System.err.println("test value:" + test);
		try {
			// Start
			sr.sampleStart();

			/**
			 * Start~End内的代码会被JMeter 纳入计算吞吐量的范围内,为了使 性能结果合理,无关代码不必放此
			 */

                        //======这里开始写你要测试的代码======>> 
			SayHelloImpl sayHello = new SayHelloImpl();
			LoggerHandler proxy = new LoggerHandler();
			ISayHello isayhello = (ISayHello) proxy.bind(sayHello);
			isayhello.sayHello();
                        		

			sr.setDataEncoding("UTF-8");
			sr.setResponseCode("testStr:" + test);
			 

                         /**
			 * True/False可按测试逻辑传值 JMeter会对失败次数做出统计
                         * 根据你的代码执行结构设置即可
			 */
			sr.setSuccessful(true);
                        //<<========================

			// End
			sr.sampleEnd();

		} catch (Exception e) {

			e.printStackTrace();
		}

		return sr;
	}

	public static void main(String[] args) {

	}
}


代码写完之后,把工程打包成jar,放到JMeter的lib/ext目录下,以及你需要测试性能的代码,也需要打包成jar,放到这里;
最后启动JMeter,跟上面类似,添加线程组,线程组下添加sampler,类型是java请求,建完后可以在右边类名称的下拉框中看到你刚写可以看到性能报告啦;
   暂时只是使用,下次看看他的实现再说~
分享到:
评论

相关推荐

    JMeter性能测试脚本

    JMeter是一款强大的开源性能测试工具,广泛应用于Web应用、FTP服务器、数据库和其他协议的服务性能测试。JMeter由Apache Software Foundation开发,支持多线程并行测试,能够模拟大量并发用户来评估系统的性能和稳定...

    jmeter性能测试报告.docx

    【Jmeter性能测试报告概述】 性能测试是评估软件系统在不同负载条件下运行能力的重要手段,旨在确定系统的性能指标,如响应时间、并发用户数、系统稳定性等。JMeter是一款广泛使用的开源性能测试工具,适用于模拟...

    Jmeter性能测试高级项目实践课程资源.rar

    熟练学习Jmeter工具独立完成常见的性能测试项目熟练使用Jmeter进行脚本开发熟练使用Jmeter进行性能测试熟练使用Jmeter进行接口测试 1) 第一阶段为JMETER 5.4.1 工具使用篇,通过Jmeter 介绍和安装、http 取样器、...

    Jmeter性能测试报告模板

    ### Jmeter性能测试报告模板知识点解析 #### 一、性能测试概述 性能测试是一种软件测试类型,用于评估软件系统的性能,特别是在高负载下系统的行为。它可以帮助开发人员和测试工程师了解系统在各种条件下的表现,...

    JMeter性能测试培训.ppt

    7. **执行测试**:运行JMeter测试计划,观察性能指标。 8. **分析结果**:根据测试结果,分析系统在高负载下的表现,找出可能的性能瓶颈。 总之,JMeter作为一款强大的性能测试工具,提供了全面的功能来模拟多种...

    JMeter性能测试,完整入门篇

    本文来自于csdn,文为JMeter性能测试完整入门篇,从Jmeter下载安装到编写一个完整性能测试脚本、最终执行性能测试并分析性能测试结果。ApacheJMeter是一款纯java编写负载功能测试和性能测试开源工具软件。相比...

    Jmeter性能测试白皮书

    《Jmeter性能测试白皮书》深入解析 Jmeter,这款由Apache组织开发的开源测试工具,主要用于功能和性能测试,完全基于Java语言,具备强大的界面支持和多种配置选项。其核心功能在于模拟用户行为,对服务器或网络系统...

    jmeter性能测试视频教程

    学习JMeter性能测试,你需要理解性能测试的目的,比如检测系统在高负载下的稳定性、响应时间、吞吐量等指标。通过JMeter,你可以创建不同的测试场景,模拟不同数量的并发用户,设置各种负载模式,然后收集和分析测试...

    jmeter性能面试问答题

    线程组是JMeter测试计划的基础,包含以下几个关键参数: 1. **线程组名**:标识测试计划中的不同测试部分。 2. **注释**:用于记录测试目的或注意事项。 3. **线程数**:模拟并发用户数量。 4. **循环次数**:每个...

    jmeter性能测试培训资料

    jmeter性能测试培训资料及详细说明,深入浅出,适合入门的学习人员

    jmeter性能测试进阶课程板书-我要自学网.pdf

    Jmeter的中文教程,之前看b站一个课程的时候,找该课程的板书找到的,如有侵权,请私信博主删除,来源于网上公共资源

    Jmeter性能测试全解

    ### JMeter性能测试全解 #### 一、JMeter简介 Apache JMeter是一款开源的压力测试工具,主要用于对静态或动态资源(例如静态文件、Web应用、FTP服务器等)进行性能测试。它支持多种协议,包括HTTP、HTTPS、FTP等,...

    性能测试工具JMeter书籍(6本)目录知识点(思维导图加图)整理.rar

    性能测试工具JMeter书籍(6本)目录知识点(思维导图加图)整理.rar 根据如下6本性能测试、JMeter书籍收集整理重点知识点: 2012年《零成本实现Web性能测试:基于Apache JMeter》 2016年《大型IT系统性能测试入门...

    jmeter4.0进行微信小程序测试报告(jmeter性能测试教程)

    《使用JMeter 4.0进行微信小程序性能测试详解》 微信小程序的广泛使用使得其性能测试变得至关重要,本文将详细介绍如何使用JMeter 4.0这一强大的性能测试工具对微信小程序进行压力测试。JMeter是一款由Apache开发的...

    Jmeter性能测试相关书籍

    ### Jmeter性能测试基础知识 #### 一、JMeter目录结构 在进行JMeter性能测试之前,了解其目录结构是至关重要的。JMeter安装后的主要目录包括: - **bin**: 包含启动脚本(如jmeter.sh/jmeter.bat)和其他执行文件...

    Jmeter性能测试

    JMeter是一款开源的性能测试工具,它主要用于测试静态和动态资源的性能,比如静态文件、Java小程序、CGI脚本、Java对象、数据库、FTP服务器等。JMeter可以模拟高并发用户执行压力测试,也支持对服务器、网络或对象...

    jmeter性能测试白皮书

    ### JMeter性能测试白皮书知识点详解 #### 线程组配置 在JMeter中,**线程组**是构建任何性能测试的基础组件之一,它定义了虚拟用户的集合及其行为模式。 - **线程数(模拟用户数)**:表示在测试中模拟的用户数量...

    Jmeter性能测试报告之曲线图展示

    -- JMeter测试计划 --&gt; &lt;jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtl.dir}/${ReportName}_${time}.jtl"&gt; ${basedir}" includes="test.jmx"/&gt; &lt;!-- 其他配置项 --&gt; &lt;/jmeter&gt; ``` 在...

    jmeter性能测试工具

    Apache JMeter是Apache组织开发的基于Java的压力测试工具。...JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来在不同压力类别下测试它们的强度和分析整体性能、多应用于c/s架构的测试........

Global site tag (gtag.js) - Google Analytics