postman可以这样操作数据库

作者: 陈芝麻烂谷子的事 | 来源:发表于2019-07-29 19:18 被阅读0次

在测试过程中我们往往需要校对数据库的数据或者准备一些测试数据,供给接口测试在自动执行时使用。所以就用到了postman对于数据库的操作。因为postman本身没有连接数据库的功能,所以用到的是node.js中的xmysql实现Rest API的生成,然后用postman进行不同的查询、更新请求即可。
1.安装部分:
node.js的安装 : http://www.runoob.com/nodejs/nodejs-install-setup.html
xmysql的安装:在安装完node.js之后,在命令行中输入 npm install -g xmysql 即可进行安装。

2.连接部分:
连接部分也比较简单:-h 是数据库的地址 -u 用户名 -p 密码 -d 数据库的名
这里可能注意的是:需要用root账号才能进行连接
命令行输入:xmysql -h host -u root -p Root@pwd -d test_db_2
可以在浏览器中输入localhost:3000查看获取到数据库内容
注:增加-r 参数,那么访问地址就变成了-r设置的地址。
例: xmysql -h host -u root -p Root@pwd -d test_db_2 -r 112.123.3.22 那么访问地址为112.123.3.22:3000

数据库连接.png

3.对数据库的操作部分:
我这里拿一个小的例子描述最常用的查询和更新操作。
1)问题描述:测试环境下,在测试注册接口的时候,我需要一个手机号的是未注册的状态,所以我这里先准备了一个手机号:18888888888,但是我不能保证这个手机号是否被注册,所以我需要从数据库中查询当前数据是否存在,如果存在需要做相应的处理,使其变为未注册的状态。
2)解决方案:
思路是查询当前手机号是否存在于user表中,如果存在就更新到别的手机号(考虑到数据库中谨慎使用delete操作所以使用update),如果不存在直接执行下一步测试
首先,先从数据库user表中查询当前数据是否已经存在: 请求方式为GET,request name 为getuser-sql
http://localhost:3000/api/user?_where=(phone,eq,18888888888)
然后通过test编写判断数据是否存在以及处理方式

responseData = JSON.parse(responseBody)
//获取到json返回的内容
var text = responseData[0];
//获取当前是否有id
if(text != null){
//判断当前手机号是否被注册 ,如果不为null说明手机号已经注册   
    tests["当前手机号已经注册"] = true === true;
    var key = responseData[0].id;
    //将id复制给key
    pm.environment.set("IDkey",key);
    //设置id为环境变量
    postman.setNextRequest("update-sql");
    //执行更新手机号的接口,使手机号为未注册的手机号
}
else{
    tests["当前手机号为未注册账号"] = true === true;
    postman.setNextRequest("next-api")
    //当前手机号未注册可以直接执行正常手机号登录注册流程
}

最后进行更新操作的编写,请求方式为 PATCH ,request name 为上个接口中写的 update-sql
http://localhost:3000/api/user/{{IDkey}} //{{IDkey}}是在getuser-sql中设置的环境变量,值为主键ID
另外需要在body中编写需要更新字段,如图所示即可:

postman设置.png

这样这个问题就完全解决了,另外:patch在使用时只能使用主键为条件进行更新,暂时还没有找到别的方式。

4.数据库基本操作:
第一部分请求方式


请求部分.png

第二部分基本的数据库操作:


进本操作部分.png

第三部分排序操作:


排序部分.png

总结:以上就是我在工作中常用的关于postman+xmysql中的使用,基本满足了对于数据库使用的需求。当然肯定还有更高级的知识等待我们去研究,这里也不在详细介绍了。OK,这次分享就到这里了,有什么疑问可以随时留言沟通,互相学习进步!
欢迎加入QQ群:547349021
小提示:群名虽然叫selenium+unittest,但是我们不限任何测试领域的沟通交流和学习,让我们一起补足缺失的40%吧!

相关文章

  • postman可以这样操作数据库

    在测试过程中我们往往需要校对数据库的数据或者准备一些测试数据,供给接口测试在自动执行时使用。所以就用到了postm...

  • Postman中文文档——安装与更新

    安装Postman Postman本地应用程序 Postman可以作为Mac,Windows和Linux操作系统的...

  • 二、 postman 数据库操作

    连接上数据库之后,我们来操作数据库中的数据。虽然说postman也可以读取本地数据,但是当数据比较多的时候,放在数...

  • Postman

    1. 基础操作 2. 高级操作 Postman 常用测试结果验证及使用技巧原文链接最强PostMan使用教程原文链接

  • postman导出接口文件转换成jmeter格式

    一、操作环境:window10,64位 二、工具 1.postman:https://www.postman.co...

  • 23、MVCC 可以为数据库解决什么问题?

    MVCC 可以为数据库解决什么问题? 在并发读写数据库时,可以做到在读操作时不用阻塞写操作,写操作也不用阻塞读操作...

  • Node Dao层的封装与分页

    传统的写法 这样的话,我们可以看出用户在每次操作的时候,就要连接依次数据库,这样的话效率很低,所以我们把数据库的增...

  • postman 批量调接口

    背景:针对重复的界面操作,通常会手动操作,或者写个脚本批量调接口处理。 postman 提供了可以通过读取列表数据...

  • Postman访问kube-apiserver

    获取Token具体操作参考 创建kube-dashboard管理员 拿到token后,可以通过postman来调试...

  • JavaScript相关

    工具:Node.js mysql postman vscode MySqlworkbench 数据库框架Sequ...

网友评论

    本文标题:postman可以这样操作数据库

    本文链接:https://www.haomeiwen.com/subject/uvsirctx.html