基于Jmeter的PostgreSQL空间性能测试笔记
这是很早之前做过的一个测试,最近在整理postgresql测试相关的资料,所以也把它拿出来了与大家分享。
首先解释一下所谓的PostgreSQL空间性能,主要是基于postgis的空间数据导入性能,详细的postgis知识请baidu,下面记录一下整个测试过程。
PostgreSQL中空间图层手动创建
1、 跳过PostgreSQL、postgis和jmeter的部署操作(如果此步骤不会跳过一下所有步骤)
2、 创建模板为postgis数据库的数据库,创建成功的数据库模式中存在topology,如下图所示:

3、 在该数据库中创建普通表,如下图所示:
CREATE TABLE test1
(
Id integer,
name varchar(20)
)
再给test1添加一个名为shape的几何字段(二维点\线\面):
Select AddGeometryColumn('public', ' test1', 'shape', 4326, 'POINT', 2)
或 Select AddGeometryColumn('public', ' test1', 'shape', 4326, 'LINESTRING', 2)
或 Select AddGeometryColumn('public', ' test1', 'shape', 4326, 'POLYGON', 2)
其中4326代表GW84(空间)的srid,4610代表Xian80的srid,4326代表CGCS2000的srid,相关详细参数请查询spatial_ref_sys表
Jmeter中创建空间数据入库测试计划
1、 首先下载相关PostgreSQL涉及的jdbc驱动文件,并将其拷贝到Jmeter安装路径下的lib文件夹中,下载路径如下:
https://jdbc.postgresql.org/download.html(建议下载和PostgreSQL版本一致的驱动)
2、 启动Jmeter后,点击测试计划,在library中添加已下载jdbc的jar文件,如下图所示:

3、 添加“线程组”,如下图所示:

4、 在线程组下添加“JDBC Connection Configuration”,如下图所示:

5、 在JDBC Connection Configuration中输入相关参数,如下图所示:

或者在此界面点击其上方的帮助按钮,获取该界面配置的相关方法,如下图所示:

6、 在线程组中添加“循环控制器”

7、 在循环控制器中添加“JDBC Request”,如下图所示:

注意:JDBC Request中Variable Name的值必须与JDBC Connection Configuration中的Variable Name一致
8、 在线程组下添加“察看结果树”,用于查看执行结果是否成功,如下图所示:

9、 在线程组下添加“聚合报告”,用于查看执行响应时间等信息,如下图所示:

10、 在JDBC Request中设置如下参数:

11、保存测试计划并运行,运行结果如下:

参数化入库
1、 在线程组中添加“CSV Data Set Config”,如下图所示:

2、 制作参数文件csv,并放到测试方案存储的路径下,csv文件内容如下:

注:由于参数值中存在“,”字符,因此整个参数值应使用双引号进行引用,样例如下:
”参数值”
3、 设置CSV Data Set Config参数如下:

4、 在JDBC Request中设置如下参数:

