1、如何开始

1.0 预览

  学习JMeter一般遵循如下过程

1.0.1、测试计划构建

为实现测试计划构建,你将会使用JMeter图形界面。

你也可以选择通过浏览器录制应用,或者原生应用,你可以通过菜单File-》Templates -》Recording

注意你也可以手动构建你项目,但是要确保你已经读取相关文档,并理解主要的概念

你如下过程可以进行调试:

  • Run -》Start no pauses 
  • Run-》Start
  • Validate on ThreadGroup 在线程中验证

然后View Results Tree(察看结果树)渲染器 或者Testers(CSS/JQUERY,JSON,Regexp,XPath)看结果

在构建你的测试几乎之前确保你已经学习过最佳实践课程

1.0.2、加载测试运行

一旦你测试计划准备好了,你就可以开始你的加载测试,在运行前第一步就是配置注入器,也就是其他任何加载测试工具,包括如下:

  • 运行机器的CPU、内存、网络都满足要求
  • OS Tuning(操作系统优化)
  • java 设置:确保你安装最新的JDK支持JMeter
  • 合适java堆内存大小:在默认情况下,JMeter运行的堆内存为512MB,这可能不够,这要取决于测试计划和你要跑多少线程。

一旦一切就绪,你就可以使用命令行模式去运行你的测试计划

不要运行测试使用GUI模式!(译者:表情是惊讶的。。。。)

使用命令行模式,你可以生成一个CSV(或XML)测试的结果文件,JMeter在测试结束后会生成一个HTML报告,JMeter在运行的时候默认会提供加载测试的摘要。

你可以通过使用Backend Listener获取实时结果

1.0.3、加载测试分析

一旦你加载测试完成之后,你可以使用HTML报告去分析你加载的test结果


1.0.4、让我们开始吧

最简单使用JMeter的方式就是下载最新发布产品然后安装它

发布产品包含所有你在构建或者运行时需要的文件,例如:Web(HTTP/HTTPS), FTP, JDBC, LDAP, Java , JUnit等等


如果你想进行JDBC性能测试,首先你需要从对应供应商获取JDBC 驱动jar包,JMeter不会包含任何JDBC驱动jar包

JMeter 包含JMS API jar,但并没包含JMS客户端的实现,如果你想运行JMS测试,你需要下载合适JMS jar包

详情参考JMeter 类路径获取更多额外的jar包

接下来,启动JMeter,然后构建一个测试计划,在用户指导中有详细的介绍(例如,添加和移除元素)

最后,通过合适区域去获取构建特定类型测试计划的教程,例如,如果你对测试Web应用非常感兴趣,然后你可以看Building a Web Test Plan. 还有其它特殊的测试计划

  • Advanced Web Test Plan (高级的web测试计划)
  • JDBC 
  • FTP
  • JMS Point-to-Point (JMS 点对点)
  • LDAP
  • LDAP Extended(LDAP 扩展)
  • WebServices(SOAP) 

1.1JMeter运行要求

JMeter要求你电脑环境满足最小要求

1.1.1、java 版本

JMeter全部兼容JVM 8,我们建议你安装最新主版本号最小的jdk,Java 9 在JMeter3.2并没有完全测试完

因为JMeter使用只有标准JavaAPIs,请不要因为JRE运行JMeter失败提交文件bug

1.1.2 操作系统

JMeter是100%的java应用程序,所以它可以运行在任何兼容JDK的机器上。

关于JMeter操作系统兼容测试情况可以去wiki一下JMeter

甚至你的操作系统不在列出wiki测试操作系统中,JMeter依然可以运行,只要JVM满足要求。

1.2 可选条件

如果你的计划是做JMeter开发,你需要更多可选包。

1.2.1 java编译器

如果你想要构建JMeter源码或者开发JMeter插件,你需要JDK1.8或以上

1.2.2 SAX XML 解析器

JMeter默认使用的是Apache的Xerces XML 解析器,如果你想使用自己第三方不同解析器,你要把第三方的jar放入到JMeter的类路径下,同时更新jmeter.properties文件使用实现的解析全路径类名。

1.2.3 邮箱支持

JMeter已经扩展邮箱能力,它可以基于测试结果发送邮件,它有POP3(S)/IMAP(S) 取样器,它也有SMTP(S) 取样器

1.2.4 SSL 加密

