• 0
  • 0
分享
  • Postman接口测试——软件测试圈
  • 恬恬圈 2022-01-07 13:33:53 字数 1754 阅读 1151 收藏 0

最近正好有个项目,需要做一下支付相关接口测试,测试完成后脑海中浮现的一句话“实践是检验真理的唯一标准”,我们来看看有哪些问题大家借鉴可以避免的。

一、接口测试前需要准备哪些

接口测试工具:Postman

测试网站地址:确保测试前网站服务起来,否则不可能验证成功

接口文档:个人认为这是最重要的要素 ,一篇高质量文档能为你调试过程节约很多时间

数据库:最好连接到后台数据库,有的时候需要校验页面显示是否正确,或者判断返回的内容是否正确,都可以查看数据库找到根源

综上,这些工具互相之间是来回切换配合使用的,具体看大家需要完成什么操作,自己取材。

二、测试过程中遇到的问题

1. 类型一报错:101错误“System error”

首先在Postman中填写路径信息,Body下输入参数,点击【send】按钮,如下图所示保证每一步内容都正确

1.png

Ok,我点击发送后出现了下面的状态码提示

状态码提示:

{"code":"101","message":"SYSTEM_ERROR","result":null}
Status :200 ok,说明接口正确

101 提示错误:服务器已经理解了客户端的请求,并将通过Upgrade 消息头通知客户端采用不同的协议来完成这个请求。

后来查看接口文档,上面标注传输格式为json,在Header下调写数据各式为json,问题解决,如下图所示。

2.png

2. 类型二报错:Unexpented token

当我点击【send】按钮后,提示“There was an error in evaluating the Pre-request Script:Unexpected token”

释义:在评估预请求脚本时出现了一个错误:意外符号

应该是脚本请求发生的错误,一般都是脚本的语法错误,多了空行,或者双引号之类的,查看了下脚本没有错误就几行代码,后来发现原来是在Body下,写在了Pre下了,改好了就ok了

那么Pre-request scripts有什么用呢?

如果需要在发送请求之前做一些处理(如数据构造),可以添加脚本在Pre-request scripts下

3. 报错类型三:102,提示“xx内容不能为空”

url:http://xxxxx/URI

传输方式:get

提示:如下图

3.png

原因:以get方式传送时,参数要在url上传,因为选择get后body是置灰的,所以没有传参,就会有必填项提示不能为空的提示

那么get传输的正确格式应该是什么样的?

http://xxxxx/URI?serialNo=1590&dateTime=2018-03-15

IP/URI?参数名1=参数值1&参数名2=参数值2

上面表示是查询两个参数的地址格式

注意,参数值不用双引号阔起来

三、原理

通过上面操作,我们来总结下2个问题:

1. 常用的post、get、put这几个请求方式有什么不同

请求方式 释义 举例

Get GET 方法用来请求访问已被 URI 识别的资源。指定的资源经服务器端解析后返回响应内容 相当于“查看”,比如告诉服务端想查看某个主页内容,服务端就返回给你

post 传输实体的主体 客户端:“我要把这条信息传给你”->服务端

PUT PUT 方法用来传输文件。就像 FTP 协议的文件上传一样,要求在请

求报文的主体中包含文件内容,然后保存到请求 URI 指定的位置 客户端:“我要把这份文件传给你” ->服务端

2. HTTP协议传输返回的状态码分别代表什么意思

有时候,接口会返回500错误,或者400,我们需要知道分别代表的什么意思

1XX Informational(信息性状态码) 接收的请求正在处理

2XX Success(成功状态码) 请求正常处理完毕

3XX Redirection(重定向状态码) 需要进行附加操作以完成请求

4XX Client Error(客户端错误状态码) 服务器无法处理请求

5XX Server Error(服务器错误状态码) 服务器处理请求出错

四、总结

我们来梳理下Postman接口测试正确流程(4步走):

  1. Header下填写数据格式;

  2. 确保请求方式正确(GET、POST等);

  3. 确保接口路径填写正确;

  4. 确保传参格式正确。


