前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >2021年软件测试领域常用工具总结(2):接口测试工具、UI测试工具

2021年软件测试领域常用工具总结(2):接口测试工具、UI测试工具

作者头像
Bug挖掘机
发布2022-09-28 15:03:21
3.2K0
发布2022-09-28 15:03:21
举报
文章被收录于专栏:测试开发基础

前言

大家好,我是洋子。接口(API)测试对我们来说已经很常见了,目前很多公司都会招聘服务端测试工程师进行接口测试。因为在测试三层金字塔当中,接口测试位于中间层,做接口测试性价比较高,容易以较低成本暴露发现服务端的问题,同时也可以进行接口自动化测试,提高接口测试的效率

UI测试位于测试金字塔的最顶层,UI测试通俗的来说就是点点点。对于某些页面不会频繁变动的场景,我们也可以进行UI自动化测试

本文第一部分将会介绍接口测试工具(包含接口自动化测试框架),以及接口Mock工具、接口文档开发工具和接口管理工具。而第二部分将会介绍UI测试的相关工具

接口测试工具

比较好用的接口测试工具有PostmanJmeterSoapUIREST-AssuredApifoxKatalon StudioKarate 以及Robot Framework自动化测试框架

Postman

Postman一款非常流行的API调试工具,基本上做软件测试涉及到接口测试就会用到它,使用起来也很方便,填写好接口的URL,参数,Cookies等,发送接口请求后,就能看到接口的返回值

官网地址:https://www.postman.com

JMeter

JMeter是一款用于应用程序压力和性能测试的开源软件,也被广泛用于接口测试。JMeter支持REST、SOAP、HTTP、HTTPS、FTP、TCP等多种协议

插件支持:https://jmeter-plugins.org/

官网地址:https://jmeter.apache.org/

Robot Framework

Robot Framework是一个完全基于关键字测试驱动的框架,它既能用跟Python的requests库结合进行接口自动化测试,也可以结合selenium,appium做UI自动化测试。导入这些测试库后,定义关键字,一个关键字可以是一段业务逻辑,然后再编写测试用例(测试用例由测试关键字组成)进行测试。例如:一个简单的登陆测试由:登陆+输入密码+登出三个关键字组成,也可以由一个关键字登陆组成,关键字颗粒的大小可以自行定制

官网地址:https://robotframework.org/

SoapUI

SoapUI是一款应用非常广泛的SOAP和REST API自动化测试工具,凭借其易于使用的图形界面,测试人员可以轻松验证基于 REST 和 SOAP 的 Web 服务,非常适合复杂的测试场景

官网地址:https://www.soapui.org/

REST-Assured

REST-assured 用于方便 REST 服务测试的 JAVA DSL,测试REST API非常方便,支持XML和JSON请求/响应,支持BDD-Given/When/Then的语法。这个框架让我们使用Java语言写接口测试用例变得容易和简单

官网地址:http://rest-assured.io/

Apifox

Apifox 作为接口测试工具功能强大,可以支持API 文档定义、API 调试、API Mock、API 自动化测试。简单来说,Apifox = Postman + Swagger + Mock + JMeter

此外,Apifox 天生就是为团队协作而生的,接口云端实时同步更新,成熟的团队/项目/成员权限管理,满足各类企业的需求

官网地址:https://www.apifox.cn/

Katalon Studio

Katalon Studio是一个强大而全面的自动化工具,用于API、Web、桌面测试和移动测试。Katalon Studio通过在一个包中包含所有框架、ALM集成和插件,提供了轻松的部署。将UI和API/Web服务组合到多个环境(Windows、Mac OS和Linux)。此外,Katalon Studio还是一款无代码化的自动化测试工具,不用测试者搭建繁琐的测试环境

官网地址:https://www.katalon.com/

Karate

Karate是一个用于API测试的开源框架,不需要使用编程语言开发测试代码,测试人员可以通过使用特定领域的语言编写测试用例。该工具专门为自动化API测试而设计,但现已经覆盖了API 接口功能测试、UI自动化测试、性能测试,并提供Mocks支持。《敏捷测试:以持续测试促进持续交付》一书4.9.4节中有关于Karate测试工具的详尽介绍

特点

  • 建立在Cucumber-JVM基础上
  • 可以像标准的Java工程一样运行测试并且产生报告
  • 测试代码的开发不需要掌握任何的Java知识
  • 即使对非编程人员,测试代码也很容易编写

官网地址:https://github.com/karatelabs/karate

除此之外,Pytest也可以用做接口测试的管理框架,在2021年软件测试领域常用工具总结(1)已经介绍过这款框架,这里不再重复介绍

