zoukankan      html  css  js  c++  java
  • 自动化API测试方法和工具

    随着业务和团队的不断演进,微服务架构的技术体系和交流社区已经越来越成熟,但与此同样不断增加的,是微服务架构中API测试的需求。
    本文就常见的API工具和使用场景给大家做个简单的介绍。

    curl
    Linux的curl 命令行工具测试API的原理是通过发起HTTP请求实现。
    在服务器端调试时,curl 像一把匕首一样简单实用。
    劣势:无法面对复杂的API测试,包括复杂 HTTP header和body。

    Swagger
    Swagger最常用于API手工测试和自动生成API文档。
    打个比方,一个前后端分离的项目,后端开发完成后,只需要给前端Swagger的地址,前端就可以调用后端的API。
    如果curl是匕首,Swagger 则是宝剑,灵动顺手。
    劣势:Swagger没法做API自动化测试;且同样无法应付比较复杂的API测试。

    Postman
    Postman可以用来对做API手工测试和API自动测试。
    不管HTTP请求是简单复杂还是数量多少,不管是手工测试还是自动测试(需要Newman支持),Postman都能得心应手。

    在API测试中,Postman就是一把带刺刀的AK47,可以当冷兵器,也是强大的热兵器。
    劣势:Postman不适合用来编写API文档。

    JMeter
    前面介绍的API 测试的工具都是针对功能测试,要API的性能测试则需要用到JMeter。
    JMeter就像是机枪,可以不停歇的把一堆流打到需要测试的API上。
    劣势:机枪的精准度不高。

    Eolinker
    Eolinker是一个集成化的工具,可以用来测试复杂用例,可以自动化批量测试,也能生成规范的API文档。
    他更像一个人,背着不同的武器闯荡江湖。
    劣势:没有社区平台,想深入学习还是以官网教程为主。

    小结
    对上述的工具和使用场景进行小结:

    1. API开发沟通用Swagger作为API文档
    2. API手动测试用Swagger或Postman
    3. 在基于API的自动化功能测试时使用 Postman(需要Newman支持)
    4. API手动性能测试时用JMeter
    5. 完整的测试流程可以用Eolinker
  • 相关阅读:
    ASP.NET Web Optimization Framework
    HearthBuddy Plugin编写遇到的问题
    HearthBuddy的plugin加载
    Unexpected ConvertTo-Json results? Answer: it has a default -Depth of 2
    HearthBuddy卡牌无法识别
    HearthstoneBot
    网络传输中的三张表,MAC地址表、ARP缓存表以及路由表
    DNS原理及其解析过程(转)
    React系列之--props属性
    react中constructor( )和super( )的具体含义以及如何使用
  • 原文地址:https://www.cnblogs.com/dc20181010/p/13882289.html
Copyright © 2011-2022 走看看