专栏首页Python自动化测试对接口自动化测试的几点思考(一)

对接口自动化测试的几点思考(一)

在自动化的测试体系中,目前应用的比较多,包含了UI自动化测试和接口自动化测试,在UI的自动化测试中使用最广泛的是Selenium框架,移动端是Appium,接口自动化测试方面选择性比较多。一个测试团队在技术选型上在我看来相当的重要,因为一个技术的选择,它决定了研发效率,测试的工作主要是两点,第一点是产品质量管理,关于产品质量部分,可以通过测试策略和测试分析得出什么应该测试,什么不应该测试,当然这是下一个测试技术发展的方向,不在今天的讨论范围内。第二点是工程效率,在测试这边就是测试效率。那么如何来提高测试效率了?

UI自动化测试有它存在的必然价值和意义,但是在互联网时代和物联网的快速迭代,快速快捷的开发模式中,唯一的不变是变化,那么测试团队如何来应对这个形式,这就值得有的讨论。产品的不断变化,UI的不断调整,产品的快速迭代,UI自动化测试明显跟不上这个节奏,即使使用了页面对象设计模型,但是还是无法满足需求。在测试的金字塔模型中,UI自动化测试的比例实际上并不高,见如下的截图:

在这个模型中,越往下比例会占的越高,也就是说在一个产品测试中,单元测试比例是最高的,依次是接口测试和UI自动化测试。基于现实的考虑,特别是在一个公司中,开发语言特别的多,比如本人所在的公司就有go,python,php等语言开发,当然还有js,对于测试来说做单元测试不是很理想,那么就只有接口测试了。所以交互层的测试是需要投入的,但是尽量投入比较少的时间去测试,把更多的时间放在应用测的测试。

目前是开发模式基本是前后端分离,也要求测试掌握接口测试的知识,掌握接口测试的知识不是单纯的说会一点抓包工具,会个postman就说可以会接测试,首先需要了解HTTP协议的相关知识,以及搞明白什么是cookie,什么是session和什么是token,以及cookie,session,token之间的区别是什么?明白客户端与服务器之间的请求流程是什么?这些知识点都是做接口自动化测试是必须要掌握的知识点。

HTTP的协议是基于应用层的协议,它不需要考虑网络传输层的事情,另外HTTP协议是无状态的协议,也就导致了cook了技术的发展。当打开google后,返回了google的首页,或者说客户端发送请求给服务端,服务端响应回复给客户端,这个请求的过程具体为:

具体可描述为:

1、客户端与服务端之间建立TCP的连接;

2、发送HTTP请求,也就是客户端发送Request请求;

3、返回HTTP结果,也就是说服务端Response回复客户端;

4、关闭TCP的连接。

如上信息就是一个完整的基于HTTP的请求流程,不管是基于目前前后端分离的开发模式还是开发提供的API,都是可以通过基于HTTP的请求流程来进行接口自动化的测试。在接口自动化测试中需要掌握的知识除了python语言外,还需要HTTP协议,POSTMAN测试工具,Jmeter测试工具,requests库,序列化与反序列化等知识。想参加第五期接口自动化测试的同学可加QQ:2839168630

在快速迭代又要求高质量产品的一个环境中,测试只能快,要么就是无休止的加班,但是即使这样也不一定产品质量就是让领导满意的。而接口自动化测试也是可以满足这个趋势,另外在整个接口层开发改东的相对来说比较少,变化少,可以更加高效的投入时间在应用层的测试,少投入时间去测试交互层。

本文分享自微信公众号 - Python自动化测试(wuya-python),作者:无涯

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-07-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 再谈接口测试

    目前大多数的公司招聘测试,几乎都要求应聘者能够会接口测试,几乎成了一种趋势,大多数的要求是会主流的测试工具,如PostMan,Jmeter和Soup...

    无涯WuYa
  • 漫谈服务端测试

    熟悉金字塔的同学都知道,整个分层在大的分类思想上分三层,除了单元测试层外,基于把另外两个层次分成客户端的自动化测试和服务端的自动化测试。基于客户端...

    无涯WuYa
  • Python自动化之unittest框架

    在软件架构的层面来讲,测试最重要的步骤之一是发生在软件开发的时候。而软件最终的功能是软件实现细节实现的产物。在金字塔模型的测试理论体系中,单元测试是最...

    无涯WuYa
  • DevOps之自动化测试

    ? 大家好,我是冀博,目前负责新一代数字化企业云平台 “The Platform” 的测试工作,很荣幸有这次机会和大家分享交流,今天向各位分享的主题是《Dev...

    yuanyi928
  • 服务端接口自动化测试工具大全及适配环境解析

    在互联网时代,服务端测试已经成为一个重要的产品保障手段,各对此公司实施的方法和技术也不同,本文我们就来讨论一下。 互联网服务端接口自动化是各个公司都需要一部分业...

    CSDN技术头条
  • 测试分类

    通过对程序内部结构的分析、检测来寻找问题。白盒测试可以把程序看成装在一个透明的白盒子里,也就是清楚了解程序结构和处理过程,检查是否所有的结构及路径都是正确的,...

    louiezhou001
  • 【探索式测试基础系列】蜜月旅行

    读完上一篇《探索式测试基础系列——初恋的味道》,想必大家和探索测试一起回味过初恋的味道,那么接下来我们就和探索测试来一场蜜月旅行吧,在蜜月的旅途中我们能进一步增...

    腾讯移动品质中心TMQ
  • 软件测试之性能测试

    性能测试是通过自动化的测试工具模拟各种正常、峰值以及异常负载条件来对系统的各项性能指标的测试。

    测试开发社区
  • 软件测试菜鸟入门

    随着技术的发展,各种应用程序、各种App应运而生!在早期,这些应用程序只是通过开发人员、产品以及部分用户使用之后,给出相应的修改意见,感觉都OK后...

    软件测试君
  • 2019年中国测试行业问卷调查报告-TesterHome社区

    ? 前言   TesterHome 社区在2019年12月发起了第二次中国测试行业问卷调查,截止目前已经收集到 2142 份问卷结果,感谢每一位参与者的大力支...

    WeTest质量开放平台团队

扫码关注云+社区

领取腾讯云代金券