这是很早之前做过的一个测试,最近在整理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. Less 编译工具

    Less 编译工具 虽然你可以选择在浏览器端使用Less,直接在页面中嵌入一个 Less.js 文件,你也可以选择在服务器端使用Less,使用命令行将Less文件编译成最终的CSS文件. 然而,这两种 ...

  2. 微信公众号批量爬取java版

    最近需要爬取微信公众号的文章信息.在网上找了找发现微信公众号爬取的难点在于公众号文章链接在pc端是打不开的,要用微信的自带浏览器(拿到微信客户端补充的参数,才可以在其它平台打开),这就给爬虫程序造成很 ...

  3. AngularJS 拦截器实现全局$http请求loading效果

    日常项目开发中,当前端需要和后端进行数据交互时,为了友好的UI效果,一般都会在前端加个loading的状态提示(包括进度条或者icon显示),数据传输或交互完成之后,再隐藏/删除loading提示. ...

  4. CCF-201312-4-有趣的数

    问题描述 试题编号: 201312-4 试题名称: 有趣的数 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 我们把一个数称为有趣的,当且仅当: 1. 它的数字只包含0, 1, ...

  5. java 接口测试,使用excel做数据驱动(二)

    承接上篇. 改变我们的测试驱动方式,灵活设置测试用例. 数据驱动测试 数据驱动测试的核心是: 测试数据与测试脚本分离,实现测试脚本参数化, 提高测试脚本的可重用性.在自动化功能测试中如果灵活使用数据源 ...

  6. ios7 以后准确获取iphone设备的MAC(物理地址)

    通过参考 钉钉 项目,知道是通过wifi拿到路由的MAC地址.那么可不可以拿到iphone 设备的MAC 地址呢? 经过一番搜索,发现所有文章都是针对 ios 7 以前 可以拿到. 而且方法也都是同一 ...

  7. C#_表达式目录树的应用

    使用表达式目录树实现两个不同类型的属性赋值: public class People { public int Age { get; set; } public string Name { get; ...

  8. 最全Pycharm教程(32)——依据FHS在Linux上安装Pycharm

    1.主题 怎样在Linux上安装Pycharm,依据FHS. 2.平台要求 Intel Pentium III/800 MHz或更高. 内存最小512M.建议1G以上 屏幕最小分辨率1024x768 ...

  9. 【蓝牙低功耗BLE】控制GPIO来点亮LED

    这节讲一下最简单的,也是最基础的东西.CC2540的IO操作,把PORT口当做GPIO来用,废话不多说,往下看. 1.硬件电路 硬件电路时最简单的,用一根GPIO去控制LED灯.因为GPIO作为out ...

  10. Oracle ROWID具体解释

    1.ROWID定义 ROWID:数据库中行的全局唯一地址 对于数据中的每一行,rowid伪列返回行的地址.rowid值主要包括下面信息: 对象的数据对象编号 该行所在的数据文件里的数据块 该行中数据块 ...