前    言

  本书的原型是我整理一份Django学习文档,从事软件测试工作的这六、七年来,一直有整理学习资料的习惯,这种学习理解再输出的方式对我非常受用,博客和文档是我主要的输出形式,这些输出同时也帮助到许多软件测试人员。

  说回到接口测试的话题上来,根据分层自动化测试的思想,上层为UI层,关于UI层的自动化测试我们已经很熟悉了,许多技术和工具都围绕这一层来设计的,我们要想做自动化,首先想到和尝试去做的也是一层的自动化实现;底层为单元测试,对于单元级别的自动化测试来说,虽然大多数测试人员并没有真正做过,但我们知道,它一般使用单元测试框架,通过一段代码去测试另一段代码;而接口测试刚好处于中间层,不太好理解,也不太好解释,因为在实际开发的项目中只有程序目录/文件、类、方法、函数这些,然而并没有一个叫“接口”的东西。但是,它又太非常重要!在项目开发过程中,它是一个出现频率极高的词,时间挂在开发人员嘴边。

  什么是接口呢?如何对接口进行测试呢?我曾经也有很长一段时间对接口测试并不理解。为什么没有一本讲接口测试的书呢?相比于性能测试和UI自动化测试每年都会出版好几本的节奏,你几乎找不到一本专门介绍接口测试的书。现在看来可能是因为它太简单了吧!简单到没什么可讲的,甚至接口测试比功能测试还要简单得多。但是想要真的做好接口测试又很难,你需要读懂接口代码的处理逻辑,这就要求你必须具备一定的开发基础,对许多测试人员来已经形成了门槛。

  如果要写一本关于接口测试的书,一种讨巧的做法就是把目前主流的接口测试工具都介绍一遍,然而,我并不认为把这些工具都学好就可以做好接口测试了,举个简单的例子,我的接口使用了加密,例如,用时间戳+密钥生成AES加密字符串,再将字符串生成base64字符串做为接口参数传输,这其实是一种常见的加密策略,而我所了解的大多接口工具都无法做到对这种加密接口的测试,原因是加密算法和加密策略是多样。但是,站在开发的角度上看接口测试就很简单了,开发怎么调用,测试也就怎么调用呗!只不过测试的目的是要验证传各种参数的情况下,接口是否可以正常的处理并返回相应的结果。

  所以,我选择另一种需要很高学习成本的方法来讲接口测试,从Web接口开发讲起,理解了接口是如何开发的,接口的测试自然就变得非常简单了。你会看到本书前几章就是在讲Web开发以及Web接口开发,你可能会怀疑自己是不是买错书了,明明是要学习接口测试的,怎么都是开发的技术。其实,如果你只是想学习Web开发的话,那么本书也是一本不错的入门教程。

  本书分为15个章节,虽然整本书不到300页,但确实包涵许多干货,这也是我在写作时对自己的要求,不要讲解太基础的东西,不要讲太多无聊的概念。第1章是Python基础,第2~5章是Web开发,第6章单元测试,第7~10章主要讲接口的概念、开发与测试。第11章接口的安全机制,第12~13章Web Service技术,第14~15项目的部署与性能测试。所以,你看到它并不是一本单纯面向测试同学的书,同样适合开发的小伙伴阅读。

  到了感觉部分,首先,感谢测试经理唐亮在我们尝试新技术时的支持,还有开发组的同事,蓝仕坤、陈晓发在技术上给了我很大帮助。其次,感谢接口自动化测试群里的小伙伴,他们给我这本书提了很多建议,包括本书的名字,也是在群里投票的结果。感谢我的妻子,她默默的容忍着我每天晚睡的坏习惯,感谢她一直以来的包容与理解。最后,感谢编辑安娜,没有她这本书也不会出版,我们合作一直很愉快。

  由于作者水平有限,本书错漏缺点在所难免,希望读者批评指正。

2017年1月13号凌晨

虫师

