基于API服务级别而非Web UI的自动化测试

时间:2017-06-03 21:30:48

标签: web-services api testing automation webui

我开始测试新项目,开发人员向我发送API服务以测试它,因为前端(UI)实现还没有准备好。 我必须在稳定后为函数编写自动化脚本

  • 是否可以自动化API服务功能,以及如何PLZ?
  • 或者我必须等待,直到前端准备好,这样我就能找到元素并通过UI自动化。
  • 你能否向我解释一下之间的区别 通过WEB UI和Automate API自动化

1 个答案:

答案 0 :(得分:1)

在没有用户界面的情况下,确实可以自动执行API服务测试,并且在很多情况下,它实际上是首选

  

是否有可能实现API服务功能的自动化,以及如何实现PLZ?   或者我必须等待,直到前端准备就绪,这样我就可以找到元素并通过UI自动化。

可以分别从前端界面测试API。请记住,所有前端UI都会向后端API发出请求。因此,您可以使用Assertible之类的工具,而不是使用UI来发出API请求,这样您就可以向API发送HTTP请求并对响应进行断言

当您测试API时,您需要验证状态代码(例如200)和响应正文等内容,以确保获得预期的响应。

基本上:

1)发送API请求(例如,GET /users

2)接收API响应(例如,[{id: user1}, {id: user2}]

3)断言响应状态代码等于200。或者,断言从API返回2个用户。

  

请您解释一下通过WEB UI与Automate API进行自动化的区别

最大的区别就像我上面提到的那样:当您通过Web UI自动化测试时,您只是使用UI来发出API请求。要自行测试API,您只需将请求直接发送到后端。

您可以使用许多不同的工具和服务来完成此任务。如果您想使用不需要太多代码的托管服务,AssertiblePostman都很棒。如果要编写代码,可以使用允许您发出HTTP请求的相当多的语言/库。例如,在JavaScript中,ChakramFrisby.js都是受欢迎的选择。

希望这有帮助!

作为旁注 - 与UI分开测试API有很多优点。也就是说,保持测试小而孤立,以便测试不会出现问题,并且可以轻松地追溯到根本原因