这是很早之前做过的一个测试,最近在整理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空间性能测试笔记的更多相关文章

  1. 基于Jmeter和Jenkins搭建性能测试框架

    搭建这个性能测试框架是希望能够让每个人(开发人员.测试人员)都能快速的进行性能测试,而不需要关注性能测试环境搭建过程.因为,往往配置一个性能环境可能需要很长的时间. 1.性能测试流程 该性能测试框架工 ...

  2. 「转」基于Jmeter和Jenkins搭建性能测试框架

    搭建这个性能测试框架是希望能够让每个人(开发人员.测试人员)都能快速的进行性能测试,而不需要关注性能测试环境搭建过程.因为,往往配置一个性能环境可能需要很长的时间. 1.性能测试流程 该性能测试框架工 ...

  3. 基于jmeter,jenkins,ANT接口,性能测试框架

    背景 公司计划推接口和性能测试,搭建这个性能测试框架框架是希望能够让每个人(开发人员.测试人员)都能快速的进行性能,接口测试,而不需要关注性能测试环境搭建过程.因为,往往配置一个性能环境可能需要很长的 ...

  4. 基于jmeter的性能测试平台(二) 一个构想

    之前基于jmeter搭好了分布式测试平台,但是感觉还是很粗糙,打算给它穿点衣服. 整个架构差不多就像下面这个图. (1)基于python django做一个web页面,友好地管理测试过程 (2)con ...

  5. 基于Jmeter跟Jenkins的自动化性能测试的一站式解决方案(转)

    www.MyException.Cn  网友分享于:2015-08-26  浏览:0次   基于Jmeter和Jenkins的自动化性能测试的一站式解决方案 作者: Yu, Qingguo Shen, ...

  6. 基于Jmeter+maven+Jenkins构建性能自动化测试平台

      一.目的: 为能够将相关系统性能测试做为常规化测试任务执行,且可自动无人值守定时执行并输出性能测试结果报告及统计数据,因此基于Jmeter+maven+Jenkins构建了一套性能自动化测试平台 ...

  7. 基于Jmeter的thrift-RPC接口测试

    根据需求,产品部分功能采用thrift-RPC协议进行接口的增.删.改.查,前期采用Junit对其进行测试,为了提高RPC接口测试的简洁化和后期的性能测试需求,打算通过Jmeter的java类测试实现 ...

  8. 基于jmeter和shell的接口性能自动化

    基于jmeter和shell的接口性能自动化 1. 总体需求 由于性能测试中涉及的查询接口多,版本迭代频繁,版本更新后自动跑一轮查询业务的性能,可以及时发现一些开发修复bug触发的非预期的bug,利用 ...

  9. 基于Jmeter实现Rocketmq消息发送

    在互联网企业技术架构中,MQ占据了越来越重要的地位.系统解耦.异步通信.削峰填谷.数据顺序保证等场景中,到处都能看到MQ的身影. 而测试工程师在工作中,也经常需要和mq打交道,比如构造测试数据,触发某 ...

随机推荐

  1. 企业级监控zabbix基础

    一个标准的监控系统所具备的基本功能: 1.数据的采集 2.为了展示其长期走势,将数据存储下来 3.万一某次采样的结果不在被认为是合理的范围内,然后就会做出告警操作,尽早的让相关人员得知到此消息 4.展 ...

  2. 初学时遇到的小问题Your content must have a ListView whose id attribute is 'android.R.id.list'

    问题提出 错误提示:Your content must have a ListView whose id attribute is 'android.R.id.list' 关于解决Your conte ...

  3. html5 实现 文件夹上传

    先插个背景:最近所在项目有个小需求,就是上传文件要可以同时选择文件夹及文件,然后把文件夹内得文件及所选单文件全部选择上传,借助于搜索关键词没搜到想要的结果(相关文章貌似很好,要么就是遍历文件夹内的文件 ...

  4. 关于ftp的学习:ftp很多人都会用。但会用,不代表我们真正了解它。

    ftp.sftp.ftps,您是否是也跟我一样搞不清楚他们的真正意义.它们之间有关联吗(究竟是何种关联),有区别吗(区别倒地在哪里). 亦或是以为自己知道它们,可我们真的了解并认识它们了吗? 如果您被 ...

  5. CentOS6 图形界面(gnome)安装,使用vnc进行远程连接

    CentOS6相对于CentOS5的安装有了不少的进步,有不少默认的选项可以选择,如: Desktop :基本的桌面系统,包括常用的桌面软件,如文档查看工具. Minimal Desktop :基本的 ...

  6. Web前端学习——HTML

    HTML其实还是蛮容易学习的,无非就是一些标签.格式的填写,大学的时候也做过网站设计,所以这里主要记录一些常用的HTML标签.属性以及书写方法等. 一.常见HTML格式 主要包含文件type,html ...

  7. C++ 函数对象

    函数对象 c++中函数名后的()称为函数调用运算符.函数调用运算符也可以重载,如果某个类重载了函数调用运算符,则该类的实例就是一个函数对象.函数对象本身并不是很有用,但他们使得算法操作的参数化策略成为 ...

  8. 关于我之前写的修改Windows系统Dos下显示用用户名的名字再测试

    最近看到蛮多网友反映,自己修改Dos下用户名后出现了很多的问题--今天抽了时间,再次修改测试... ================= Win10下C:\Users\John以账户名称命名的系统文件夹 ...

  9. CentOS6.9-zabbix3.2启动失败原因及页面没有mysql选择项

     环境内核信息: [root@zabbix- ~]# uname -a Linux lodboyedu- -.el6.x86_64 # SMP Tue Mar :: UTC x86_64 x86_64 ...

  10. iOS_应用程序的生命周期

    每个iPhone程序都包括唯一一个UIApplication对象,它管理整个程序的生命周期,从载入第一个显示界面開始,而且监听系统事件.程序事件调度整个程序的运行. int main(int argc ...