基于Jmeter的PostgreSQL空间性能测试笔记的更多相关文章
- 基于Jmeter和Jenkins搭建性能测试框架
搭建这个性能测试框架是希望能够让每个人(开发人员.测试人员)都能快速的进行性能测试,而不需要关注性能测试环境搭建过程.因为,往往配置一个性能环境可能需要很长的时间. 1.性能测试流程 该性能测试框架工 ...
- 「转」基于Jmeter和Jenkins搭建性能测试框架
搭建这个性能测试框架是希望能够让每个人(开发人员.测试人员)都能快速的进行性能测试,而不需要关注性能测试环境搭建过程.因为,往往配置一个性能环境可能需要很长的时间. 1.性能测试流程 该性能测试框架工 ...
- 基于jmeter,jenkins,ANT接口,性能测试框架
背景 公司计划推接口和性能测试,搭建这个性能测试框架框架是希望能够让每个人(开发人员.测试人员)都能快速的进行性能,接口测试,而不需要关注性能测试环境搭建过程.因为,往往配置一个性能环境可能需要很长的 ...
- 基于jmeter的性能测试平台(二) 一个构想
之前基于jmeter搭好了分布式测试平台,但是感觉还是很粗糙,打算给它穿点衣服. 整个架构差不多就像下面这个图. (1)基于python django做一个web页面,友好地管理测试过程 (2)con ...
- 基于Jmeter跟Jenkins的自动化性能测试的一站式解决方案(转)
www.MyException.Cn 网友分享于:2015-08-26 浏览:0次 基于Jmeter和Jenkins的自动化性能测试的一站式解决方案 作者: Yu, Qingguo Shen, ...
- 基于Jmeter+maven+Jenkins构建性能自动化测试平台
一.目的: 为能够将相关系统性能测试做为常规化测试任务执行,且可自动无人值守定时执行并输出性能测试结果报告及统计数据,因此基于Jmeter+maven+Jenkins构建了一套性能自动化测试平台 ...
- 基于Jmeter的thrift-RPC接口测试
根据需求,产品部分功能采用thrift-RPC协议进行接口的增.删.改.查,前期采用Junit对其进行测试,为了提高RPC接口测试的简洁化和后期的性能测试需求,打算通过Jmeter的java类测试实现 ...
- 基于jmeter和shell的接口性能自动化
基于jmeter和shell的接口性能自动化 1. 总体需求 由于性能测试中涉及的查询接口多,版本迭代频繁,版本更新后自动跑一轮查询业务的性能,可以及时发现一些开发修复bug触发的非预期的bug,利用 ...
- 基于Jmeter实现Rocketmq消息发送
在互联网企业技术架构中,MQ占据了越来越重要的地位.系统解耦.异步通信.削峰填谷.数据顺序保证等场景中,到处都能看到MQ的身影. 而测试工程师在工作中,也经常需要和mq打交道,比如构造测试数据,触发某 ...
随机推荐
- VMware下设置Centos7联网与固定IP连接Xshell
爱折腾的小伙伴应该经常会用Vmware安装一些虚拟机用于学习,但是比如装了Linux,经常操作的时候非常切换窗口的时候非常麻烦,所以很多人都会选择用Xshell来连接本地的Linux虚拟机,但是用Xs ...
- Servlet之初始化参数和传递数据(ServletConfig,ServletContext )
ServletConfig 容器初始化一个Servlet的时候,会为这个Servlet建一个唯一的Servletconfig的对象(Servlet的配置对象) 容器会从部署的描述文件(web.xml) ...
- 作为新手,SEO要避免的五大误区
越来越多人在做网站的时候关注的不是网站的界面,而是网站的seo排名.Seo其实没有我们相信中的那么简单,特别对于新手,在实际操作过程中很容易遇到一些误区,今天我们简单说说新手要避免的五大seo误区. ...
- HTTP / 1.1 RFC from W3C
这是一篇关于http协议的学习资料: HTTP / 1.1 RFC: https://www.w3.org/Protocols/rfc2616/rfc2616.html HTTP协议的完整资料,请参考 ...
- video字幕无法显示,video视频在google中无法控制快进
video字幕(track)无法显示: 直接用关闭同源策略的浏览器打开你的HTML文件可以请求到字幕文件并显示字幕: 从hbuilder中打开html文件,在从里面打开google浏览器去浏览HTML ...
- zzuli 2131 Can Win dinic+链式前向星(难点:抽象出网络模型+建边)
2131: Can Win Time Limit: 1 Sec Memory Limit: 128 MB Submit: 431 Solved: 50 SubmitStatusWeb Board ...
- 如何在PHP7中安装mysql的扩展
相对与PHP5,PHP7的最大变化之一是移除了mysql扩展,推荐使用mysqli或者pdo_mysql,实际上在PHP5.5开始,PHP就着手开始准备弃用mysql扩展,如果你使用mysql扩展,可 ...
- 深入理解javascript函数进阶系列第二篇——函数柯里化
前面的话 函数柯里化currying的概念最早由俄国数学家Moses Schönfinkel发明,而后由著名的数理逻辑学家Haskell Curry将其丰富和发展,currying由此得名.本文将详细 ...
- Python学习之--socket续集
IO多路复用: I/O多路复用指:通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作. 一个很简单的linux例子,select,poll, ...
- 《RabbitMQ Tutorial》译文 第 4 章 路由
原文来自 RabbitMQ 英文官网的教程(4.Routing),其示例代码采用了 .NET C# 语言. In the previous tutorial we built a simple log ...