接口测试没什么高深,只是测试的对象是接口而已。
某公司发现,价值 100 元的商品,在该公司网上商城被以 0.01 元买走了很多。攻城狮们火速定位,问题原因很快被找到了,原来是购买商品接口的 bug。该接口需要 3 个参数:商品 id、商品单价、购买数量,而服务器根据接口传过来的商品单价(0.01 元)生成了订单。服务器本应根据数据库中的商品单价 100 元来生成订单。如下图,我们将页面上的单价修改后,再购买,提交到服务器的商品单价就是 0.01 元。
作为测试工程师的你,有做过这种测试吗?
如果没有强烈建议你赶紧补充测试。侥幸是测试工程师的最大天敌之一。
在计算机中,接口是计算机系统中两个独立的部件进行信息交换的共享边界。举个例子,我提供加法的计算接口,你给我两个数,我就给你返回一个和。
狭义的接口测试指的是对接口进行测试,上个例子中测试的是不同输入参数时,我加法的返回是否正确。一般讲的接口测试是这种。
广义的接口测试包含接口提供方、接口调用方的测试。 比如,你调用我的接口执行加法,我返回错误的响应,或者我响应超时,这时你的处理是否正确。
上面的案例就能说明做接口测试的重要性。一般做接口测试有如下原因:
“怎么做接口测试” 这个问题可以分解为两个问题:
本文讲了接口测试 what、why、how 的问题,在后续的文章中会逐步深入,讲工具的使用、接口自动化测试的框架搭建、接口测试出现问题的一般分析思路等。一部大片刚刚拉开帷幕,敬请期待!