• 2008-02-21

    JMeter用户手册第1节 - [JMeter]

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://zlfoxy.blogbus.com/logs/15751311.html

    1.简介

        Apache JMeter是100%纯java桌面应用程序,被设计用来测试C/S结构的软件(例如web应用程序)。它可以被用来测试包括基于静态和动态资源程序的性能,例如静态文件,Java Servlets,Java 对象,CGI脚本,数据库,FTP 服务器等等。JMeter可以用来模拟一个在服务器、网络或者对象上大的负载来测试或者分析在不同的负载类型下的全面性能。

        另外,JMeter能够通过让你用断言( assertions)创造测试脚本来验证你的应用程序是否返回了你所期望的结果,从而帮助我们回归测试我们的程序。为了最大的灵活性,JMeter允许你使用正则表达式创建断言。 

        但是请注意JMeter不是一个浏览器。

    1.1 历史

        Apache软件基金会的Stefano Mazzocchi是JMeter的最初开发者。他写这个程序的目的起初是为了测试Apache Jserv(一个已经被Apache Tomcat工程代替的工程)的性能。我们重新设计了JMeter来加强GUI并且增加了功能性测试的能力。

    1.2 未来

        我们希望看到JMeter的能力随着开发者充分利用它的可插入架构快速发展。未来发展的首要目标就是在没有危及它的性能测试能力的前提下尽可能使JMeter成为最有用的回归测试工具。

    2.入门

        首先要下载最新版本安装。这个版本包含了所有你在构建运行大部分类型测试如Web (HTTP/HTTPS), FTP, JDBC, LDAP, Java, and JUnit时所需要的文件。
        如果你想运行JDBC测试,当然你会需要从厂商得到相应的JDBC驱动。JMeter不提供任何的JDBC驱动。
        其他你需要下载的软件

    • BeanShell - BeanShell功能和测试元素需要


    • Java Mail - Mail Visualiser, Mail Reader and WebService(SOAP) 取样器需要

    • JMS - JMS取样器需要

    详细参见安装的jar包中的 JMeter Classpath 一章

        接下来,开始运行JMeter并且仔细参照用户指南中的建立一个测试计划章节熟悉JMeter的基本。(例如, 添加和移除元素)。

        最后,参照合适的章节来了解如何建立一个明确类型的测试计划。例如,如果你对测试web应用程序感兴趣,你就去看看建立一个web测试计划章节。其他的测试计划章节是:

        高级web测试计划

        JDBC

        FTP

        JMS 点对点

        JMS 主题

        LDAP

        LDAP 扩展

        WebServices(SOAP)

        一旦你适应了构建和运行JMeter测试计划,你可以观察各种配置元素(定时器,监听器,断言等等),它们能给你对测试计划更多的控制能力。 

    2.1需求 

        JMeter需要你运行环境满足的最小需求。 

    2.1.1 Java 版本 

     

    JMeter需要一个完整适当的1.4或更高版本的JVM。2.2及其以后版本不再支持Java 1.3

        因为JMeter 只使用JAVA标准 API, 由JRE编译问题引发的JRE运行JMeter失败请不要作为bug提交

    2.1.2 操作系统 

        JMeter是100%纯Java应用程序并且能够正确的在任何有适当的Java实现的操作系统上运行。 

        JMeter已经在如下系统测试和工作过:

     

    • Unix (Solaris, Linux等)
    • Windows (98, NT, XP等)
    • OpenVMS Alpha 7.3+

    2.2 可选

        如果你打算做JMeter开发或者想用sun公司的java标准扩展包,你会需要如下的一个或更多的可选包.

    2.2.1 Java编译器 

        如果你想构建JMeter资源或者开发JMeter插件,你会需要一个完整合适的版本为1.4或更高的JDK。

    2.2.2 SAX XML 解析器 

        JMeter可以使用Apache's Xerces XML解析器 . 你可以选择告诉JMeter使用一个不同的XML解析器。你可以这样来做:在JMeter的classpath加入第三方解析器的class,并且用解析器实现的类名修改jmeter.properties文件. 

    2.2.3 邮件支持 

        JMeter具有有限的Email能力. 它能发送基于测试结果的email, 并且有一个POP/IMAP取样器. 它现在不支持SMTP 取样.可以添加Sun’s JavaMail包和激活包到JMeter的classpath使Email支持可用。

    2.2.4 SSL 加密 

        为测试一个使用SSL加密(HTTPS)的web服务器, JMeter需要提供一个SSL实现。如果你的java版本不包含SSL支持,那么就需要添加一个外部的实现。包含需要加密的包到JMeter的classpath。同样,修改system.properties文件来注册SSL提供者。

        JMeter默认协议级别TLS。可以通过在jmeter.properties 或user.properties 中编辑JMeter property "https.default.protocol"来进行修改。

        JMeter可接受所有证书,不管信任与否,也不管是否有效期等等。这给测试服务器提供了最大的灵活性。

        如果服务需要一个客户证书,它可以被提供。为了更好的管理证书,也要有一个SSL管理器。

        JMeter代理服务器(见下)不支持录制SSL(https)。

    2.2.5 JDBC驱动

        如果你要做JDBC测试,你会需要添加你的数据库厂商的JDBC驱动到classpath.确认文件是一个jar文件而不是一个zip文件. 

    2.2.6 Apache SOAP

        Apache SOAP 需要mail.jar和activation.jar.你需要下载和拷贝这2个jar文件到你的JMeter/lib目录下.一旦这些文件拷好,JMeter会自动的获取他们.

    2.2.7 BeanShell

        为了运行BeanShell函数或者任何BeanShell的测试元素(采样器,计时器等),你需要下载beanshell.jar从http://www.beanshell.org/并且复制这个jar文件到Jmeter/lib文件夹下,jmeter会自动获取它.

    2.2.7 Libraries for ActiveMQ 3.0 ①

     

    这个列表可能过时了.

        下列库必须放在在Jmeter的lib文件夹下:

     

    1. activation.jar
    2. activeio-1.0-SNAPSHOT.jar
    3. activemq-3.0.jar activemq-core-3.0.jar
    4. concurrent-1.3.4.jar
    5. geronimo-spec-j2ee-jacc-1.0-rc4.jar
    6. geronimo-spec-j2ee-management-1.0-rc4.jar
    7. geronimo-spec-jms-1.1-rc4.jar
    8. geronimo-spec-jta-1.0.1B-rc4.jar
    9. jms.jar
    10. jndi.jar
    11. spring-1.1.jar

    如果需要更多的关于安装附加jar的说明请看JMeter Classpath章节.

     2.3 安装

     

    注意:避免安装JMeter到一个含有空格的路径。这可能会引起远程测试的问题。
     

        我们建议大多数用户使用最新的安装包

        为了安装,只需简单的解压zip/tar文件到你想装的JMeter路径。保证你有一个JRE/JDK正确被安装并且JAVA_HOME环境变量设定正确,也就没有别的你需要做的了。 

    2.4 运行JMeter

        为运行JMeter,运行jmeter.bat(Windows环境)或者jmeter(Unix环境) .

    2.4.1 JMeterde的Classpath

        JMeter自动从下列目录的jar文件中发现class:

        JMETER_HOME/lib – 为有用的jar准备

        JMETER_HOME/lib/ext – 为JMeter组件和add-on准备

        如果你开发了新的JMeter组件,那么你应该把他们做个jar包复制到JMeter的lib/ext路径下。JMeter会在这儿自动的找到JMeter组件。

       支持jars(库文件等)应该放在lib路径下.

       如果你不想把扩展jar放到lib/ext路径下,那么在jmeter.properties定义search_paths的属性。不要在lib/ext下放有用的jar;这个路径是为JMeter组件预备的。

       其他jar(像JDBC,JavaMail,BeanShell和其他任何JMeter代码需要的支持库)应该放在lib路径下——而不是lib/ext路径。

       注意:JMeter会发现.jar文件,而不是.zip文件。

       你也可以在$JAVA_HOME/jre/lib/ext安装有用的jar文件,或者(从2.1.1版本)你可以在jmeter.properties中设置user.classpath属性。

       注意设置CLASSPATH环境变量不会有效果。这是因为JMeter是用“java –jar”来启动,并且java命令会自动的忽略CLASSPATH变量,并且当-jar选项被使用时,-classpath/-cp也被使用(所有的java程序都是这样,不止是JMeter)。

    (未完待续,blogbus的字数上限也到了)
    注意:
    ①原文即如此


    历史上的今天:

    Apache JMeter 2008-02-21

    收藏到:Del.icio.us




    评论

  • 24