《Web接口开发与自动化测试 -- 基于Python语言》 ---前言的更多相关文章

  1. Python数据分析与挖掘所需的Pandas常用知识

    Python数据分析与挖掘所需的Pandas常用知识 前言Pandas基于两种数据类型:series与dataframe.一个series是一个一维的数据类型,其中每一个元素都有一个标签.series ...

  2. 10个步骤教你如何安装Anaconda安装,Python数据分析入门必看

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:小白 PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行 ...

  3. Python数据分析——numpy基础简介

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:基因学苑 NumPy(Numerical Python的简称)是高性 ...

  4. 《谁说菜鸟不会数据分析》高清PDF全彩版|百度网盘免费下载|Python数据分析

    <谁说菜鸟不会数据分析>高清PDF全彩版|百度网盘免费下载|Python数据分析 提取码:p7uo 内容简介 <谁说菜鸟不会数据分析(全彩)>内容简介:很多人看到数据分析就望而 ...

  5. 《Python金融大数据分析》高清PDF版|百度网盘免费下载|Python数据分析

    <Python金融大数据分析>高清PDF版|百度网盘免费下载|Python数据分析 提取码:mfku 内容简介 唯一一本详细讲解使用Python分析处理金融大数据的专业图书:金融应用开发领 ...

  6. [Python数据分析]新股破板买入,赚钱几率如何?

    这是本人一直比较好奇的问题,网上没搜到,最近在看python数据分析,正好自己动手做一下试试.作者对于python是零基础,需要从头学起. 在写本文时,作者也没有完成这个小分析目标,边学边做吧. == ...

  7. 【Python数据分析】Python3多线程并发网络爬虫-以豆瓣图书Top250为例

    基于上两篇文章的工作 [Python数据分析]Python3操作Excel-以豆瓣图书Top250为例 [Python数据分析]Python3操作Excel(二) 一些问题的解决与优化 已经正确地实现 ...

  8. 【Python数据分析】Python3操作Excel(二) 一些问题的解决与优化

    继上一篇[Python数据分析]Python3操作Excel-以豆瓣图书Top250为例 对豆瓣图书Top250进行爬取以后,鉴于还有一些问题没有解决,所以进行了进一步的交流讨论,这期间得到了一只尼玛 ...

  9. 【搬砖】【Python数据分析】Pycharm中plot绘图不能显示出来

    最近在看<Python数据分析>这本书,而自己写代码一直用的是Pycharm,在练习的时候就碰到了plot()绘图不能显示出来的问题.网上翻了一下找到知乎上一篇回答,试了一下好像不行,而且 ...

  10. Python 数据分析(二 本实验将学习利用 Python 数据聚合与分组运算,时间序列,金融与经济数据应用等相关知识

    Python 数据分析(二) 本实验将学习利用 Python 数据聚合与分组运算,时间序列,金融与经济数据应用等相关知识 第1节 groupby 技术 第2节 数据聚合 第3节 分组级运算和转换 第4 ...

随机推荐

  1. Android Studio 连接真机调试

    以小米4为例,先将手机通过USB连接电脑,在设备管理器中确保驱动安装正确. 对手机的设置 1.设置手机为开发者模式(设置->关于手机->连续点击MIUI版本--开启成功) 2.在更多设置中 ...

  2. Lint Code——最多共线的点的个数

    题目链接:http://www.lintcode.com/zh-cn/problem/max-points-on-a-line/# 条件:给一个点数组 目标:求出共线的点的最多个数 实现:时间复杂度- ...

  3. Talking about Health

    George: Doctor, what is the best way to stay healthy? Dictor: Having a good diet is probably the mos ...

  4. zencart 新页面调用好功能代码集:

    其实很多就是看变量,就可以直接调用,而变量的定义地方很多,比如language 1.  includes\languages\语言.php 2. 写个文件,放进includes\extra_confi ...

  5. Linux中java项目环境部署,简单记录一下

    这里只是简单的记录一下linux环境下面如何快速的搭配好环境,使你的项目能在linux环境上面运行. 很多时候,我们都是用windows环境进行配置调试的,而真正很多服务器都是在linux服务器上面的 ...

  6. SQL C# nvarchar类型转换为int类型 多表查询的问题,查询结果到新表,TXT数据读取到控件和数据库,生成在控件中的数据如何存到TXT文件中

    在数据库时候我设计了学生的分数为nvarchar(50),是为了在从TXT文件中读取数据插入到数据库表时候方便,但是在后期由于涉及到统计问题,比如求平均值等,需要int类型才可以,方法是:Conver ...

  7. (转)Eclipse中使用Ant

    Eclipse中使用Ant 分类: JAVA 工具 服务器2014-08-05 09:59 5507人阅读 评论(0) 收藏 举报 anteclipse http://286.iteye.com/bl ...

  8. PhpStorm11.0 配置在浏览器中打开文件

    转自:http://www.bubuko.com/infodetail-1420190.html 点击File-Settings-Deployment . 点+按钮增加服务器 Mapping 设置工程 ...

  9. JavaScript运行原理解析

    原文:1.http://blog.csdn.net/liaodehong/article/details/50488098 2.Stack的三种含义 (阮一峰) 3. http://lib.csdn. ...

  10. Python+Selenium+PhantomJS下载JavaScript异步加载网页

    # -*- coding: utf-8 -*- from selenium import webdriver import selenium.webdriver.support.ui as ui fr ...