在1台测试机上面处理测试结果并没啥,比较麻烦的是合并2台测试机的测试结果。

首先说说,为什么我们需要使用2台(甚至3台、4台)测试机对服务器发送大量的请求呢?说白了就是测试机配置太弱了,服务器太牛逼。有时候我的测试机是4核的,但是服务器居然是16核、32核。如果测试机也是32核的话,只用1台测试机就能搞定工作。

引用一段比较专业的说法

作为一个纯 JAVA 的GUI应用,JMeter对于CPU和内存的消耗还是很惊人的,所以当需要模拟数以千计的并发用户时,使用单台机器模拟所有的并发用户就有些力不从心,甚至还会引起JAVA内存溢出的错误。不过,JMeter也可以像 LoadRunner 一样通过使用多台机器运行所谓的代理来分担负载产生器自身的压力,并借此来获取更大的并发用户数。

上面这段话也可以归结为:测试机的配置太弱了,但凡是16核的测试机,Jmeter对于CPU和内存再消耗惊人,能怎么样?完全HOLD住。

-------------------------------------------------------------------------------------------------------------------------------------------------------------

下面的内容仅仅是叙述了我如何合并2台测试机的测试结果,用到的Linux命令包括:vi、cp、tar、rz、sz、cat。熟能生巧,没啥太特别的东西,备份一下以免长期不用忘了咋用。

-------------------------------------------------------------------------------------------------------------------------------------------------------------

举例开始了,我们假设只有2台测试机,所以只需要将2个测试结果文件合并就可以了:

//将2台测试机/result目录下的result.csv文件通过vi打开,去掉首行然后保存。因为首行显示的是jmeter-configure的标题(如下图),会影响结果的计算

//接下来操作都是在这两台测试机的/result目录下执行,!!!!别去其它目录!!!!!!

  • # vi result.csv
  • 去除行首的标题后,保存并退出

//在其中1台测试机内(叫它测试机a),将测试结果文件重新命名(原名是:result.csv),原因是我们在执行多台测试机并发的时候,在每台测试机保存的结果文件的名字是相同的。所以需要将名字修改成不相同的,以便执行合并结果的操作

//cp 已有文件名 新文件名

  • # cp result.csv  result01.csv

//在测试机a的操作界面内,将已经重新命名的结果文件压缩

//tar –zcvf 文件名.tar.gz  文件名

  • #tar –zcvf result01.csv.tar.gz result01.csv

//在测试机a的操作界面内,将已压缩的结果文件从测试机a下载到本地

  • #sz result01.csv.tar.gz

//切换到另1台测试机的界面(叫它测试机b),

//在测试机b的操作界面内,上传已经保存在本地的测试机a的结果文件到测试机b

  • #rz
  • 选择文件result01.csv.tar.gz,确认

//在测试机b的操作界面内,解压缩测试机a的结果文件

  • #tar –zxvf result01.csv.tar.gz

//在测试机b的操作界面内,合并结果集(此时体现了重新命名测试结果文件的意义)

//将测试机a的已重新命名的测试结果文件(原名是:result.csv,重新命名后的文件名:result01.csv)追加到测试机b的测试结果文件内,合并为1个文件以便计算测试结果

  • #cat result01.csv >> result.csv

//在测试机b的操作界面内,统计测试结果并且计算TPS

  • #wc -l result.csv
  • 服务器的总响应数目 / 脚本运行时间 = TPS