当测试web服务器使用SSL加密的时候,JMeter要求提供一个实现SSL的实现类,这个要求JDK在1.4或以上。如果你的JDK版本并不包含SSL支持的话,你可能需要添加额外的实现,在JMeter类路径下包含必要的加密包,也可以 更新system.properties 去注册SSL Provider

JMeter HTTP 默认协议水平是TLS。可以通过编辑jmeter.properties或user.properties 文件中改变JMeterproperty https.default.protocol 属性的值

JMeter HTTP 取样器被配置支持所有证书,不管信任与否,尽管日期失效等待,它在服务器中遵循最大的灵活性


如果服务器要求一个客户端证书,它可以被提供出来

这里有一个SSL Manager,它可以更好管理证书

JMeter代理服务器支持录制HTTPS(SSL)


SMTP取样器可以使用本地信任存储或信任所有证书


1.2.5 JDBC 驱动

如果你想要进行JDBC测试,你需要添加你数据库供应商JDBC驱动jar到类路径下,注意是jar而不是zip文件

1.2.6 JMS 客户端

JMeter现在已经从Apache Geronimo包含JMS API,所以你需要从JMS提供商获取合适JMS 客户端的实现jar。具体详情请参考他们的文档,你可以通过wiki获取更多信息

1.2.7 ActiveMQ JMS 库 (消息队列)

你将需要添加jar activemq-all-x.x.x.jar 类路径下,比如通过存储到lib目录下

详情请参考 ActiveMQ initial configuration page 

查看JMeter类路径下获取更多额外jar详情

1.3、安装

我们推荐使用最多用户使用的最新版本

为了安装JMeter发布包,只要简单解压JMeter压缩包到任意你喜欢放置的目录,除此之外你需要安装合适的JDK或JRE环境,例如现在你需要安装JDK1.8,同时需要配置一个JAVA_HOME环境变量名,它值就是你安装JDK的根目录,其他没有条件了。

注意:这里将会出现一些问题(尤其是客户端-服务端模式),也就是路径中包含空格,这是不允许的。

安装的目录结构如下,其中 X.Y表示版本号

你可以重新命名根目录名称(例如 apache-jemter-X.Y)修改成你喜欢的名称,但是不要修改任何子目录名

1.4 运行 JMeter

如何运行JMeter,对于Windows用户运行 jmeter.bat,对于Unix用户运行jmeter, 这个文件都可以在bin目录找到,在点击文件很短的时间内,JMeter 图形界面将会出现

注意:用户界面模式应该只能用于创建测试脚本,非用户界面必须用来加载测试计划


在bin目录下还有一些额外的脚本,Windows脚本文件(.CMD文件要求Win2K或以上系统)

jmeter.bat

运行JMeter(默认图形界面启动)

jmeterw.cmd

运行JMeter不会出现window Shell控制台(默认图形界面)

jmeter-n.cmd

拖拽一个JMX文件到这个文件上去执行非图形界面测试

jmeter-n-r.cmd

拖拽一个JMX文件到这个文件上去执行远程非图形界面测试

jmeter-t.cmd

拖拽一个JMX文件到这个文件上去加载成图形界面模式

jmeter-server.bat

启动JMeter服务器模式

mirror-server.cmd

运行非图形界面JMeter镜像服务器

shutdown.cmd

通过运行关闭客户端优雅暂停非图形界面的测试实例

stoptest.cmd

通过运行关闭客户端程序暴力暂停非图形界面的测试实例

注意:

最近添加的脚本有jmeter-n.cmd,jmeter-t.cmd和jmeter-n-r.cmd ,这就意味着,最近测试计划在运行时候有更好的交互性。

这个环境变量JVM_ARGS被用来重写JVM设置在jmeter.bat脚本的值,例如


Un*x 脚本文件表示它必须工作在Linux/Unix系统中

jmeter 

运行JMeter(默认图形化界面)定义一些JVM设置可能不能满足所有工作要求,可以进行修改

jmeter-server

启动jmeter服务器模式(通过合理参数去调用jmeter脚本)

jmeter.sh

非常基础的JMeter脚本(你可能需要适应JVM默认选项例如:内存设置)

mirror-server.sh

运行JMeter镜像服务(非图形化界面)

shutdown.sh

优雅暂停非图形化界面测试实例

stoptest.sh

暴力暂停非图像化界面的测试实例

