那么我们再思考一下,平时我们做的黑盒测试不就是在网站或者APP上去执行天气查询的功能吗,根据具体的功能再去考虑测试用例编写。而接口测试就是在网站和APP还未能完成前端的功能展示时,我们提前针对天气查询这个功能做测试,和黑盒测试区别就在于我们不是测试眼睛看到的实实在在的界面操作,而是通过程序调取后台的方法(接口)完成测试而已。那么我们的接口测试原则来说和黑盒测试的测试思路是一样的,在做黑盒测试时你要设计什么测试用例,在做接口测试时也同样的要去这样去设计测试用例,只是没有了UI界面方面的测试内容。比如在做APP端的测试时,我们是不是要设计一条输入空内容的案例去做天气查询,看看我们的APP怎么去处理,是弹出提示框提示输入内容为空还是任何反应都没有,反正只要程序不报错崩溃就行了。然后我们看看具体在做接口测试时,要怎么做呢?同样的我们也要在接口传递参数时,设计一条这样传递空字符串的接口案例,再去检查服务返回内容是什么,是服务返回400报错还是返回200正常,而正常的返回的内容又是什么。
所以综述上面讲的,只要我们大家能够做好黑盒测试,再理解了什么是接口,不存在怎么做接口测试的问题。
最后再说说接口的请求一般有4种,但是我们一般用到的最多的就是POST 和 GET两种方式。区别在于GET是不传递参数的请求,POST是需要传递参数的请求。
1.3、Python实现的接口测试
本节我们就进入到接口测试的实战,今天我将利用网上现成的两个不同功能的接口去给大家讲解python在接口方面的应用。其实自己公司的就有一套但接口测试脚本,但我还是要顾及一下公司的感受的。
一般来说做接口测试,我们应当手上能够拿到后台开发提供的接口文档,但是我今天给大家找的是网络上的案例,我也尽可能的讲的详细一些。
首先我们先来看看这两个接口实现的功能,第一个是
http://www.webxml.com.cn/WebServices/WeatherWebService.asmx
大家可以在浏览器里打开这个网址,没错是一个做天气查询的接口。
第二个
http://www.gpsso.com/WebService/Dream/Dream.asmx?op=SearchDreamInfo
呵呵,一个周公解梦的,声明不是在这里宣传迷信。而这个我之前的程序有实现了解梦的功能。
话不多说,我就直接先上一段python代码,先感性的认识一下。
本文来源TA的公开社群:软件测试