zoukankan      html  css  js  c++  java
  • 测试工作中的接口测试

    转载:

    https://www.cnblogs.com/yoyoketang/p/10144581.html

    https://www.jianshu.com/p/8d3fb56b0de9

    一般来说,前端会对输入框做一些限制,比如限制小数/负数的输入。这样我们通过前端无法发起小数/负数的请求,需要通过工具进行接口测试。

    接口测试发现的问题及必要性

    1. 修改请求参数,突破前端页面限制
    2. 检查系统的异常处理能力
    3. 检查系统的安全性/稳定性
    4. 接口测试完成,前端不受影响
    5. 接口可测试并发情况

    怎么开展接口测试

    • 通过性验证:按接口文档输入请求参数,返回正确的请求结果,保证接口功能正常。

    • 参数组合:接口请求中必传参数/非必传参数,固定请求格式及数据验证。
    • 接口安全:
      1、绕过验证,比如说购买了一个商品,它的价格是300元,那我在提交订单时候,我把这个商品的价格改成3元,后端有没有做验证,更狠点,我把钱改成-3,是不是我的余额还要增加?
      2、绕过身份授权,比如说修改商品信息接口,那必须得是卖家才能修改,那我传一个普通用户,能不能修改成功,我传一个其他的卖家能不能修改成功
      3、参数是否加密,比如说我登陆的接口,用户名和密码是不是加密,如果不加密的话,别人拦截到你的请求,就能获取到你的信息了,加密规则是否容易破解。
      4、密码安全规则,密码的复杂程度校验

    • 异常验证:
      所谓异常验证,也就是我不按照你接口文档上的要求输入参数,来验证接口对异常情况的校验。比如说必填的参数不填,输入整数类型的,传入字符串类型,长度是10的,传11,总之就是你说怎么来,我就不怎么来,其实也就这三种,必传非必传、参数类型、入参长度。

    • 性能测试
      接口并发情况,如上面提到的:一个账号,同时(大于2个请求)对最后一个商品下单,或不同账号,对最后一个商品下单
      接口响应时间,响应时间太长了,肯定需要优化,一般都是毫秒级别

    测试工具

    postman/jmeter等测试工具,都可以模拟接口测试

    缺乏接口文档

    按流程来说,开展接口测试前开发会提供接口文档。

    如果没有,

    1.没有接口文档,那就需要先跟开发沟通,然后整理接口文档

    2.没有接口文档,可以抓包看接口请求参数,然后不懂的跟开发沟通

    数据依赖

    面试题6:在手工接口测试或者自动化接口测试的过程中,上下游接口有数据依赖如何处理?

    用一个全局变量来处理依赖的数据,比如登录后返回token,其它接口都需要这个token,那就用全局变量来传token参数

    依赖第三方

    面试题7:依赖于第三方数据的接口如何进行测试?

    这个标准答案是:mock

    接着面试官会问你,如果mock的,然后你就顺着坑继续挖,搭建mock服务,参考这篇【https://www.cnblogs.com/yoyoketang/p/9348552.html】

    抓包

    面试题8:当一个接口出现异常时候,你是如何分析异常的?

    1.抓包,用fiddler工具抓包,或者浏览器上f12,app上的话,那就用fiddler设置代理,去看请求报文和返回报文了
    2.查看后端日志,xhell连上服务器,查看日志

    弱网

    面试题9:如何模拟弱网测试

    fiddler和charles都可以模拟弱网测试,平常说的模拟丢包,也是模拟弱网测试

    分析bug是前端还是后端的

    面试题10:如何分析一个bug是前端还是后端的?

    平常提bug的时候,前端开发和后端开发总是扯皮,不承认是对方的bug
    这种情况很容易判断,先抓包看请求报文,对着接口文档,看请求报文有没问题,有问题就是前端发的数据不对
    请求报文没问题,那就看返回报文,返回的数据不对,那就是后端开发的问题咯

  • 相关阅读:
    LODOP、C-LODOP注册号的区别
    Lodop强制分页LODOP.NewPage()和LODOP.NewPageA()
    c-lodop云打印实现手机打印 JS语句打印
    如何取消浏览器护眼色 Lodop打印图片有窗口颜色的边框
    PS中如何提高修改psd图片的效率(自动选择工具)
    Lodop如何打印直线
    Lodop打印控件 如何打印虚线
    Lodop窗口的按钮、权限,隐藏或设置功能不可用
    ArrayList与LinkedList区别
    URLDecoder与URLEncoder
  • 原文地址:https://www.cnblogs.com/shengyin/p/12532577.html
Copyright © 2011-2022 走看看