有可能你需要修改jmeter脚本,JVM设置可能不适合你当前机器的JVM,JVM_ARGS环境变量可以重写,或者设置额外JVM属性,例如

将会在脚本中重写堆的设置。

1.4.1、JMeter类路径

JMeter会自动从如下目录下找jars包

JMETER_HOME/lib

用工具包

JMETER_HOME/lib/ext

JMeter组件和插件


如果你已经开发新JMeter组件,将你需要的jar拷贝到JMeter lib/ext目录下,JMeter会自动发现JMeter组件在任何jar中。不要使用lib/ext放置工具包,或者将插件依赖包放入到lib下,它只是JMeter组件和插件引用的。


如果你不想将JMeter插件jars放入到lib/ext目录下,你可以在jmeter.properties 定义属性search_paths。


工具包和依赖包(各种库)将会被放置到lib目录下

如果你不想将jars放入到lib目录下,你可以在jmeter.properties定义user.classpath或者plugin_dependency_paths,可以参考下面介绍两个属性不同之处

其他jars(例如JDBC、JMS 和其他支持的库)应该被放置到lib目录下,而不是lib/ext目录,或者添加属性user.classpath

注意:JMeter将会找.jar 而不是.zip

1.4.2根据模板创建测试计划

你可以根据已经存在的模板进行创建测试计算

操作如下:

菜单 -文件-》Templates(模板)

··

1.4.3 使用JMeter作为代理

如果你正在测试一个防火墙或代理服务器,你可能需要给JMeter 提供防火墙或者代理服务的主机名和端口号,如何操作呢?命令行运行jmeter[.bat] 文件,有如下参数

-H :【代理服务主机名或者IP地址】

-P : 【代理服务器端口】

-N :【没有代理主机名】(例如 *.apache.org|localhost)

-u : 【代理验证的用户名-如果需要的话】

-a :【代理验证的密码- 如果需要的话】

例子:


你也可以使用 -proxyHost , -proxyPort, -username, 和 -password 做为参数名

注意:参数会显示在命令行,对他人可见。

如果代理主机和端口被提供的话,那么JMeter将会设置如下系统属性

  • http.proxyHost
  • http.proxyPort
  • https.proxyHost
  • https.proxyPort

如果非代理主机列表被提供,那么Jmeter将会设置如下系统属性

  • http.nonProxyHosts
  • https.nonProxyHosts

如果你不想设置http和https代理,你可以在system.properties定义相关属性去替换使用命令行参数。

代理设置也可以定义在一个测试计划中,使用HTTPRequest Defaults 配置或者 HTTPRequest 取样器元素

注意:

Jmeter也有它自己内置代理服务器,在HTTP(S) Test Script Recorder,它只是使用记录浏览器HTTP或者HTTPS的Session。它并不与上面描述混淆一谈,也就是使用HTTP 或者HTTPS请求它本身。

1.4.4  非图形界面(命令行模式)

为了加载测试,你必须运行JMeter非图形界面模式去得到测试结果,如果操作呢?,使用如下命令选项:

-n :这表示使用非图形界面

-t :【JMX文件中包含测试计划】

-l :【JTL文件会记录简单日志结果】

-j :【JMeter运行的日志文件】

-r :运行测试服务器通过设置属性"remote_hosts"

-R :【列出运程服务器列表】运行测试具体远程服务器

-g : 【CSV文件路径】只是生成报表

-e : 在加载测试之后生成报表

-o:输出生成报表文件到文件夹中,文件必须不存在或为空

这个脚本让你确定可选防火墙或代理服务器信息:

-H 【代理服务器主机或ip 地址】

-P 【代理服务端口】

例子:

如果属性jmeterengine.stopfail.system.exit 设置为true(默认是false),如果他不能暂停所有线程,那么Jmeter将会调用System.exit(1),一般情况下它不是必要的。

1.4.5 服务器模式

为了分布式测试,在远程节点上运行JMeter服务器模式,你可以通过界面控制这些服务器,你也可以是通过非图形模式运行运程测试,为启动服务器,请在每个服务器主机运行jmeter-server[.bat]文件

这个脚本文件需要让你具体可选防火墙或代理服务器信息:

-H 【代理服务器主机或ip地址】

-P【代理服务端口】

例子:

如果你想要在单次测试运行完之后服务器退出,你可以定义JMeter属性server.exitaftertest = true

