当前位置: 首页 > news >正文

asp.net 网站计数器机票旅游网站建设

asp.net 网站计数器,机票旅游网站建设,企业网站建设招标评分表,自主设计网站JMeter学习#xff08;一#xff09;工具简单介绍 一、JMeter 介绍 Apache JMeter是100%纯JAVA桌面应用程序#xff0c;被设计为用于测试客户端/服务端结构的软件(例如web应用程序)。它可以用来测试静态和动态资源的性能#xff0c;例如#xff1a;静态文件#xff0c;J… JMeter学习一工具简单介绍 一、JMeter 介绍 Apache JMeter是100%纯JAVA桌面应用程序被设计为用于测试客户端/服务端结构的软件(例如web应用程序)。它可以用来测试静态和动态资源的性能例如静态文件Java Servlet,CGI Scripts,Java Object,数据库和FTP服务器等等。JMeter可用于模拟大量负载来测试一台服务器网络或者对象的健壮性或者分析不同负载下的整体性能。      同时JMeter可以帮助你对你的应用程序进行回归测试。通过你创建的测试脚本和assertions来验证你的程序返回了所期待的值。为了更高的适应性JMeter允许你使用正则表达式来创建这些assertions. JMeter与LoadRunner比较 JMeter 是一款开源(有着典型开源工具特点界面不美观)测试工具虽然与LoadRunner相比有很多不足比如它结果分析能力没有LoadRunner详细很它的优点也有很多 开源他是一款开源的免费软件使用它你不需要支付任何费用  小巧相比LR的庞大最新LR11将近4GB它非常小巧不需要安装但需要JDK环境因为它是使用java开发的工具。  功能强大jmeter设计之初只是一个简单的web性能测试工具但经过不段的更新扩展现在可以完成数据库、FTP、LDAP、WebService等方面的测试。因为它的开源性当然你也可以根据自己的需求扩展它的功能。 两者最大的区别jmeter不支持IP欺骗而LR支持。 JMeter缺点 使用JMeter无法验证JS程序也无法验证页面UI所以要须要和Selenium配合来完成Web2.0应用的测试。  二、JMeter 下载安装 1JMeter安装 1. http://jmeter.apache.org/下载最新版本的JMeter解压文件到任意目录 2. 安装JDK配置环境变量JAVA_HOME. 3. 系统要求JMeter2.11 需要JDK1.6以上的版本支持运行 4. JMeter可以运行在如下操作系统上UnixWindows和Open VMS. 5. 避免在一个有空格的路径安装JMeter这将导致远程测试出现问题。 2JMeter插件安装 1. 插件下载地址 Install :: JMeter-Plugins.org 2. 插件下载后解压找到JMeterPlugins-Extras.jar,把JMeterPlugins-Extras.jar放到apache-jmeter-2.12\lib\ext目录。 三、JMeter 运行 1. 进入bin目录运行jmeter.bat启动jmeter 注意打开的时候会有两个窗口JMeter的命令窗口和JMeter的图形操作界面不可以关闭命令窗口。 2. JMeter的classpath: 如果你想添加其他JAR文件到JMeter的classpath中你必须复制他们到lib目录中; 如果你开发了一个JMeter特定组件或有效的jar文件复制到lib目录下的ext目录中。 3. 打开之后显示的是中文如果你想使用其他语言比如英文那么通过菜单选项-选择语言-英文即可当然转为中文也是同样操作。 四、JMeter 测试计划元件  打开Jmeter页面包括测试计划工作台。 1、Test Plan (测试计划)用来描述一个性能测试包含与本次性能测试所有相关的功能。也就说本的性能测试的所有内容是于基于一个计划的。 右键单击“测试计划”弹出菜单 注意 “函数测试模式”复选框如果被选择它会使Jmeter记录来自服务器返回的每个取样的数据。如果你在测试监听器中选择一个文件这个数据将被写入文件。如果你尝试一个较小的测试来保证Jmeter配置正确并且你的服务器正在返回期望的结果这是很有用的。这样做的后果就是这个文件会快速的增大并且Jmeter的效率会影响。 如果不记录数据到文件这个选项就没有不同了。 2、Threads Users线程 用户 虽然有三个添加线程组的选项名字不一样 创建之后其界面是完全一样的。之前的版本只有一个线程组的名字。现在多一个setUp theread Group 与terDown Thread Group 1) setup thread group  一种特殊类型的ThreadGroup的可用于执行预测试操作。这些线程的行为完全像一个正常的线程组元件。不同的是这些类型的线程执行测试前进行定期线程组的执行。 setUp Thread Group类似于lr的init.可用于执行预测试操作。 2) teardown thread group.  一种特殊类型的ThreadGroup的可用于执行测试后动作。这些线程的行为完全像一个正常的线程组元件。不同的是这些类型的线程执行测试结束后执行定期的线程组。 tearDown Thread Group类似于lr的end.可用于执行测试后动作。 3) thread group(线程组). 这个就是我们通常添加运行的线程。通俗的讲一个线程组,可以看做一个虚拟用户组线程组中的每个线程都可以理解为一个虚拟用户。线程组中包含的线程数量在测试执行过程中是不会发生改变的。 线程组 名称就如字面意思起个有意义的名字就行 注释 线程数这里选择5 Ramp-Up Period单位是秒默认时间是1秒。它指定了启动所有线程所花费的时间比如当前的设定表示“在5秒内启动5个线程每个线程的间隔时间为1秒”。如果你需要Jmeter立即启动所有线程将此设定为0即可 循环次数表示每个线程执行多少次请求。 3、测试片段Test Fragment 测试片段元素是控制器上的一个种特殊的线程组它在测试树上与线程组处于一个层级。它与线程组有所不同因为它不被执行除非它是一个模块控制器或者是被控制器所引用时才会被执行。 控制器 JMeter有两种类型的控制器取样器sample和逻辑控制器Logic Controller用这些原件来驱动处理一个测试。 4、取样器Sampler 取样器Sampler是性能测试中向服务器发送请求记录响应信息记录响应时间的最小单元JMeter 原生支持多种不同的sampler  如 HTTP Request Sampler 、 FTP  Request Sampler 、TCP  Request Sampler 、 JDBC Request Sampler 等每一种不同类型的 sampler 可以根据设置的参数向服务器发出不同类型的请求。 在Jmeter的所有Sampler中Java Request Sampler与BeanShell Requst Sampler是两种特殊的可定制的Sampler. 5、逻辑控制器Logic Controller 逻辑控制器包括两类元件一类是用于控制test plan 中 sampler 节点发送请求的逻辑顺序的控制器常用的有 如果If控制器 、 switch Controller 、Runtime Controller、循环控制器等。另一类是用来组织可控制 sampler 来节点的 如 事务控制器、吞吐量控制器。 6、配置元件Config Element 配置元件config element用于提供对静态数据配置的支持。CSV Data Set config 可以将本地数据文件形成数据池 Data Pool而对应于HTTP Request Sampler和 TCP Request Sampler等类型的配制元件则可以修改 Sampler的默认数据。 例如HTTP Cookie Manager 可以用于对 HTTP Request Sampler 的 cookie 进行管理。 HTTP 请求默认值不会触发Jmeter发送http请求而只是定义HTTP请求的默认属性。 7、定时器Timer 定时器Timer用于操作之间设置等待时间等待时间是性能测试中常用的控制客户端QPS的手段。类似于LoadRunner里面的“思考时间”。 JMeter 定义了Bean Shell Timer、Constant Throughput Timer、固定定时器等不同类型的Timer。 8、前置处理器Per Processors 前置处理器用于在实际的请求发出之前对即将发出的请求进行特殊处理。例如HTTP URL重写修复符则可以实现URL重写当RUL中有sessionID 一类的session信息时可以通过该处理器填充发出请求的实际的sessionID 。 9、后置处理器Post Processors 后置处理器是用于对Sampler 发出请求后得到的服务器响应进行处理。一般用来提取响应中的特定数据类似LoadRunner测试工具中的关联概念。例如XPath  Extractor 则可以用于提取响应数据中通过给定XPath 值获得的数据;正则表达式提取器则可以提取响应数据中通过正则表达式获得的数据。 10、断言Assertions 断言用于检查测试中得到的相应数据等是否符合预期断言一般用来设置检查点用以保证性能测试过程中的数据交互是否与预期一致。 11、监听器Listener 这个监听器可不是用来监听系统资源的元件。它是用来对测试结果数据进行处理和可视化展示的一系列元件。 图形结果、查看结果树、聚合报告、用表格察看结果都是我们经常用到的元件。 也就是说监听器就是对结果进行可视化的展示 五、工作台 在测试中我们可能需要暂时更改一些组件可以把一些需要更改的组件保存在工作台中测试完成后再恢复但是切记不能退出jmeter.一旦退出jmeter工作台中的内容就会消失。 1、工作台非测试元件Property Display此元件相当于是jmeter.properties的GUI。 JMeter学习二录制脚本 ---------------------------------------------------------------------------------------------------- 环境 Badboy  version 2.1.1 JDK 1.7.0_67 Apache  JMeter-2.11  ---------------------------------------------------------------------------------------------------- JMeter录制脚本有多种方法其中最常见的方法是用第三方工具badboy录制另外还有JMeter自身设置Http代理服务器IE浏览器设置来录制脚本但这种方法录制出来的脚本比较多且比较乱个人不太喜欢一般常见Badboy进行录制下面来介绍下Badbody录制。 注使用JMeter的代理或是BadBoy进行录制的时候特别是JMeter代理的时候操作不能太快不然容易造成录制失败。 badboy简介 Badboy是一款免费WEB自动化测试工具。官方下载地址http://www.badboy.com.au badboy的安装跟一般的应用程序一样Badboy是一款不错web自动化测试工具利用它来录制脚本并且录制的脚本可以直接保存为JMeter文件来使用。我无疑给我们带来了很大我方便。 1.打开badboy工具在地址栏目中输入被测试项目的地址 注意badboy正常状态下是录制状态为红色按钮如图 录制完成后点击工具栏旁边黑色按钮结束录制。 2.选择“文件”--Export to Jmeter… 3.打开JMeter工具选择“文件”--“打开”选择刚才保存的文件(.jmx类型)将文件导入进来了。 录制的脚本一定要添加HTTP Cookie Manager否则脚本运行失败切记. 现在对于JMeter来说一个测试计划只能有一个Cookie管理器。因为当多个Manager存在时JMeter目前还没有方法来指定使用哪个Manager.同时一 个Cookie Manager中的存储的Cookie也不能被其他Cookie Manager所引用所以同一个测试计划中不建议使用多个Cookie Manager. 添加cookie将保证每个用户使用不同的cookie但是分享一份Http element,几乎所有的web测试都需要cookie的支持. JMeter学习三元件的作用域与执行顺序 1.元件的作用域 JMeter中共有8类可被执行的元件测试计划与线程组不属于元件这些元件中取样器是典型的不与其它元件发生交互作用的元件逻辑控制器只对其子节点的取样器有效而其它元件config elements配置元件 、timers定时器 、post-processors后置处理程序、assertions断言、listeners监听器、Per-processors前置处理程序需要与取样器sampler等元件交互。 配置元件config elements   元件会影响其作用范围内的所有元件。 前置处理程序Per-processors 元件在其作用范围内的每一个sampler元件之前执行。 定时器timers  元件对其作用范围内的每一个sampler 有效 后置处理程序Post-processors 元件在其作用范围内的每一个sampler元件之后执行。 断言Assertions 元件对其作用范围内的每一个sampler 元件执行后的结果执行校验。 监听器Listeners 元件收集其作用范围的每一个sampler元件的信息并呈现。 在jmeter中元件的作用域是靠测试计划的的树型结构中元件的父子关系来确定的作用域的原则是 取样器sampler元件不和其它元件相互作用因此不存在作用域的问题。 逻辑控制器Logic Controller元件只对其子节点中的取样器 和 逻辑控制器作用。 除取样器 和逻辑控制器 元件外其他6类元件如果是某个sampler的子节点则该元件公对其父子节点起作用。 除取样器和逻辑控制器元件外的其他6类元件如果其父节点不是sampler 则其作用域是该元件父节点下的其他所有后代节点包括子节点子节点的子节点等。 2.元件的执行顺序 了解了元件有作用域之后来看看元件的执行顺序元件执行顺序的规则很简单在同一作用域名范围内测试计划中的元件按照如下顺序执行。 1配置元件config elements  2前置处理程序Per-processors 3定时器timers  4取样器Sampler 5后置处理程序Post-processors 除非Sampler 得到的返回结果为空。 6断言Assertions除非Sampler 得到的返回结果为空。 7监听器Listeners除非Sampler 得到的返回结果为空。 关于执行顺序有三点需要注意 *  前置处理器、后置处理器和断言等元件只能对 取样器作用因此如果在它们的作用域内没有任何取样器则不会被执行。 *  如果在同一作用域范围内有多个同一类型的元件则这些元件按照它们在测试计划中的上下顺序一次执行。 *  一个断言在测试树中是分等级的。如果它的父元件是请求它就被应用于那个请求。如果它的父元件是控制器它就影响所有那个控制器下的所有请求。 JMeter学习四参数化 JMeter也有像LR中的参数化本篇就来介绍下JMeter的参数化如何去实现。 参数化录制脚本中有登录操作需要输入用户名和密码假如系统不允许相同的用户名和密码同时登录或者想更好的模拟多个用户来登录系统。 这个时候就需要对用户名和密码进行参数化使每个虚拟用户都使用不同的用户名和密码进行访问。 一、准备脚本测试数据 1、录制一个脚本可以用badboy工具录制在jmeter中打开找到有用户名和密码的页面。如下 2、我们需要“参数化”的数据用记事本写了五个用户名和密码保存为.dat格式的文件编码问题在使用CSV Data Set Config参数化时要求的比较严格记事本另存为修改编码UTF-8.  注意用户名和密码是一一对应的中间用户逗号隔开。 我将这个文件放在了我的 C:\JmeterWorkSpace\t.dat  路径下。 二、参数化 这里介绍两种参数化的方式函数助手CSV Data Set Config。 1、借助函数助手的方式 a、点击菜单栏“选项”----函数助手对话框看下图:  CSV文件列号是从0开始的第一列0、第二列1、第三列2、依次类推。。 b、复制生成的参数化函数打开登陆请求页面在右则的参数化中找到我们要参数化的字段这里对用户名和密码做参数化第一列是用户名列号为0第二列是密码列号为1修改函数中对应的参数化字段列号就可以啦。 好了现在我们的参数化设置完成在脚本的时候会调用我们C:\JmeterWorkSpace盘下面的t.dat文件第一列是用户第二列是密码。 2、借助jmeter中的配置元件CSV Data Set Config a、选中线程组点击右键添加配置元件CSV Data Set Config 说明 Filename --- 参数项文件 File Encoding --- 文件的编码设置为UTF-8 Vaiable Names --- 文件中各列所表示的参数项各参数项之间利用逗号分隔参数项的名称应该与HTTP Request中的参数项一致。 Delimiter --- 如文件中使用的是逗号分隔则填写逗号如使用的是TAB则填写\t(如果此文本文件为CSV格式的默认用英文逗号分隔) Recycle on EOF? --- True当读取文件到结尾时再重头读取文件                     False当读取文件到结尾时停止读取文件 Stop thread on EOF? --- 当Recycle on EOF为False时当读取文件到结尾时停止进程当Recycle on EOF为True时此项无意义 备注说明这里我用通俗的语言大概讲一下Recycle on EOF与Stop thread on EOF结果的关联 Recycle on EOF 到了文件尾处是否循环读取参数选项true和false Stop thread on EOF到了文件尾处是否停止线程选项true和false 当Recycle on EOF 选择true时Stop thread on EOF选择true和false无任何意义通俗的讲在前面控制了不停的循环读取后面再来让stop或run没有任何意义 当Recycle on EOF 选择flase时Stop thread on EOF选择true线程4个参数3个那么只会请求3次 当Recycle on EOF 选择flase时Stop thread on EOF选择flase线程4个参数3个那么会请求4次但第4次没有参数可取不让循环所以第4次请求错误 事例下载demo b、使用刚才定义好的变量 至此两种参数化的方法就介绍完了。 需要说明一下函数助手方法要比CSV控件方法参数化功能要弱推荐使用CSV控件方法。 再看看与loadrunner参数化不一样的 1、 jmeter参数文件的第一行没有列名称 2、 这里要注意的是参数文件的编码可以使用记事本另存为就可以修改该编码编码问题在使用CSV Data Set Config参数化时要求的比较严格 3、 Jmeter的参数化设置没有LoadRunner做的出色它是依赖于线程设置的只有CSV Data Set Config参数化方法才有 JMeter学习五检查点 JMeter也有像LR中的检查点本篇就来介绍下JMeter的检查点如何去实现。 JMeter里面的检查点通过添加断言来完成。 检查点上一章讲到我们对用户名和密码进行了参数化那么怎样来判断jmeter有没有正确调用t.dat里面的文件呢。当然我们可以从结果图表中查看。但我还是想在“登录”这个地方进行一下检查。 1、添加响应断言右键点击我们的“登录”页面----添加----断言----响应断言 2. 设置响应断言 断言中可以添加多个断言一起判断断言中也可以使用参数化方法进行动态判断。 3、添加断言结果右键点击我们的“登录”页面----添加----监听器----断言结果 再添加一个“查看结果树” 右键点击我们的“登录”页面----添加----监听器----查看结果树 在线程组中设置3个用户点击运行运行。 4、查看断言结果 1)、成功如下图 2、若断言失败如下图 注意一般成功只会显示一行数据否则会多显示一行。 5、再查看结果树 至此检查点设置完成。 另外断言还有其它类型 Duration to Assert允许的响应时间的最大值即断言的持续时间。Size to Assert 对于返回结果文件大小的标准定义 注意Sampler设置有多个断言都会经过Assertions的判断只要有一个不符合条件的都会标示为False。 JMeter学习六集合点 JMeter也有像LR中的集合点本篇就来介绍下JMeter的集合点如何去实现。 JMeter里面的集合点通过添加定时器来完成。 注意集合点的位置一定要在Sample之前. 集合点简单来理解一下虽然我们的“性能测试”理解为“多用户并发测试”但真正的并发是不存在的为了更真实的实现并发这感念我们可以在需要压力的地方设置集合点拿那个用户和密码的地方每到输入用户名和密码登录的地方所有的虚拟用户都相互之间等一等然后一起访问。 1.接着之前创建的脚本右键点击 线程组----定时器----Synchronizing Timer 这样子就添加了一个“集合点”下面来设置一下集合点设置延迟时间以毫秒为单位 2.我们添加完之后的列表是这个样子的 发现了没我们集合点的位置不对应该在登录的前面才对。怎么弄呢 简单方法按住Alt,直接移动Synchronizing Timer至登录的前面即可。 至此集合点已添加完成。
http://www.zqtcl.cn/news/914987/