接口Mock工具

WireMock

WireMock 是一个 Http 模拟服务,其核心是 web 服务,WireMock 可以为特定的请求(stubbing)提供固定的响应,并捕获传入的请求,以便后面校验(验证)。WireMock 可以作为第三方库在项目中使用,也可以作为单独的进程启动

官网地址:http://wiremock.org/

Hoverfly

Hoverfly是一个轻量的API服务模拟工具(有时候也被称作服务虚拟化工具),可以创建应用程序依赖的API的真实模拟。Hoverfly用于创建可重复使用的虚拟服务,在CI环境中替代缓慢和不稳定的外部或第三方服务,还可以模拟网络延迟,随机故障或速率限制以测试边缘情况。此外,Hoeverfly提供多种运行模式,可以对HTTP响应进行记录,回放,修改或合成

官网地址:https://hoverfly.io/

接口文档开发工具

Swagger

Swagger 是一个规范且完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。Swagger 的目标是对 REST API 定义一个标准且和语言无关的接口,可以让人和计算机拥有无须访问源码、文档或网络流量监测就可以发现和理解服务的能力。Swagger除了具备API设计、开发和文档化的功能,还支持API的测试和API mock功能。Swagger 支持OpenApi 3.0的文档标准

官网地址:https://swagger.io/

接口管理工具

YApi

Yapi 由 YMFE开源,旨在为开发、产品、测试人员提供更优雅的接口管理服务,可以帮助开发者轻松创建、发布、维护API。Yapi支持内网部署,只需在管理员或内网某台机器上安装部署一次,团队其他成员不需要部署,访问相应的地址即可使用

官网地址:http://yapi.smart-xwork.cn/

UI测试工具

AirTest

 Airtest是网易出品的一款基于图像识别和poco控件识别的一款UI自动化测试工具。Airtest的框架是网易团队自己开发的一个图像识别框架。可以很方便的进行UI自动化测试

官网地址:https://airtest.netease.com/

Appium

Appium是一个开源的,适用于原生或混合移动应用( hybrid mobile apps )的UI自动化测试工具,Appium应用WebDriver: JSON wire protocol驱动安卓和iOS移动应用。支持多平台(Android、iOS等),多语言(python、java、ruby、js、c#等)

官网地址:http://appium.io/

Selenium

Selenium是一款web UI自动化测试工具,可以很方便地模拟真实用户对浏览器进行操作,它支持各种主流浏览器:IE、Chrome、Firefox、Safari、Opera等

官网地址:https://www.selenium.dev/

Cypress

Cypress是面向web的、端到端的、开源的自动化测试工具,在github的star数目前已经是35.2k+,可见深受广大测试人员的欢迎。Cypress能够随意调整页面访问窗口的尺寸、自动重新加载测试、自动等待等,可以实时看到有多少个测试通过或是没通过,并且具有良好的可调试性,像chrome的DevTools一样直接调试,可以快速的追踪到出错栈,可以在测试运行中自动存储视频以及出错时候截屏存储,鼠标滑过命令行时可以看到这个命令行执行时的动画。

官方站点:https://www.cypress.io/

开源代码:https://github.com/cypress-io/cypress

总结

2021年已经过去,回顾一整年,有许多的新兴接口测试工具出现在我们的视野里,大家可以根据自己公司的业务需求对决定是否使用。而对于UI测试工具,目前主流的还是Appium与Selenium,但是Cypress的口碑也爆棚,值得一试

相关文章

2021年软件测试领域常用工具总结(1)-抓包工具与单元测试工具篇

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-01-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试开发Guide 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 接口测试工具
    • Postman
      • JMeter
        • Robot Framework
          • SoapUI
            • REST-Assured
              • Apifox
                • Katalon Studio
                  • Karate
                  • 接口Mock工具
                    • WireMock
                      • Hoverfly
                      • 接口文档开发工具
                        • Swagger
                        • 接口管理工具
                          • YApi
                          • UI测试工具
                            • AirTest
                              • Appium
                                • Selenium
                                  • Cypress
                                  • 总结
                                  相关产品与服务
                                  Prowork 团队协同
                                  ProWork 团队协同(以下简称 ProWork )是便捷高效的协同平台,为团队中的不同角色提供支持。团队成员可以通过日历、清单来规划每⽇的工作,同时管理者也可以通过统计报表随时掌握团队状况。ProWork 摒弃了僵化的流程,通过灵活轻量的任务管理体系,满足不同团队的实际情况,目前 ProWork 所有功能均可免费使用。
                                  领券
                                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档