前段时间做了一次参数需要签名的接口性能测试,有文为证:线程安全类在性能测试中应用。在处理测试结果时候遇到一个问题:因为本机签名耗时较多,10ms级别,并发情况能达到100ms级别。所以进行数据校验尤为重要。自研的性能测试框架:性能测试框架第三版。
接口性能是做接口性能测试过程中使用的测试策略以及Groovy脚本实现,以及性能测试工具的实现,如timewatch和netdata汉化,欢迎关注“FunTester”。
假设通过性能测试需求分析,我们需要创建一个性能测试场景,并发500个web虚拟用户,这时我们需要考虑: 1)选用什么样软硬件配置的的机器作为测试机? 2)500个并发用户需要多少台测试机才够用? 在性能测试执行之前,一定要把上面的问题搞清楚,主要是为了避免将来性能测试执行时瓶颈出现在客户端,客户端承载了太多的压力,而没有真正的提交到服务器上去。这种情况下,我们会看到客户端CPU利用率居高不下,响应速度十分缓慢,甚至出现宕机的情形。 实际上,针对特定的性能测试需求,建立多大规模的性能测试机群才算合理,与多
以下测试项目列表,为20191007版本的项目列表!测试内容随时可能发生变化,以实际版本为准!
在 Jmeter 入门系列中相信大家对工具使用已经没问题,今天开起性能测试进阶系列之 jvisualvm 工具简单学习,目标是通过演示 jvisualvm 工具定位代码,帮助性能测试工程师直接定位代码位置,协助开发解决性能问题;
性能测试中,稳定性测试是必不可少的,最主要目的是为了发现程序崩溃问题,关键在测试设计过程中依据代码逻辑分析直接或间接使用的参数,构造各种异常case;例:
最近对一个golang的server项目做了性能测试,针对发现的问题做了简单的总结,供大家参考
本人在使用java和groovy混合编程时,发现一个问题,当java和groovy相互调用的过程中在本机执行没有任何问题,但当弄到Jenkins上之后总是报错,本机使用gradle执行build的task的时候,也是报错,信息如下:
我自己并不用JMeter进行压测,故事的缘起是因为看到了同事适用JMeter进行测试的测试报告,偶然间发现一个问题,JMeter报告中的吞吐量误差较大。结果如图:
前段时间公司的新项目上线了一段时间之后,随着运营规模的变大,老大要求对系统进行一个摸底,那么肯定有人要为这个伟大的工作献身了,是的,那个人就是我。谁让我是就是打杂的呢。消消气好了,毕竟代码只是副业。
在使用JMeter进行压测时,当被测接口需要很高的并发量,或者有些接口访问数很高的时候,Linux网络相关的内核参数需要根据实际服务进行调整,从而导致本地端口被占满,出现请求报错的情况。此时,本机的一些TCP配置、本机性能峰值就可能是性能测试的瓶颈点。 因此,本文梳理了基于JMeter的分布式压测环境的搭建方法,并能够满足参数化的需求。
在日常的工作中我们经常会用到各种各样的moco框架,我选用的就是二次开发moco API,增加了一些新功能也做了一些封装。感觉自己用起来还是非常舒服的,几分钟可以构建一个简单的测试服务,用来测试性能框架各种功能。
之前写了两篇文章分享自己对几种性能测试框架的测试:性能测试框架对比初探、性能框架哪家强—JMeter、K6、locust、FunTester横向对比。
性能测试工作中,经常有同学要使用PerfMon内部插件对压测资源进行监控,本文简单介绍下该插件如何使用 一、安装PerfMon插件 1. 启动jmeter,进入选项》Plugins Manager
但是,接口测试、自动化测试脚本,不能直接用于性能测试,需要进行性能转换,才能用于性能测试。
这个相对隐蔽,因为需要用到加锁的资源的测试场景一般都相对复杂,而且有一些比较简单的方式可以在运行前数据准备阶段将这部分工作风险化解掉。
之前写过了- 通用池化框架commons-pool2实践以及通用池化框架实践之GenericKeyedObjectPool。接下来我就对这个池化框架进行性能测试。首先呢就是因为这个池化技术必需要有足够的性能,不然通过池化技术优化的部分,在较高QPS的性能测试中,对象池可能成为本机瓶颈。
2020年,我写了一篇文章记录测试工程师自我提升的几个方面的文章2020年Tester自我提升,这马上年底了,到了收获的时候,下面我自己总结一下2020年在这些需要提升的方面的一些成果。
在去年年初换过工作开始专注做性能测试,其中有一项很大的挑战就是FunTester测试框架性能是否可以支撑公司现在的业务。之前有文章分享过如何突破职业瓶颈,其中讲到如何负责服务的QPS上升一个数量级是一个非常大的挑战。最近在这个问题上,我有了一些新的发现,分享一下自己对FunTester测试框架使用的Java+Groovy这对组合性能方面的认识。
前言 在使用jmeter进行性能测试实践时,必须要注意jmeter的一些局限性,充分使用jmeter优势功能,这样才能更好的发挥出jmeter的能力。 要注意限制线程数 使用代理服务器 使用变量 减少不必要的资源需求 检查jmeter日志 清除CSV Data Set Config中的本地路径(用相对路径) 遵循统一的命名规范 jmeter是有其局限性的,特别是其分布式运行环境时,所以需要注意其局限性,以便更灵活的应用jmeter进行性能测试。 限制线程数 一般情况下,建议限制jmeter的的线程数在3
因业务需要,需要将redis换成ssdb,我们需要做一次压测,对两个数据库做一个简单的性能测试对比。
新版 Macbook 已经问世了一段时间,如果将 M1 芯片用于数据科学,性能会如何呢?本文作者将 M1 Macbook Pro 与基于 Intel 的 2019 Macbook Pro 在 5 种常用基准上进行了测试,结果发现 M1 芯片的性能确实是令人震惊的。
服务器和数据库的性能测试的工具。此类测试使我们能够估计应用程序的用户数量,在舒适的条件下可以使用它,并使我们能够看到何时应该更改为更高效的服务器。此类测试还允许我们验证代码的哪些部分效率低下,需要重写。
将Locust与常用的LoadRunner和Jmeter进行对比,详细参数如下:
在使用 WCF 时,为了更好地进行调试,我都选择了 HTTP 协议进行数据传输。最近项目对性能要求比较高,所以就换成了使用 TCP 协议。并对二者的性能进行了一个简单的测试。以下是测试结果: 环境: CPU: E5800 3.20GHz+3.19GHz RAM: 7.97GB 64 bit OS, 64 bit processor 把服务端、客户端都部署在本机进行数据传输测试。分如下场景进行测试: 1. 1000次请求,每次请求传输 1 个对象,每个对象 80 个属性: HT
如果您要花费时间和精力进行性能测试,则很可能会在意从中获得的结果。您将依靠这些结果,因此您将不得不依靠该工具。因此,必须确保该工具是您可以信任的工具。据说开源工具不是很值得信赖。我和我的同事花费了大量时间来分析和对比从不同工具获得的结果。如今,在进行一些挖掘之后,我们最信任的两个负载测试是JMeter和Gatling。为了比较不同条件下的结果,我们甚至对两者进行了相同的测试。在那些测试中,我们还比较了不同的指标,以查看它们是否正确相关。例如,服务器接收的字节数和工具报告中显示的字节数或连接数等。
以上是测试压力机与服务器之前的网络带宽简单方法,大家做性能测试是否也是这样确定网络带宽大小。
之前写过一个FunTester框架对Redis进行几种常见API进行性能测试的系列文章,今天如约开始写FunTester框架对MySQL常用功能的性能测试。
Jmeter是基于Java的压力测试工具,在单台windows上使用Jmeter进行性能测试时,对本机的CPU和内存消耗是比较大的,如果并发数大(比如100、300...并发),很容易导致资源不足,吞吐量也无法达到理想的要求。于是我们想通过cmd命令行或者在Linux上使用Jmeter进行性能测试,能够大大缩减所需要的系统资源。客户端机器(window系统或者Linux服务器)作为一个控制器Master,控制多台slave机器的操作。
gpcheckperf 是一款集成到 GreenPlum 数据库中的程序,可以用于测试本机或者指定机器的磁盘IO,内存带宽,网络等主机的基准硬件性能。
在平时性能测试过程中,有时候由于无法对被测接口或者方法性能指标进行准确的预估,所以只能凭借经常进行压测参数的相关测试。有时候压测的时间和次数设置偏大或者已经达到了测试的目的,而测试需要被终止,但是又不想损失掉测试数据,我们就要对测出过程中的数据继续进行记录和统计,输出测试报告。
公众号:FunTester,原创分享爱好者,腾讯云、掘金社区、开源中国推荐,知乎八级原创作者,主要方向接口功能、自动化、性能测试,兼顾白盒测试,框架开发,业务开发。工作语言Java和Groovy,欢迎关注。 GitHub地址 接口测试 接口功能测试 开源测试服务 使用springboot+mybatis数据库存储服务化 alertover推送api的java httpclient实现实例 接口自动化通用验证类 将swagger文档自动变成测试代码 httpclient处理多用户同时在线 使用httpclie
使用Locust进行性能测试时,当一台单机不足以模拟所需的用户数量的时候,可以在多台机器上分布式的执行性能测试。 locust分布式启动场景有2种,一种是单机设置master和slave模式,另外一种是有多个机器,其中一个机器设置master,其它机器设置slave节点。
在先前的文章中,我首先做了FunTester框架Redis压测预备,然后分享了- FunTester测试框架Redis性能测试实践,对普通的「key-value」类型的Redis操作进行了测试。再加上- FunTester框架Redis性能测试之list操作一共产出了三篇文章,本来我的计划是通过多次不同的参数来对比Redis性能差异的,结果我发现其实没啥性能差异,都怪Redis性能太好了,我又不舍得拿本机测试极限性能。
前不久国内知名的系统高可用专家数列科技宣布开源旗下核心产品能力,对外开放生产全链路压测平台产品的源代码,并正式命名为:Takin。
大家好,我是飞哥! 很多读者在看完《127.0.0.1 之本机网络通信过程知多少 ?》这一篇后,让我讲讲 Unix Domain Socket。好了,今天就安排! 在本机网络 IO 中,我们讲到过基于
Mycat 自身提供了一套基准性能测试工具,这套工具可以用于性能测试、疲劳测试等,包括分片表插入性能测试、分片表查询性能测试、更新性能测试、全局表插入性能测试等基准测试工具。
libimobiledevice:使用本机协议与 iOS 真机设备上的服务进行通信的开源包
前一篇博客讲到了如何编译本地的Fabric Code成镜像文件,那么如果我们想改Fabric源代码,实现一些Fabric官方并没有提供的功能,该怎么办呢?这时我们除了改源码,增加需要的功能外,还需要能够跑通Fabric的测试。Fabric的测试主要包括单元测试和行为测试,下面分别介绍。
webservice是一个web的应用程序,使用xml向外界暴露可供调用的API接口。
自从SpringBoot升级到了2.0版本后集成Redis作为缓存就更为简单了,我们只需要配置Redis相关的链接信息以及使用注解@EnableCaching开启缓存,这样我们就直接可以在项目内使用缓存相关的内容。 由于最近这段时间一直在研发公司的持久化封装框架,用于编写文章的时间比较少,还请大家见谅,不过还会持续更新SpringBoot以及SpringCloud等系列文章,敬请期待!!! 本章目标 基于SpringBoot2完成快速集成Reids作为项目缓存,并讲解一些缓存常用的配置。 Spring
响应式网页设计是一种确保网站或网站内容适应不同屏幕尺寸和设备的方法。无论设备有多大或多小,响应式网页设计都可以提供直观的用户体验。
发布于 2018-11-06 15:33 更新于 2018-12-14 01:54
https://www.cnblogs.com/poloyy/category/1746599.html
在本主题上节当中,我们讲了esrally工具的部署、安装,那么本节我们来讲一下这个工具的应用、使用技巧。
JMeter不仅能十分便捷地进行接口测试,同时它也是一款优秀的压测工具。但使用JMeter在自己的电脑(下称本机)上运行压测脚本时,一般会有两个瓶颈:
本文作者Pierre是一名有10多年经验的高级系统架构师,他的主要专业领域是Java EE、中间件和JVM技术。根据他多年的工作实践经验,他发现许多性能问题都是由Java堆容量不足和调优引起的。下面他将和大家分享非常实用的5个Java堆优化技巧。
领取专属 10元无门槛券
手把手带您无忧上云