培训首页  >  软件测试新闻  >  接口测试和UI测试有什么不同?

接口测试和UI测试有什么不同?

[2019-04-23 09:50:46] 浏览量:3389 来源:

松勤软件测试在线培训中心

接口测试和UI测试有什么不同?

Web API接口测试和 我们熟悉的UI测试有什么区别吗?

其实 没有什么本质的区别, 最大的不同就是输入构建,输出检查的方式有些差异。

UI测试,  测试人员可以直接对产品进行测试,比如,直接手工操作浏览器 或者手机app 对产品进行测试。

而API接口测试,通常需要使用测试工具,  对产品 发送 HTTP消息,检查输出,进行测试。


那么接口测试的测试工具哪里来呢?


可以使用第三方工具

现在市场上有很多支持web服务接口(主要是REST接口)测试的工具。

有的都是带图形界面的,比如postman、soapui, restclient

这些工具,核心功能都是类似的:

都是构建HTTP请求消息,并且解析收到的HTTP响应消息, 判断是否符合预期

大家可以根据自己的需求,选择使用。

一般学会了一种,其它的核心功能基本类似。无非就是如何构建http请求,查看HTTP响应消息

也可以自己开发工具

因为Web API测试本质上就是构造发送http请求,检查 HTTP响应消息,

所以我们完全可以利用编程语言(比如Python语言)和一些库,构造HTTP请求消息,并且获取解析收到的HTTP响应消息。

检查结果。

自己开发工具的好处是:

  • 可以替代 postman,做手工测试

  • 更加适用于完全的自动化,并且和自动化框架结合起来使用。


QA一定要做接口测试吗?

我们一定要做web API的测试吗?

移动互联网非常火热,目前做这些产品的公司动不动就说要做接口测试。

面试的时候,也会经常问到。

可能大家会说,那肯定要做啊。


很多产品的服务端提供的 API 接口,并不是直接暴露给用户的。这是产品内部的接口。

对这些内部接口的测试,主要应该由开发自己去完成。

而测试人员的通常做的测试, 称之为系统测试,是以用户的角度进行的测试,  应该测试的是外部接口, 比如暴露给用户的操作接口, 也就是测试用户操作。


什么样的接口,需要测试人员直接测试呢?那就是直接暴露给外部的接口。

所谓暴露出来,就是提供给 客户的产品,别的厂商的产品,别的部门的产品

总之,是给其他系统使用的,那就我们测试部门就应该进行测试

举个例子,比如阿里云的OSS API

https://help.aliyun.com/document_detail/31948.html?spm=a2c4g.11186623.6.862.aKd0qZ

注意:对阿里云OSS系统,这个产品来说,这个接口是给外部使用的, 就是 第三方系统的程序员使用的, 不是内部接口。

所以这样的接口一定需要测试人员测试。

但是如果有些API接口压根就是 前端APP和后端服务的 一个产品的内部接口,
这些接口,甚至都没有写在给测试人员的需求文档中。

测试人员去做完全的测试, 不是必要的。即使你测试了, 发现了问题, 开发往往也不会承认。


比如: 登录接口,规定的用户名长度是 6-10 . 你跳过前端,直接对服务端进行接口测试,你输入一个长度为1的用户名, 结果也成功了。

你提交了一个bug,结果 开发人员打回了bug,为什么?

因为产品的前端就会做这个校验, 我们测试人员做的测试, 被测系统是一个整体, 客户通常不会直接发送 请求给服务端的,所以我们绕过前端,直接对 服务端测试,往往不会被开发人员认同。


对于内部接口,在测试有余力的情况下,通常只需要做一些安全性测试,比如查看接口中的漏洞之类的。


文中图片素材来源网络,如有侵权请联系删除
  • 软件开发
  • 软件测试
  • 数据库
  • Web前端
  • 大数据
  • 人工智能
  • 零基础
  • 有HTML基础
  • 有PHP基础
  • 有C语言基础
  • 有JAVA基础
  • 其他计算机语言基础
  • 周末班
  • 全日制白班
  • 随到随学

网上报名

热门信息

温馨提示