运行测试使用非客户端界面模式,使用如下命令

注解:

-G 被用来定义在服务器JMeter属性

-X 意味着在测试完退出服务器

-Rserver1, server2 :可以使用替换-r去提供启动的服务器列表,重写remote_hosts, 但是并不会定义这个属性

如果属性jmeterengine.remote.system.exit 被设置为TRUE(默认为false),那么jMeter会在运程调用测试完之后会调用System.exit(0),一般这个是没有必要设置

1.4.6 重写属性命令行路径

java系统属性和JMeter属性可以在通过命令行进行重写(替代jmeter.properties修改),如何操作?使用如下命令选项

-D【属性名】=【值】 定义一个java系统属性值

-J 【属性名】= 【值】定义本地Jmeter属性

-G 【属性名】=【值】定义一个Jmeter属性将会发送所有远程服务器

-G【属性文件】 定义一个文件包含Jmeter属性将会发送到所有远程服务器

-L 【目录】=【优先级】 重写日志设置,设置特定的目录的优先级

-L标志可以不用设置目录表示设置根目录的日志级别

例子:

命令行属性在启动时被早期处理,但在建立日志系统之后。

1.4.7 日志和错误消息

从3.2开始,JMeter日志不在通过jmeter.properties 属性进行配置,而是通过Apache Log4j2 配置文件 log4j2.xml,这个文件所在的目录是Jmeter启动目录,也就是从3.2开始JMeter和插件MUST使用SLF4J库记录日志

这里有一个log4j2.xml文件,对于每个目录将会定义appenders和loggers

<Configuration status="WARN" packages="org.apache.jmeter.gui.logging"><Appenders><!-- The main log file appender to jmeter.log in the directory from which JMeter was launched, by default. --><File name="jmeter-log" fileName="${sys:jmeter.logfile:-jmeter.log}" append="false"><PatternLayout><pattern>%d %p %c{1.}: %m%n</pattern></PatternLayout></File><!-- Log appender for GUI Log Viewer. See below. --><GuiLogEvent name="gui-log-event"><PatternLayout><pattern>%d %p %c{1.}: %m%n</pattern></PatternLayout></GuiLogEvent></Appenders><Loggers><!-- Root logger --><Root level="info"><AppenderRef ref="jmeter-log" /><AppenderRef ref="gui-log-event" /></Root><!-- SNIP --><!--# Apache HttpClient logging examples--><!-- # Enable header wire + context logging - Best for Debugging --><!--<Logger name="org.apache.http" level="debug" /><Logger name="org.apache.http.wire" level="error" />--><!-- SNIP --></Loggers></Configuration>

所以,如果你想改变日志级别,可以通过修改org.apache.http的值,重启jmeter就行

更多的详情如何配置log4j2.xml文件,请参考点击打开链接

对特定目录和root日志级别可以直接通过命令行设置(替换修改log4j2.xml),如何操作,使用如下操作

-L【目录】=【优先级】

重写日志设置,设置特定目录的日志级别,从3.2开始,它推荐使用全目录名(例如:org.apache.jmeter 或者 com.example.foo)如果目录采用是jmeter或jorphan,org.apache.它会默认补全成一个全路径(例如:org.apache.jmeter 或 org.apache.jorphan),它为了向后 兼容。

例子:

日志不同:旧的和新的实践

从3.2开始JMeter使用SLF4J作为日志的API和Apache Log4j2 作为日志框架,并不是旧的日志级别与SLF4/Log4j2一一对应,所以,如果你想要从旧的日志配置和日志代码,请遵循如下不同点和实践建议。

目录 在3.2之前 在3.2之后
日志参考 日志参考通过 LoggingManager:
使用SLF4j目录或class
日志级别 DEBUG
INFO
WARN
ERROR
FATAL_ERROR
NONE
DEBUG
INFO
WARN
ERROR
ERROR
NONE

注意:“FATAL_ERROR”在SLF4jAPI不再支持,它被作为‘ERROR’替换已经存在代码

‘TRACE’级别比‘DEBUG’级别要高,它被3.2之后支持,详情查看SLF4J或者Apache Log4j2 文档

在运行测试的时候JMeter一般不会对于错误使用弹出框,对于一个mis-spelt变量和函数也不会报道任何错误,而是只是引用,详情参考:点击打开链接