作者:落地逃

链接:https://www.jianshu.com/p/19b6281fd87

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   测试工程师的分类:  1、功能测试工程师  2、性能测试工程师  3、安全测试工程师  4、自动化测试工程师  5、测试开发工程师  6、高级测试开发工程师  7、测试专家  层次:  第一层:1、功能测试,按需求检测开发产品是否符合需求。  第二层:2、3、4,这层的测试人员需要熟悉一些开发工具,开源框架,借助简单的监本来完成性能、安全、和回归测试。  第三层:5、6,需要通过编码,或者对开源框架,工具进行二次开发,开发测试工具,测试平台等来解决前两层测试人员工作中遇到的问题,提高工作效率。  第四层:测试专家,能发现测试领域问题并且解决某个领域问题的人,同时具备该领域的系统化的知识体系...
            0 0 1678
            分享
          • 作者:Apifox blog 李C理前言伴随互联网革命快速创新发展,API 需求的日益剧增,针对 API 的攻击几乎遍布各个行业,据报道 2022 年全年平均每月遭受攻击的 API 数量超过 21 万,游戏、社交、电商、制造等行业依然是攻击者主要目标。例如社交软件某特,在 2021 年发生数据泄露事件,此次数据泄露影响了多达 540 万用户,产生这场“惨案” 正是攻击者利用了登录 API 端点,产生这一漏洞的原因很可能是 API 过度数据暴露以及安全配置错误(下面我会讲到)。显然无论是 API 攻击整体趋势还是对企业和用户的影响都是不容乐观的。那如何去搭建 API 接口的安全“堡垒”?下面我们...
            0 0 1057
            分享
          • 工具简介curl是一个命令行工具,通过指定的URL来上传或下载数据,并将数据展示出来。使用场景开发复现问题:测试人员本地的某个请求出现错误,可以将请求信息复制出来,提供给开发本地通过curl命令模拟该请求qa复现问题:线上出现了问题,但是在测试环境由于业务侧改造后我们无法通过页面的方式去模拟线上的请求;这个时候可以将线上的接口请求复制下来在本地curl模拟请求常用命令curl:发出请求,后面跟对应的请求地址,注意url地址是str字符串形式-H:指定请求的请求头信息--data-raw :指定post请求body信息以key,value成对的形式传递-c:将服务器返回的cookie信息写入指定...
            0 0 2178
            分享
          •   摘要:软件测试作为软件质量保障的重要手段,PDCA循环是全面质量管理所应遵循的科学程序。本文结合软件测试工作的特点,通过文档规范的方式,将PDCA的理念融入软件测试,提出一套软件测试工作的流程。  关键字:软件测试、PDCA、测试流程  1、引言  PDCA循环又叫戴明环,是美国质量管理专家戴明博士提出的,它是全面质量管理所应遵循的科学程序。全面质量管理活动的全部过程,就是质量计划的制订和组织实现的过程,这个过程就是按照PDCA循环,不停顿地周而复始地运转的。PDCA 描述如下,PLAN:活动、控制、资源、目标;DO:按计划实施;CHECK:监控和测量一致性和有效性;ACTION:分析/回...
            1 1 2023
            分享
          • 有很多同学进入测试行业之后,一直从事的是软件测试的工作,然后跳槽时遇到一些游戏的公司的面试,就会有点慌,我做的都是软件测试,能胜任游戏测试么?所以,今天我们需要先来了解一下,软件测试和游戏测试的 ”同“ 和 “异”。首先,我们要肯定的是:游戏也是软件的一种,所以从测试工程的角度来讲,游戏测试与软件测试的本质是完全相同的。明白了这一点之后,我们再来看看,他们之间的一个区别。其实,按照我们测试工程师应该有的“测试思维”,考虑任何一个软件的测试点,都应该从以下几个维度出发去考虑:功能,界面,兼容性,易用性,性能,安全。所以,我们接下来我们就从这几个方面来探讨以下:1、功能方面:对于需求实明确要求实现...
            1 1 1585
            分享
      • 51testing软件测试圈微信