摘要: 2019年 第7期《jmeter实战接口自动化+性能》课程,6月22号开学! 主讲老师:飞天小子 上课方式:QQ群视频在线教学 本期上课时间:6月22号-8月11号,每周六、周日晚上20:00-22:00 报名费:报名费1299一人(周期2个月) 联系QQ:1144890271 课程介绍: 每周六周阅读全文
posted @ 2019-06-04 19:17 飞天小子 阅读(772) 评论(0) 编辑
摘要: 重磅!十年测试之路的笔记分享 点击获取《jmeter接口自动化与性能实战-飞天小子.pdf》 微信公众号搜索 测试驿栈,回复mock,会下发mock接口让各位练习 性能测试系列 性能测试之动态负载 负载测试实战 jvm堆内存分析 常用性能指标分析 性能测试统计超时率 动态线程分析HTML测试报告 j阅读全文
posted @ 2018-05-01 14:29 飞天小子 阅读(18255) 评论(5) 编辑
摘要: 概述 近期帮朋友解决了一个浮点时间戳转换的问题,在这里记录一下。 具体场景是有一个十位浮点时间戳的list,需要遍历转换为当前的标准时间。 list如下: 实现步骤 实现步骤其实很简单,只需要一个foreach控制器,和一段转换时间戳的代码 第一步把时间戳提取出来 第二步把提取的时间戳传入forea阅读全文
posted @ 2019-07-21 06:18 飞天小子 阅读(88) 评论(0) 编辑
摘要: 概述 今天看到一篇文章讲解VU、RPS、RT,中间有一个公式如下图 点击查看原文链接 并发数 = RPS * 响应时间 于是我在本地做了几次实验,试图验证一下公式的准确性 实验网站 www.baidu.com 第一次实验 100线程,一次迭代,启动时间1s,线程组和聚合报告如图所示 从结果可以看出,阅读全文
posted @ 2019-07-19 12:41 飞天小子 阅读(188) 评论(0) 编辑
摘要: 目录结构 一、Sitespeed.io概述 1.Sitespeed.io简介 2.Sitespeed.io使用场景 二、Sitespeed.io的安装和使用 1.安装Sitespeed.io 2.连接Docker,驱动浏览器进行Web性能测试 1)连接Docker 2)驱动浏览器进行测试 3)测试报阅读全文
posted @ 2019-07-18 15:47 飞天小子 阅读(61) 评论(0) 编辑
摘要: 框架 功能点 批量导入har包生成接口用例 接口用例分组树形展示 用例编辑失焦自动保存 用例编写提供快捷调试模块 支持多类型参数,json+文本两种校验 支持同一个项目中接口参数传递 提供即时任务+每日定时任务两种任务集 全局cookie管理,全局默认参数,全局请求头设置 可编排的用例执行顺序 测试阅读全文
posted @ 2019-07-18 15:44 飞天小子 阅读(89) 评论(0) 编辑
摘要: 项目主页 https://github.com/soimort/you-get 使用you-get库一些简单命令下载视频音乐 you-get是一个基于python3的下载器,没有客户端或者可视化工具,它是在cmd中通过命令行运行的。 1.you-get的安装与升级 因为you-get是基于pytho阅读全文
posted @ 2019-07-18 15:41 飞天小子 阅读(25) 评论(0) 编辑
摘要: 文末有福利 前言 做测试已经快十年了,夜深人静的时候常常在想,这些年到底做了些什么?想来想去,发现只有那些过往的学习笔记才能证明自己这些年一直在努力。 说起学习这件事,似乎也是一个笑话。 那些年苦练uft自动化和vbs编程,玩到失联,一抬头发现早已过时; 那些年因为公司用python自动化项目,不分阅读全文
posted @ 2019-07-16 23:07 飞天小子 阅读(371) 评论(0) 编辑
摘要: 简述性能测试流程? 1.分析性能需求。挑选用户使用最频繁的场景来测试,比如:登陆,搜索,下单等等。确定性能指标,比如:事务通过率为100%,TOP99%是5秒,最大并发用户为1000人,CPU和内存的使用率在70%以下 2.制定性能测试计划,明确测试时间(通常在功能稳定后,如第一轮测试后进行)和测试阅读全文
posted @ 2019-07-11 20:11 飞天小子 阅读(392) 评论(1) 编辑
摘要: 概述 我们用jmeter做性能测试,必然需要学会分析测试报告。但是初学者常常因为对概念的不清晰,最后被测试报告带到沟里去。 常见的误区 分析响应时间全用平均值 响应时间不和吞吐量挂钩 响应时间和吞吐量不和成功率挂钩 。。。。。 平均值特别不靠谱 平均值为什么不靠谱?相信大家读新闻的时候经常可以看到,阅读全文
posted @ 2019-07-08 17:03 飞天小子 阅读(392) 评论(0) 编辑
摘要: 概述 尖峰测试(Spike testing)在性能测试中属于压力测试的一个子集。指的是在某一瞬间或者多个频次下用户数和压力陡然增加的场景。 为了验证我们的网站在访问用户急剧增加的情况下,或者短时间内反复急剧增加工作负载时能否正常工作;以及程序能否从高负荷中恢复并正常工作时常常用到这种测试手法。 Sp阅读全文
posted @ 2019-06-30 11:03 飞天小子 阅读(370) 评论(2) 编辑
摘要: 概述 大部分新手在用jmeter做压力测试的时候,对一些性能术语十分模糊,直接导致的后果就是对测试出来的结果数据根本不能理解,更谈不上分析了。今天的文章就着重给大家解释一下压力测试中的一些专有名词 问题1:什么是压力测试 问到如何做压力测试,很多人可能只会回答:"加线程组,加并发,看结果"。那么什么阅读全文
posted @ 2019-06-16 21:12 飞天小子 阅读(845) 评论(1) 编辑
摘要: 性能测试的概念&意义 概念:通过技术的手段模拟大量用户同时访问被测应用,观察、记录和分析系统的各项性能指标的过程。 目标:评估系统的性能瓶颈,预测系统的最大用户负载能力 性能测试的意义: 1)能够有效评估系统的性能指标,用于系统的性能评估2)能够识别系统的性能瓶颈,协助性能调优3)能够指导突发流量承阅读全文
posted @ 2019-06-15 18:45 飞天小子 阅读(177) 评论(0) 编辑
摘要: Jmeter作为开源测试工具,以其轻便,功能齐全的优点,正越来越受到企业的重视。作为纯java的工具,它的扩展性无比强大,既可以做功能测试,也可以做性能测试;既支持接口层面的测试,也支持webdriver驱动浏览器做ui测试。它支持各种协议,各种数据库,甚至于大数据,MQ这些前沿技术也被加入了进来。阅读全文
posted @ 2019-06-09 07:22 飞天小子 阅读(780) 评论(0) 编辑
摘要: 2019年 第7期《jmeter实战接口自动化+性能》课程,6月22号开学! 主讲老师:飞天小子 上课方式:QQ群视频在线教学 本期上课时间:6月22号-8月11号,每周六、周日晚上20:00-22:00 报名费:报名费1299一人(周期2个月) 联系QQ:1144890271 课程介绍: 每周六周阅读全文
posted @ 2019-06-04 19:17 飞天小子 阅读(772) 评论(0) 编辑
摘要: 问题描述: 最近在测试环境的服务器上,无意中发现cpu持续飙高。最高的时候达到了200%经过反复重启无效之后,决定挖掘深层次的原因 通过top命令打印出消耗cpu的pid,如图 通过ps -mp 24597 -o THREAD,tid,time,找出进程中cpu占用率最高的tid 通过 jstack阅读全文
posted @ 2019-06-04 15:43 飞天小子 阅读(306) 评论(0) 编辑
摘要: 概述 性能测试过程中,对服务器资源的监控是必不可少的。这里的资源又分了两块,windows和linux linux下监控资源 访问网址http://jmeter-plugins.org/downloads/all/,下载三个文件。其中JMeterPlugins-Standard和JMeterPlug阅读全文
posted @ 2019-05-29 18:48 飞天小子 阅读(493) 评论(0) 编辑
摘要: 性能测试到底是什么 这个简单的问题很多朋友都无法完整的回答。可能知道的朋友会说性能测试就是用LoadRunner或者Jmeter工具来压测系统,也有人会说性能测试就是同时让很多人访问系统看系统能否扛得住。这些回答只能说对,但不够全面也不够深刻,只是把表象描述了一下而已。其实真正的性能测试无法用一两句阅读全文
posted @ 2019-05-29 16:49 飞天小子 阅读(331) 评论(1) 编辑
摘要: 概述 我们在做性能测试的时候,不同的视角看到的结果都不一样。 例如响应时间 用户通过客户端向服务端发出请求的时间为: T1服务端接收到请求,处理该请求的时间为:T2服务端返回数据给客户端时间为: T3客户端接收到响应数据,处理数据呈现给用户时间为:T4 从系统视角来看:系统的响应时间Ts= T1+T阅读全文
posted @ 2019-05-27 12:42 飞天小子 阅读(548) 评论(0) 编辑
摘要: 概述 jmeter中提供了很多性能数据的监听器,我们通过监听器可以来分析性能瓶颈 本文以500线程的阶梯加压测试结果来描述图表。 常用监听器 1:Transactions per Second 监听动态TPS,用来分析吞吐量。其中横坐标是运行时间,纵坐标是TPS值。红色表示通过的TPS,绿色表示失败阅读全文
posted @ 2019-05-26 10:17 飞天小子 阅读(444) 评论(0) 编辑
摘要: 概述 jmeterGUI模式下,性能测试的结果往往误差很大,因为GUI本身就会消耗一部分资源。所以我们常常用命令行去跑性能脚本,得出结果 同时,jmeter在命令行下还可以生成多维度的测试报告,里面包含了常用的性能指标和监听器图表。 操作步骤 详见:JMeter(十四)-自动生成测试报告 注:如果想阅读全文
posted @ 2019-05-18 12:36 飞天小子 阅读(184) 评论(0) 编辑
摘要: 概述 今天做一个性能测试的案例。需求中给出并发人数和业务时间段。根据2,5,8原则,统计响应超时率 实际场景 1:登录--考勤打卡--退出 2:并发人数200人,业务持续时间5分钟 3:要求登录响应时间不能超过5s,考勤打卡时间不能超过2s,退出系统时间不能超过2s 3:要求计算出登录,考勤,退出系阅读全文
posted @ 2019-05-17 20:59 飞天小子 阅读(272) 评论(0) 编辑
摘要: 有时候,我们创建容器时忘了添加参数 --restart=always ,当 Docker 重启时,容器未能自动启动, 现在要添加该参数怎么办呢,方法有二: 1、Docker 命令修改 docker container update --restart=always 容器名字 2、直接改配置文件 首先阅读全文
posted @ 2019-05-12 12:32 飞天小子 阅读(616) 评论(0) 编辑
摘要: 背景 在使用 docker 运行容器时,默认的情况下,docker没有对容器进行硬件资源的限制,当一台主机上运行几百个容器,这些容器虽然互相隔离,但是底层却使用着相同的 CPU、内存和磁盘资源。如果不对容器使用的资源进行限制,那么容器之间会互相影响,小的来说会导致容器资源使用不公平;大的来说,可能会阅读全文
posted @ 2019-05-12 12:30 飞天小子 阅读(131) 评论(0) 编辑
摘要: 概述 今天用jmeter做一次参数化实战。通过计数器遍历参数表,然后查询jdbc进行beanshell断言。 涉及元件 用户参数,计数器,正则表达式,jdbc,beanshell脚本 详细过程 在我们的opms项目管理中,有一个项目状态的修正,四种状态分别为延期,挂起,进行,结束 在接口自动化案例中阅读全文
posted @ 2019-05-12 09:01 飞天小子 阅读(310) 评论(0) 编辑
摘要: 整理了一批jmeter常用的beanshell脚本供大家参考! 时间戳 下载文件 保存响应内容 断言 连接数据库 浮点时间戳转换为标准时间 解析jsonlist 利用beanshell获取到json响应,然后通过JSONObject 和JSONArray 将数组解析,遍历数组的length之后,提取阅读全文
posted @ 2019-05-10 06:33 飞天小子 阅读(508) 评论(0) 编辑
摘要: 概述 我们在用jmeter做性能测试的时候,有一些关键性的性能指标需要去分析。但是由于开源工具本身的局限性,这些指标在工具中的命名极易对我们造成混淆。所以我们需要对这些指标一一进行剖析。 指标分析 响应时间: 假设我们把响应时间分为如下几段: 用户通过客户端向服务端发出请求的时间为: T1服务端接收阅读全文
posted @ 2019-05-07 20:32 飞天小子 阅读(554) 评论(1) 编辑
摘要: 概述 我们在linux下,如果想要监控服务器性能。我们必须掌握以下常用的指标查看命令。 ps pstree top free vmstat sar ps ps命令能给出当前系统中进程的快照。下面我们列举几个常用的选项使用 -a 参数。-a 代表 all。同时加上x参数会显示没有控制终端的进程。ps 阅读全文
posted @ 2019-05-07 11:36 飞天小子 阅读(215) 评论(1) 编辑
摘要: 概述 用jmap -heap命令可以查看linux堆内存分布 具体用法 1:先查出tomcat的进程号 例如: 然后执行 jmap -heap 7095 可以打印出整体的堆信息 可以看到经过分配的存活区与eden比率=2:81)eden区:775M2)两个存活区大小:都为127M(存活区=space阅读全文
posted @ 2019-05-06 15:15 飞天小子 阅读(115) 评论(0) 编辑
摘要: 概述 今天给大家介绍一款开袋即食的性能监控工具,居家性能测试必备! tomcat监控工具:probe tomcat probe是一个开源的监控tomcat运行状态工具,可以实时查看项目运行的情况,监控内存,cpu,日志等等 部署安装 war包下载地址: https://pan.baidu.com/s阅读全文
posted @ 2019-05-06 06:40 飞天小子 阅读(110) 评论(0) 编辑
摘要: 内存泄漏、内存溢出是什么? 内存泄露是指你的应用使用资源之后没有及时释放,导致应用内存中持有了不需要的资源,这是一种状态描述; 内存溢出是指你应用的内存已经不能满足正常使用了,堆栈已经达到系统设置的最大值,进而导致崩溃,这事一种结果描述; 通常都是由于内存泄露导致堆栈内存不断增大,从而引发内存溢出。阅读全文
posted @ 2019-05-03 16:34 飞天小子 阅读(311) 评论(0) 编辑
摘要: 概述 在接口自动化的过程中,经常遇到需要遍历的参数组。jmeter在中,foreach控制器可以实现遍历参数,但是只能有一个入参。一旦遇到数组,foreach控制器表示我也无能为力。。。 为了解决这个问题,今天教大家一个实现数组遍历的方法 涉及元件 json表达式+循环控制器+计数器+matchNr阅读全文
posted @ 2019-05-03 16:17 飞天小子 阅读(251) 评论(0) 编辑
摘要: 今天教大家用元件组合,做一个网页图片爬虫。 需要用到的元件:循环控制器+计数器+xpath提前器+函数嵌套+beanshell代码 首先我们确定一下要爬取的图片网站:https://dp.pconline.com.cn/list/all_t5.html 通过F12观察一下他的html代码,发现这些图阅读全文
posted @ 2019-05-01 22:34 飞天小子 阅读(241) 评论(0) 编辑
摘要: 我们在性能测试过程中,首先应该去设计测试场景,模拟真实业务发生的情境,然后针对这些场景去设计测试脚本。为了暴露出性能问题,要尽可能的去模拟被测对象可能存在瓶颈的测试场景。 我在本地部署了一个项目,可以用来模拟考勤打卡 性能测试之前我们要设计一下场景: 业务流程: 打卡首页--点击登录--跳转项目--阅读全文
posted @ 2019-04-21 11:02 飞天小子 阅读(795) 评论(2) 编辑
摘要: 我们在做接口断言的时候,如果遇到复杂的json,可以考虑用beanshell脚本去解析list,同时加入自定义的断言 Mock例:https://www.easy-mock.com/mock/5cb46739edfdac7de69fe792/example/provider 如图所示,我们在json阅读全文
posted @ 2019-04-19 19:51 飞天小子 阅读(294) 评论(0) 编辑
摘要: 本书可以作为工具书,也可以作为jmeter疑难杂症的良方!各位同学在jmeter学习中遇到的常见难题,在本文中都可以检索到答案。 大纲如下: ☞点击这里,获取本书阅读全文
posted @ 2019-04-06 06:12 飞天小子 阅读(195) 评论(0) 编辑
摘要: 最近在课堂上,有很多同学反映在搭建环境的时候,虚拟机ip经常变,那么我们配置好的web服务可能就不能用了。下面讲一下如何在ubuntu上面设置静态ip 1:首先我们确认一下ubuntu的版本 cat /etc/issue 或者 sudo lsb_release -a或者 uname -a 我这里是u阅读全文
posted @ 2019-03-30 08:23 飞天小子 阅读(87) 评论(0) 编辑
摘要: 测试人员如何安然度过互联网寒冬? 这个冬天阴冷阴冷的,不管是在工作上还是在生活上都很冷,但是生活还是要继续,在每个寒冷的早晨,不管再怎么赖床终究还是要挣扎着起来。 互联网寒潮来了,裁员这个词好像严寒中的北风,刮的人瑟瑟发抖,但是冬天总会过去,春天终会到来 如何在严寒过后,让自己有一个明媚的春天? 个阅读全文
posted @ 2019-02-17 10:13 飞天小子 阅读(514) 评论(0) 编辑
摘要: 在jmeter中,可以使用SSH协议连接主机进行相关操作, 步骤如下 首先添加一个ssh command 我们的测试交流群:317765580 在command中填写远程连接的必要信息 结果树中可以看到linux命令执行的结果 然而在实际测试中,不能确定我们的的机器能够正常连接。这里就要用到whil阅读全文
posted @ 2019-02-16 20:51 飞天小子 阅读(343) 评论(0) 编辑
摘要: 我们在做接口自动化的时候,常常因为无法灵活的的校验接口字段而烦恼。不能自动校验接口字段的脚本,也就不能称之为接口自动化。因此,我设计了一套组合式的控制器,可以完美的解决这个问题 1:首先我们需要在本地建一个异常字段校验的字符集 比如我这里写了五个校验,分别是最大值,最小值,中文,为空,特殊字符 测试阅读全文
posted @ 2018-12-25 22:35 飞天小子 阅读(701) 评论(0) 编辑
摘要: 顾名思义,jmeter在做性能测试时,可以在不停止脚本的情况下修改负载压力,达到期望的测试效果。我们将通过Constant Throughput Timer(吞吐量计时器)和Beanshell服务器来组合完成。 1:在jmeter中添加Constant Throughput Timer。我们将通过设阅读全文
posted @ 2018-12-15 09:12 飞天小子 阅读(583) 评论(0) 编辑
摘要: jmeter分布式简单步骤说明: 1:添加远程服务器IP到配置文件 在JMETER_HOME / bin / jmeter.properties中,找到名为“ remote_hosts ” 的属性,并添加正在运行的JMeter服务器的IP地址的值。可以添加多个此类服务器,以逗号分隔 2:重启jmet阅读全文
posted @ 2018-11-23 14:46 飞天小子 阅读(499) 评论(0) 编辑