如果JMeter 在运行测试时候检测出错误,这个信息将会被写入日志文件中,这日志文件名通过log4j2.xml文件(或者使用-j 选项,如下所示)。它默认是jmeter.log,可以在Jmeter启动目录找到这个文件。

也可以通过图像界面 选项-》Log VIewer  或者 三角形中一个感叹号

在任何更深属性被处理,命令行可以使用选项 -j jmeterlogfile 可以设置初始化属性文件为可读,它所以允许默认jmeter.log可以被重写,采用jmeter脚本来测试计划(例如jmeter-n.cmd),那么日志文件的名称为测试计划的名称,例如测试计划为Text27.jmx 那么日志文件设置为Test27.log


当运行在Windows上,这个文件可以只是显示jmeter,除非你设置扩展名可见。

日志文件会记录测试的一些信息

2017-03-01 12:19:20,314 INFO o.a.j.JMeter: Version 3.2.20170301
2017-03-01 12:19:45,314 INFO o.a.j.g.a.Load: Loading file: c:\mytestfiles\BSH.jmx
2017-03-01 12:19:52,328 INFO o.a.j.e.StandardJMeterEngine: Running the test!
2017-03-01 12:19:52,384 INFO o.a.j.e.StandardJMeterEngine: Starting 1 threads for group BSH. Ramp up = 1.
2017-03-01 12:19:52,485 INFO o.a.j.e.StandardJMeterEngine: Continue on error
2017-03-01 12:19:52,589 INFO o.a.j.t.JMeterThread: Thread BSH1-1 started
2017-03-01 12:19:52,590 INFO o.a.j.t.JMeterThread: Thread BSH1-1 is done
2017-03-01 12:19:52,691 INFO o.a.j.e.StandardJMeterEngine: Test has ended


这个日志可以定位错误很有帮助,JMeter并不会打断测试而弹出错误对话框。

1.4.8 全命令行选项列表

调用 JMeter 作为 “jmeter -?” 将会打印如下命令行选项:

D:\install\apache-jmeter-3.2\bin>jmeter -?_    ____   _    ____ _   _ _____       _ __  __ _____ _____ _____ ____/ \  |  _ \ / \  / ___| | | | ____|     | |  \/  | ____|_   _| ____|  _ \/ _ \ | |_) / _ \| |   | |_| |  _|    _  | | |\/| |  _|   | | |  _| | |_) |/ ___ \|  __/ ___ \ |___|  _  | |___  | |_| | |  | | |___  | | | |___|  _ <
/_/   \_\_| /_/   \_\____|_| |_|_____|  \___/|_|  |_|_____| |_| |_____|_| \_\ 3.
2 r1790748Copyright (c) 1999-2017 The Apache Software Foundation--?print command line options and exit-h, --helpprint usage information and exit-v, --versionprint the version information and exit-p, --propfile <argument>the jmeter property file to use-q, --addprop <argument>additional JMeter property file(s)-t, --testfile <argument>the jmeter test(.jmx) file to run. "-t LAST" will load lastused file-l, --logfile <argument>the file to log samples to-i, --jmeterlogconf <argument>jmeter logging configuration file (log4j2.xml)-j, --jmeterlogfile <argument>jmeter run log file (jmeter.log)-n, --nonguirun JMeter in nongui mode-s, --serverrun the JMeter server-H, --proxyHost <argument>Set a proxy server for JMeter to use-P, --proxyPort <argument>Set proxy server port for JMeter to use-N, --nonProxyHosts <argument>Set nonproxy host list (e.g. *.apache.org|localhost)-u, --username <argument>Set username for proxy server that JMeter is to use-a, --password <argument>Set password for proxy server that JMeter is to use-J, --jmeterproperty <argument>=<value>Define additional JMeter properties-G, --globalproperty <argument>=<value>Define Global properties (sent to servers)e.g. -Gport=123or -Gglobal.properties-D, --systemproperty <argument>=<value>Define additional system properties-S, --systemPropertyFile <argument>additional system property file(s)-f, --forceDeleteResultFileforce delete existing results files before start the test-L, --loglevel <argument>=<value>[category=]level e.g. jorphan=INFO, jmeter.util=DEBUG or com.example.foo=WARN-r, --runremoteStart remote servers (as defined in remote_hosts)-R, --remotestart <argument>Start these remote servers (overrides remote_hosts)-d, --homedir <argument>the jmeter home directory to use-X, --remoteexitExit the remote servers at end of test (non-GUI)-g, --reportonly <argument>generate report dashboard only, from a test results file-e, --reportatendofloadtestsgenerate report dashboard after load test-o, --reportoutputfolder <argument>output folder for report dashboard