【NO.14】jmeter-处理结果的更多相关文章

  1. 转 14 jmeter性能测试实战--数据库MySQL

    14 jmeter性能测试实战--数据库MySQL   需求 测试用户表(对用户表select操作) 测试步骤 1.MySQL驱动下载并安装. 2.测试计划面板点击"浏览"按钮,将 ...

  2. 14.Jmeter聚合报告各项含义

    Aggregate Report 是 JMeter 常用的一个 Listener,中文为“聚合报告” Label:每个 JMeter 的 element(例如 HTTP Request)都有一个 Na ...

  3. 14 jmeter性能测试实战--数据库MySQL

    需求 测试用户表(对用户表select操作) 测试步骤 1.MySQL驱动下载并安装. 2.测试计划面板点击“浏览”按钮,将JDBC驱动(mysql-connector-java.jar)添加进来. ...

  4. 【jmeter】搭建持续集成接口测试平台(Jenkins+Ant+Jmeter)

    一.环境准备: 1.JDK:http://www.oracle.com/technetwork/java/javase/downloads/index.html 2.Jmeter:http://jme ...

  5. 搭建持续集成接口测试平台(jenkins+ant+jmeter)

    一.环境准备: 1.JDK:http://www.oracle.com/technetwork/java/javase/downloads/index.html 2.Jmeter:http://jme ...

  6. 使用JMeter进行RESTful API测试

    使用JMeter进行RESTful API测试 在哪里设置实现最优脚本重用的属性 由于支持云的应用程序通常可以轻松.快速地进行复制和部署,所以可以在多种环境中对其进行测试.如果您需要在多个环境中测试和 ...

  7. jmeter --- 搭建持续集成接口测试平台(Jenkins+Ant+Jmeter)

    jmeter --- 搭建持续集成接口测试平台(Jenkins+Ant+Jmeter) 一.环境准备: 1.JDK:http://www.oracle.com/technetwork/java/jav ...

  8. 转载:Jmeter教程索引

    摘自: 阳光温暖了心情 的 http://www.cnblogs.com/yangxia-test/category/431240.html 1 JMeter学习(一)工具简单介绍 2 JMeter学 ...

  9. Jmeter接口测试、性能测试详细介绍

    下面主要就是讲一下Jmeter工具的用法,用法非常简单,比起loadrunner不知道简单多少,并且开源免费~~ 1.接口简介 接口定义 接口: 就是数据交互的入口和出口,是一套标准规范. 接口(硬件 ...

  10. Jenkins操作手册 - 巨详细,一篇足矣!

    一.继续集成相关概念 1.1.什么是持续集成? 随着软件开发复杂度的不断提高,团队开发成员间如何更好的协同工作以确保软件开发的质量已经成为开发过程中不可回避的问题.尤其是近年来敏捷开发在软件领域越来越 ...

随机推荐

  1. web前段学习2017.6.13

    CSS---表现层,修饰和表现html文档,为了解决结构层和表现层分离的问题. 通过CSS极大的提高了工作效率,方便工作人员维护和管理CSS:层叠样式表,目前用的最广泛的css版本为css2,最新版本 ...

  2. HTTP通过请求和响应的交换达成通信

    1. 通过请求和响应的交换达成通信 首先我们来看一个HTTP请求报文: GET/index.htm HTTP/1.1 HOST : hacker.jp HTTP协议起始行开头的GET表示请求访问服务器 ...

  3. 第三章:3.3 post 请求

    1. 在 from表单中将 属性 methtod="post‘ 改变成post 2. 访问主页地址:http://localhost:8000/index 3. 以上出现的错误. 查资料发现 ...

  4. python编程快速上手之第5章实践项目参考答案

    #!/usr/bin/env python3.5 # coding:utf-8 # 5.6.1 # 好玩游戏的物品清单 # 给定一个字典,包含物品名称和数量,并打印出数量对应的物品 dict_stuf ...

  5. js验证身份证号码

    function IdentityCodeValid(code) { var city={11:"北京",12:"天津",13:"河北",1 ...

  6. 架构之路 之 Nginx实现负载均衡

    [前言] 在大型网站中,负载均衡是有想当必要的.尤其是在同一时间访问量比较大的大型网站,例如网上商城,新闻等CMS系统,为了减轻单个服务器的处理压力,我们引进了负载均衡这一个概念,将一个服务器的压力分 ...

  7. nopCommerce 3.9 大波浪系列 之 汉化-Roxy Fileman

    官网:http://www.roxyfileman.com/ 中文包:zh.json 1.将zh.json包拷贝到Nop.Admin项目中"Content\Roxy_Fileman\lang ...

  8. nodejs 搭建 RESTful API 服务器的常用包及其简介

    常用包 框架: yarn add express 数据库链接: yarn add sequelize yarn add mysql2 处理 favicon: yarn add serve-favico ...

  9. jenkins-APP打包页面展示二维码

    背景: 客户要求在APP打包页面展示二维码.虽然感觉这个功能很鸡肋,但是还是加上吧. 效果展示: 配置: 在上图中,106对应的内容是BuildName,我们可以通过build-name-setter ...

  10. struts2.0的工作原理?

    struts2并不是一个陌生的web框架,它是以Webwork的设计思想为核心,吸收struts1的优点,可以说 struts2是struts1和Webwork结合的产物. struts2 的工作原理 ...