摘要: 2019年 第6期《jmeter实战接口自动化+性能》课程,4月27号开学! 主讲老师:飞天小子 上课方式:QQ群视频在线教学 本期上课时间:4月27号-6月9号,每周六、周日晚上20:00-22:00 报名费:报名费999一人(周期1个半月) 联系QQ:1144890271 课程介绍: 每周六周日阅读全文
posted @ 2019-04-23 13:48 飞天小子 阅读(92) 评论(0) 编辑
摘要: Jmeter(一)_环境部署 Jmeter(二)_基础元件 Jmeter(三)_配置元件 Jmeter(四)_16个逻辑控制器 Jmeter(五)_24个函数 Jmeter(六)_前置处理器 Jmeter(七)_IF控制器+循环控制器+计数器控制接口分支 Jmeter(八)_JDBC请求 Jmete阅读全文
posted @ 2018-05-01 14:29 飞天小子 阅读(11584) 评论(4) 编辑
摘要: Jmeter可以通过WebDriver来完成UI自动化测试,也可以测试浏览器端对系统的压力,需要以下jiar包 基本配置 1:下载JMeterPlugins-WebDriver-1.3.1.zip,解压之后把lib目录下的所有jar文件和lib/ext目录下的JMeterPlugins-WebDri阅读全文
posted @ 2018-03-14 17:06 飞天小子 阅读(704) 评论(0) 编辑
摘要: 概述 jmeterGUI模式下,性能测试的结果往往误差很大,因为GUI本身就会消耗一部分资源。所以我们常常用命令行去跑性能脚本,得出结果 同时,jmeter在命令行下还可以生成多维度的测试报告,里面包含了常用的性能指标和监听器图表。 操作步骤 详见:JMeter(十四)-自动生成测试报告 注:如果想阅读全文
posted @ 2019-05-18 12:36 飞天小子 阅读(17) 评论(0) 编辑
摘要: 概述 今天做一个性能测试的案例。需求中给出并发人数和业务时间段。根据2,5,8原则,统计响应超时率 实际场景 1:登录--考勤打卡--退出 2:并发人数200人,业务持续时间5分钟 3:要求登录响应时间不能超过5s,考勤打卡时间不能超过2s,退出系统时间不能超过2s 3:要求计算出登录,考勤,退出系阅读全文
posted @ 2019-05-17 20:59 飞天小子 阅读(52) 评论(0) 编辑
摘要: 有时候,我们创建容器时忘了添加参数 --restart=always ,当 Docker 重启时,容器未能自动启动, 现在要添加该参数怎么办呢,方法有二: 1、Docker 命令修改 docker container update --restart=always 容器名字 2、直接改配置文件 首先阅读全文
posted @ 2019-05-12 12:32 飞天小子 阅读(50) 评论(0) 编辑
摘要: 背景 在使用 docker 运行容器时,默认的情况下,docker没有对容器进行硬件资源的限制,当一台主机上运行几百个容器,这些容器虽然互相隔离,但是底层却使用着相同的 CPU、内存和磁盘资源。如果不对容器使用的资源进行限制,那么容器之间会互相影响,小的来说会导致容器资源使用不公平;大的来说,可能会阅读全文
posted @ 2019-05-12 12:30 飞天小子 阅读(52) 评论(0) 编辑
摘要: 概述 今天用jmeter做一次参数化实战。通过计数器遍历参数表,然后查询jdbc进行beanshell断言。 涉及元件 用户参数,计数器,正则表达式,jdbc,beanshell脚本 详细过程 在我们的opms项目管理中,有一个项目状态的修正,四种状态分别为延期,挂起,进行,结束 在接口自动化案例中阅读全文
posted @ 2019-05-12 09:01 飞天小子 阅读(80) 评论(0) 编辑
摘要: 整理了一批jmeter常用的beanshell脚本供大家参考! 时间戳 下载文件 保存响应内容 断言 连接数据库 解析jsonlist 利用beanshell获取到json响应,然后通过JSONObject 和JSONArray 将数组解析,遍历数组的length之后,提取参数值 我们需要解析如下的阅读全文
posted @ 2019-05-10 06:33 飞天小子 阅读(142) 评论(0) 编辑
摘要: 概述 我们在用jmeter做性能测试的时候,有一些关键性的性能指标需要去分析。但是由于开源工具本身的局限性,这些指标在工具中的命名极易对我们造成混淆。所以我们需要对这些指标一一进行剖析。 指标分析 响应时间: 假设我们把响应时间分为如下几段: 用户通过客户端向服务端发出请求的时间为: T1服务端接收阅读全文
posted @ 2019-05-07 20:32 飞天小子 阅读(275) 评论(1) 编辑
摘要: 概述 我们在linux下,如果想要监控服务器性能。我们必须掌握以下常用的指标查看命令。 ps pstree top free vmstat sar ps ps命令能给出当前系统中进程的快照。下面我们列举几个常用的选项使用 -a 参数。-a 代表 all。同时加上x参数会显示没有控制终端的进程。ps 阅读全文
posted @ 2019-05-07 11:36 飞天小子 阅读(108) 评论(1) 编辑
摘要: 概述 用jmap -heap命令可以查看linux堆内存分布 具体用法 1:先查出tomcat的进程号 例如: 然后执行 jmap -heap 7095 可以打印出整体的堆信息 可以看到经过分配的存活区与eden比率=2:81)eden区:775M2)两个存活区大小:都为127M(存活区=space阅读全文
posted @ 2019-05-06 15:15 飞天小子 阅读(25) 评论(0) 编辑
摘要: 概述 今天给大家介绍一款开袋即食的性能监控工具,居家性能测试必备! tomcat监控工具:probe tomcat probe是一个开源的监控tomcat运行状态工具,可以实时查看项目运行的情况,监控内存,cpu,日志等等 部署安装 war包下载地址: https://pan.baidu.com/s阅读全文
posted @ 2019-05-06 06:40 飞天小子 阅读(44) 评论(0) 编辑
摘要: 内存泄漏、内存溢出是什么? 内存泄露是指你的应用使用资源之后没有及时释放,导致应用内存中持有了不需要的资源,这是一种状态描述; 内存溢出是指你应用的内存已经不能满足正常使用了,堆栈已经达到系统设置的最大值,进而导致崩溃,这事一种结果描述; 通常都是由于内存泄露导致堆栈内存不断增大,从而引发内存溢出。阅读全文
posted @ 2019-05-03 16:34 飞天小子 阅读(48) 评论(0) 编辑
摘要: 概述 在接口自动化的过程中,经常遇到需要遍历的参数组。jmeter在中,foreach控制器可以实现遍历参数,但是只能有一个入参。一旦遇到数组,foreach控制器表示我也无能为力。。。 为了解决这个问题,今天教大家一个实现数组遍历的方法 涉及元件 json表达式+循环控制器+计数器+matchNr阅读全文
posted @ 2019-05-03 16:17 飞天小子 阅读(95) 评论(0) 编辑
摘要: 今天教大家用元件组合,做一个网页图片爬虫。 需要用到的元件:循环控制器+计数器+xpath提前器+函数嵌套+beanshell代码 首先我们确定一下要爬取的图片网站:https://dp.pconline.com.cn/list/all_t5.html 通过F12观察一下他的html代码,发现这些图阅读全文
posted @ 2019-05-01 22:34 飞天小子 阅读(95) 评论(0) 编辑
摘要: 2019年 第6期《jmeter实战接口自动化+性能》课程,4月27号开学! 主讲老师:飞天小子 上课方式:QQ群视频在线教学 本期上课时间:4月27号-6月9号,每周六、周日晚上20:00-22:00 报名费:报名费999一人(周期1个半月) 联系QQ:1144890271 课程介绍: 每周六周日阅读全文
posted @ 2019-04-23 13:48 飞天小子 阅读(92) 评论(0) 编辑
摘要: 我们在性能测试过程中,首先应该去设计测试场景,模拟真实业务发生的情境,然后针对这些场景去设计测试脚本。为了暴露出性能问题,要尽可能的去模拟被测对象可能存在瓶颈的测试场景。 我在本地部署了一个项目,可以用来模拟考勤打卡 性能测试之前我们要设计一下场景: 业务流程: 打卡首页--点击登录--跳转项目--阅读全文
posted @ 2019-04-21 11:02 飞天小子 阅读(398) 评论(2) 编辑
摘要: 我们在做接口断言的时候,如果遇到复杂的json,可以考虑用beanshell脚本去解析list,同时加入自定义的断言 Mock例:https://www.easy-mock.com/mock/5cb46739edfdac7de69fe792/example/provider 如图所示,我们在json阅读全文
posted @ 2019-04-19 19:51 飞天小子 阅读(123) 评论(0) 编辑
摘要: 本书可以作为工具书,也可以作为jmeter疑难杂症的良方!各位同学在jmeter学习中遇到的常见难题,在本文中都可以检索到答案。 大纲如下: ☞点击这里,获取本书阅读全文
posted @ 2019-04-06 06:12 飞天小子 阅读(101) 评论(0) 编辑
摘要: 最近在课堂上,有很多同学反映在搭建环境的时候,虚拟机ip经常变,那么我们配置好的web服务可能就不能用了。下面讲一下如何在ubuntu上面设置静态ip 1:首先我们确认一下ubuntu的版本 cat /etc/issue 或者 sudo lsb_release -a或者 uname -a 我这里是u阅读全文
posted @ 2019-03-30 08:23 飞天小子 阅读(62) 评论(0) 编辑
摘要: 测试人员如何安然度过互联网寒冬? 这个冬天阴冷阴冷的,不管是在工作上还是在生活上都很冷,但是生活还是要继续,在每个寒冷的早晨,不管再怎么赖床终究还是要挣扎着起来。 互联网寒潮来了,裁员这个词好像严寒中的北风,刮的人瑟瑟发抖,但是冬天总会过去,春天终会到来 如何在严寒过后,让自己有一个明媚的春天? 个阅读全文
posted @ 2019-02-17 10:13 飞天小子 阅读(441) 评论(0) 编辑
摘要: 在jmeter中,可以使用SSH协议连接主机进行相关操作, 步骤如下 首先添加一个ssh command 我们的测试交流群:317765580 在command中填写远程连接的必要信息 结果树中可以看到linux命令执行的结果 然而在实际测试中,不能确定我们的的机器能够正常连接。这里就要用到whil阅读全文
posted @ 2019-02-16 20:51 飞天小子 阅读(203) 评论(0) 编辑
摘要: 我们在做接口自动化的时候,常常因为无法灵活的的校验接口字段而烦恼。不能自动校验接口字段的脚本,也就不能称之为接口自动化。因此,我设计了一套组合式的控制器,可以完美的解决这个问题 1:首先我们需要在本地建一个异常字段校验的字符集 比如我这里写了五个校验,分别是最大值,最小值,中文,为空,特殊字符 测试阅读全文
posted @ 2018-12-25 22:35 飞天小子 阅读(465) 评论(0) 编辑
摘要: 顾名思义,jmeter在做性能测试时,可以在不停止脚本的情况下修改负载压力,达到期望的测试效果。我们将通过Constant Throughput Timer(吞吐量计时器)和Beanshell服务器来组合完成。 1:在jmeter中添加Constant Throughput Timer。我们将通过设阅读全文
posted @ 2018-12-15 09:12 飞天小子 阅读(328) 评论(0) 编辑
摘要: jmeter分布式简单步骤说明: 1:添加远程服务器IP到配置文件 在JMETER_HOME / bin / jmeter.properties中,找到名为“ remote_hosts ” 的属性,并添加正在运行的JMeter服务器的IP地址的值。可以添加多个此类服务器,以逗号分隔 2:重启jmet阅读全文
posted @ 2018-11-23 14:46 飞天小子 阅读(381) 评论(0) 编辑
摘要: Jmeter实现了一个网站文章的爬虫,可以把所有文章分类保存到本地文件中,并以文章标题命名 它原理就是对网页提交一个请求,然后把返回的所有值提取出来,利用ForEach控制器去实现遍历。下面来介绍一下如何操作。 首先我们需要对网页提交一个请求。我们对一个站点发起一个请求,观察一下返回值可以发现中间有阅读全文
posted @ 2018-11-09 21:22 飞天小子 阅读(790) 评论(3) 编辑
摘要: 1:前置条件 将fastjson-1.2.49.jar包置于jmeter的lib目录下,并将该jar包添加到测试计划的Library中;否则会报:Typed variable declaration : Class: JSONObject not found in namespace的错误 2:解析阅读全文
posted @ 2018-09-03 11:33 飞天小子 阅读(1820) 评论(0) 编辑
摘要: 我们在用jmeter做接口测试的时候,有的时候会遇到一些复杂的json响应。比如多层list嵌套时的取值 一个简单的例子: $..Name:列出所有省份 $..Province[0].Name 提取Province中第一个list中的Name $..[?(@.Name=='Beijing')] 筛选阅读全文
posted @ 2018-08-31 21:56 飞天小子 阅读(392) 评论(0) 编辑
摘要: 我们在学习接口自动化的时候,最理想的状态是在公司有项目可以操作。大部分时候我们并没有可以练习的项目,因此练习接口无从谈起,只能找一些开放的api来练一练,但是这样并不能提高我们的技术。因此我们需要搭建一套自己的接口环境 需要的资源: vm虚拟机:https://pan.baidu.com/s/1Gz阅读全文
posted @ 2018-08-16 15:53 飞天小子 阅读(1028) 评论(0) 编辑
摘要: 这种数据驱动的本质是:将测试的case,参数,url,预期结果,存储于本地excel中。运行脚本时,从文件中获取预期结果,将实际结果与预期结果比较,将实际结果,比较结果,响应状态码回写excel。 一:主干业务处理 1:需要的jar包 Apache POI 3.17 Apache POI-OOXML阅读全文
posted @ 2018-05-31 14:52 飞天小子 阅读(1306) 评论(0) 编辑
摘要: 今天学习一下TimeShift函数在JSR223中的使用方法。 关联之前的一篇时间戳文章:Jmeter(十二)_打印时间戳 首先,创建线程组,在线程组下面创建一个JSR223采样器 选择Groovy语言 在JSR223采样器中,添加下面的代码 log.info("Next year: " + "${阅读全文
posted @ 2018-05-30 11:47 飞天小子 阅读(1359) 评论(1) 编辑
摘要: 这里使用的服务名为Bookshelf,在github上,自行下载。要运行此服务,需要.Net Core SDK 2.1或更高版本。如果尚未安装,从.Net Core官方网站下载并安装。 在本地克隆项目后,在命令行工具中打开项目文件夹并运行“dotnet run”以启动相应的服务 可以看到端口是500阅读全文
posted @ 2018-05-30 09:49 飞天小子 阅读(269) 评论(1) 编辑
摘要: 1:基础容器编译部署apache 1.1:pull一个ubuntu 16.04的镜像 sudo docker pull ubuntu:16.04 1.2:运行容器 sudo docker run -d --name ubuntu -p 80:80 ubuntu:16.04 1.3:安装ubuntu依阅读全文
posted @ 2018-05-25 14:31 飞天小子 阅读(237) 评论(0) 编辑
摘要: Docker部署接口自动化持续集成环境最后一步,邮件发送报告! 接上文 jenkins配置gitlab插件与ant插件 1:配置报告插件 我们先装一个Report插件,在系统管理-管理插件中找 HTML Publisher plugin 插件并安装 返回到项目中,在配置里面添加一个构建后的操作 填写阅读全文
posted @ 2018-05-17 11:12 飞天小子 阅读(531) 评论(0) 编辑
摘要: 这套接口自动化持续集成环境已经部署差不多了,现在说说我的设计思路 1:利用Docker容器化Gitlab,Jenkins,Jmeter,Ant,链接如下 Docker_容器化gitlab Docker_容器化jenkins Ubuntu部署jmeter与ant 2:将本地脚本上传到Gitlab远程仓阅读全文
posted @ 2018-05-15 22:03 飞天小子 阅读(1081) 评论(0) 编辑
摘要: Docker部署接口自动化持续集成环境第四步,代码上传到远程仓库! 接上文:脚本上传Gitlab 服务器中的Jenkins通过Gitlab插件读取远程Git远程仓库中的代码,然后通过ant插件进行构建 1:Gitlab插件的配置 新建一个项目 丢弃旧的构建 配置Git的用户名密码 2:ant插件配置阅读全文
posted @ 2018-05-15 21:15 飞天小子 阅读(439) 评论(0) 编辑
摘要: Docker部署接口自动化持续集成环境第四步,代码上传到远程仓库! 接上文:Ubuntu部署jmeter与ant Gitlab在容器中部署好了之后,本地直接打开。我们可以在里面创建项目,上传脚本。 新建一个项目,用来做远程脚本仓库 点击设置,将本地密钥与gitlab进行配对 本地新建一个仓库,然后右阅读全文
posted @ 2018-05-15 20:53 飞天小子 阅读(350) 评论(0) 编辑
摘要: 利用Jmeter-BeanShell PostProcessor可以提取响应结果并保存到本地文件,这种操作在jmeter做爬虫时非常有用,可以帮助你迅速的获取想要的内容到本地文件! 1:在本地新建一个csv文件,新建一个BeanShell PostProcessor后置处理器 QQ群:3177655阅读全文
posted @ 2018-05-08 14:56 飞天小子 阅读(1728) 评论(0) 编辑
摘要: 花了一点时间做了一个通用的执行引擎,好处就是我不用再关注测试脚本的内容,而是用测试用例的数据去驱动我们执行的方向。(这个只适合单个接口的测试,具体运用到接口自动化时,还是要靠手动去编写脚本!) 首先我们要有一个接口测试用例存放的地方,我们这里用EXCEL模板管理,里面包含用例编号、入参、优先级、请求阅读全文
posted @ 2018-05-08 09:43 飞天小子 阅读(962) 评论(1) 编辑
摘要: 花了一下午整理出了常用的且比较实用的网站,以及一些收藏的资源,希望对大家有帮助! 常用技术资料 Python中文开发者社区 Python中文官方文档 开源中国社区 Python机器学习 jmeter插件地址 在线工具库 linux命令查询 安卓SDK 测试论坛/网站 测试教程网 51testing 阅读全文
posted @ 2018-05-05 17:15 飞天小子 阅读(2087) 评论(5) 编辑
摘要: 在Jmeter中,除了正则表达式可以用作关联,还有一种方式也可以做关联,那就是 XPath Extractor。它是利用xpath提取出关键信息,传递变量。 具体用法 添加一个后置处理器-XPath Extractor 实际操作 以腾讯新闻网为例,我们做一次演练。对腾讯新闻网我们发起一次请求,观察结阅读全文
posted @ 2018-05-02 18:12 飞天小子 阅读(571) 评论(0) 编辑
摘要: 下载插件 1、访问网址http://jmeter-plugins.org/downloads/all/,下载三个文件。其中JMeterPlugins-Standard和JMeterPlugins-Extras是客户端的,ServerAgent是服务端的。 前两个是jmeter扩展插件,解压后将jar阅读全文
posted @ 2018-05-02 10:49 飞天小子 阅读(606) 评论(0) 编辑