注意:jmeter日志文件名被格式化为一个SimpleDateFormat应用到当前时间,它包含一对单引号,例如‘jmeter_'yyyyMMddHHmmss’.log"

如果具体名LAST被用来对于-t,-j或者-l标志,那么JMeter意味着最后的测试计划将会采用交互式模式。

1.4.9 非图像界面 关闭

在2.5.1版本之前,Jmeter在非图像界面完成测试的时候将会调用System.exit(), 这就是导致应用的问题直接调用Jmeter,所以JMeter在正常测试完之后不在调用System.exit()【有些致命的错误也仍然调用System.exit()】在启动的时候,JMeter会退出所有非守护线程,但还是有可能一些非守护线程仍然存在,它们将会阻止JVM退出。为了检测这个情况,JMeter会在退出之前启动一个新的守护线程,这个守护线程将会等待一会儿,如果它从等待中返回,它将会清除不能退出的JVM,然后所的线程将会打印为什么的信息。

这个属性jmeter.exit.check.pause 将会被重写默认暂停2秒,如果设置为0,那么Jmeter将会不会启动守护线程。

1.5 配置JMeter

如果你想要修改JMeter运行时需要的属性,可以修改bin目录下user.properties文件,或在命令行设置jmeter.propeties属性

注意:你可以在user.properties文件定义额外的属性,这么文件将会在当前目录下自动加载,类似,system.properties 被用更新系统属性

ssl.provider 如果你不想要使用内嵌java实现类,你可以具体指定实现SSL的实现类

xml.parser 你可以指定xml 解析类,它默认值为org.apache.xerces.parsers.SAXParser

remote_hosts 冒号分割一个远程JMeter主机列表(host:port)如果JMeter运行在分布式环境中,你需要列出所有运行远程服务器,它允许你使用图形界面控制远程服务器

not_in_menu  自定义JMeter图像界面菜单,当更多JMeter的组件被添加到UI中,你可以自定义界面,你可能需要列出类名或者这个类的标签(也就是出现在UI的名称)它将不会出现在图像界面中。

search_paths 用分号分割路径,JMeter将会在这些路径下搜索插件类,例如额外取样器,这个路径可以是一个jar文件或目录,任何jar文件将会自动包含search_paths,jar文件子目录将会被忽略,它将会在lib/ext 目录下找。

user.classpath 路径列表,jmeter将会在这个路径下搜索工具和插件依赖类,使用平台路径分隔符去分割多个路径,一个路径可以是一个jar或目录,任何设置user.classpath的jar或目录将会自动加载,不过子目录将会忽略。

plugin_dependency_paths 路径列表通过分号分割,jmeter将会在这个路径下搜索工具和插件依赖类,使用平台路径分隔符去分割多个路径,一个路径可以是一个jar或目录,任何设置plugin_dependency_paths的jar或目录将会自动加载,不过子目录将会忽略。如果它与user.classpath冲突了,plugin_dependency_paths优先级更高

user.properties  这个包含额外JMeter属性,将会在初始化之后将会被添加,但是在 -q 和 -J选项之前被处理

system.properties 包含额外的系统属性, 它会在-S 和-D选择之前被添加处理。


这些命令行选项和属性文件将会根据如下顺序进行处理:

1.-p propfile

2. jmeter.properties 

3. -j logfile

4.日志被初始化

5.user.properties 被加载

6. system.properties 被加载

7.所有其他命令行选被处理

其他详情可以参考jmeter.properties, user.properties 和system.properties文件中的注释。