相关文章:

  • 外贸soho 网站建设旅游电子商务网站建设调查问卷
  • 北京专业制作网站seo优化技术教程
  • 网站建设最低多少钱珠海在线网站制作公司
  • 网站建设完成之后要索取哪些医疗网站建设服务
  • 长沙招聘网站有哪些深圳seo论坛
  • 网站如何做网络推广山西住房建设厅官方网站
  • 优化排名推广技术网站平面设计创意
  • 山西网站建设哪家有tv域名的网站
  • 个人博客网站怎么赚钱公司招聘一个网站建设来做推广
  • 功能型网站有哪些中国门户网站有哪些
  • 网站制作教程步骤软件公司怎么赚钱
  • 看世界杯网址网站更新seo
  • 深圳网站做的好的公司商洛做网站电话
  • 环保部网站官网建设项目审批做网站推广赚钱吗
  • 北仑建设局网站东莞市seo网络推广价格
  • 大专学历怎么自考优化建站
  • 网站上的图片怎么替换中国电力建设集团网站
  • 开发手机网站步骤手机网站前端开发布局技巧
  • 文山文山市网站建设网站建设管理教程视频
  • 深圳建筑业协会官网seo短视频新地址在哪里
  • 学院宣传网站制作大型网站团队人数
  • 新品发布会ppt参考友山建站优化
  • 做网站云服务器装系统厦门网站建设哪家强
  • 网站建设顶呱呱东莞建设信息网官网
  • 化妆品网站下载企业宣传片报价明细
  • php建设网站怎么用网站建设忽悠
  • 网站软件app免费注册账号qq
  • 清河网站建设公司西安开发网站的公司
  • 怎么用自己的服务器做网站软件接口设计文档
  • 昆明做网站建设找谁郑州网站制作的公司哪家好