JMeter官方文档翻译----如何开始JMeter-1相关推荐

  1. Jmeter(1)----下载jmeter并运行一个简单用例

    转载自:https://blog.linuxeye.com/335.html 1. 下载JMeter 官方网站下载最新版本:http://jmeter.apache.org/download_jmet ...

  2. 【iOS官方文档翻译】iOS蓝牙的基本概念

    之前写了[iOS官方文档翻译]iOS的蓝牙连接.数据接收及发送一文,介绍了怎样进行蓝牙通讯,但是很多基本概念没有进行解释,看起来可能有点吃力,所以现在再翻译一篇苹果对官方蓝牙4.0一些基本概念介绍的文 ...

  3. 欢迎参与 KubeVela 官方文档翻译活动

    来源 | 阿里巴巴云原生公众号 背景 KubeVela v1.0 启用了新的官网架构和文档维护方式,新增功能包括文档版本化控制.i18n 国际化以及自动化流程.但目前 KubeVela 官方文档只有英 ...

  4. UIControl事件---iOS-Apple苹果官方文档翻译

    本系列所有开发文档翻译链接地址: iOS7开发-Apple苹果iPhone开发Xcode官方文档翻译PDF下载地址 UIControl事件1.UIControlEventTouchDown 单点触摸按 ...

  5. 【KubeVela 官方文档翻译】,欢迎大家踊跃参与

    简介:KubeVela v1.0 启用了新的官网架构和文档维护方式,新增功能包括文档版本化控制.i18n 国际化以及自动化流程.但目前 KubeVela 官方文档只有英文版,这提高了学习和使用 Kub ...

  6. jmeter性能测试报告_用 JMeter 做接口测试的优劣浅析

      2018年由软件质量报道做的调查报告表明,受调查的测试人员中约有40.67%的人使用JMeter作为接口测试的自动化测试工具(排在商业化或者开源工具中的第一),剩下的为Postman(28%),以 ...

  7. UIPageControl---iOS-Apple苹果官方文档翻译

    本系列所有开发文档翻译链接地址:iOS7开发-Apple苹果iPhone开发Xcode官方文档翻译PDF下载地址 //转载请注明出处--本文永久链接:http://www.cnblogs.com/Ch ...

  8. Python3.2官方文档翻译--异常抛出和自定义异常

    Python3.2官方文档翻译--异常抛出和自定义异常 Python3.2官方文档翻译--异常抛出和自定义异常,有需要的朋友可以参考下. 6.4 抛出异常 Raise语句运行程序员强制抛出一个具体的异 ...

  9. jmeter java性能_使用JMeter进行性能测试(Java请求)

    来源:http://wangym.iteye.com/blog/731729 看了两篇如何使用JMeter在HTTP请求及数据库方面做性能测试的文章(如下两个链接),感受到这款工具的强大及易用.我在这 ...

最新文章

  1. react学习系列之ajax
  2. oracle分页置顶,[置顶]       ibatis查询oracle分页
  3. 在Windows下编译FFmpeg详细说明
  4. mysql8.0.17压缩包安装教程_超详细的MySQL8.0.17版本安装教程
  5. 卡牌特效: svg不规则倒计时动效
  6. 【ACR2015】依那西普按需维持治疗策略有效抑制RA骨破坏进展
  7. sql显示前10行数据_SPL 简化 SQL 案例详解:计算各组前 N 行
  8. 菜鸟Linux攻略--目录文件权限的查看和修改(详细)
  9. c语言char转cstring,CString、TCHAR*、char*转换 | 时刻需
  10. 来自山西机器人乐队_冰山上的机器人X三十禁放映 | 庞宽、李霄云对谈预告
  11. vscode linux新建c语言,Ubuntu16.04下配置VScode的C/C++开发环境
  12. 计算数字1至10的总和
  13. SQL Server删除重复行的6个方法
  14. www计算机会议影响力
  15. IC卡清卡软件的使用
  16. 网络计算机装系统,网络克隆——为电脑重装系统
  17. PS学习笔记2-ps的基础操作
  18. 1024happyCTF
  19. 聊聊另外一个Druid(很全)
  20. 在移动硬盘上装双系统(一个Ventory+微PE,一个Win10家庭版)

热门文章

  1. ORACLE- check 检查约束
  2. 护眼灯A级和AA级有什么区别?2022双十一国AA台灯有必要
  3. 开源网络文件管理工具SmarkNetDisk
  4. 【安全研究】Linux后渗透常见后门驻留方式分析
  5. 使用Google CDN的JSAPI服务来提供加载各类JS库的方法
  6. 个人总结-研一上学期
  7. python中的__dict__,__getattr__,__setattr__
  8. 广告营销场景下的隐私计算实践:阿里妈妈营销隐私计算平台SDH
  9. 即构抓娃娃H5方案全球首家支持HTTPS,抓娃娃先从安全抓起!
  10. 1,WLAN的基本概念