一、接口是什么
软件接口是指程序中具体负责在不同模块之间传输或接受数据的并做处理的类或者函数。
二、什么是接口测试
接口测试就是通过向接口传递数据来测试这个接口是否正确。比如:一个验证码功能接口,就需要我们传递邮箱和验证码,去检查这个验证码接口能否正常使用。
三、进行接口测试需要掌握哪些知识
1、了解系统及内部各个组件之间的业务逻辑交互;
2、了解接口的I/O(input/output:输入输出);
3、了解协议的基本内容,包括:通信原理、三次握手、常用的协议类型、报文构成、数据传输方式、常见的状态码、URL构成等;
4、常用的接口测试工具,比如:apipost、jmeter、loadrunner、soapUI等;
5、数据库基础操作命令(检查数据入库、提取测试数据等);
6、常见的字符类型,比如:char、varchar、text、int、float、datatime、string等;
四、如何学这些技能?
1、系统间业务交互逻辑:通过需求文档、流程图、思维导图、沟通等很多渠道和方式;
2、协议:推荐《图解http》这本书,内容生动,相对算是入门级的书籍,其他的还有《图解tcp、IP》等;
3、接口测试工具:百度工具名字可以找到各类教学博客和相关问题解决方案、以及一些基于工具的书籍;
4、数据库操作命令:学习网站(W3C等)、博客,以及一些数据库相关书籍;
5、知乎,百度和如csdn等技术论坛都是你学习的好帮手
五、接口测试两大类
1.手工通过工具进行测试
一般使用的工具有eolinker、jmeter、postman等,笔者使用的是国产的接口测试工具eolinker。
手工测试方法:通过抓包或其他方法(比如看文档)准备好输入数据包,然后用发包的工具把数据发给服务端的接口,之后校验其返回值。
**2.自动化接口测试 **
以上,大家已经了解了手工做接口测试的流程。
那么下一步就是把一些接口测试编写成脚本,放在本地(自己电脑上),人工触发去批量得执行这些测试,并自动校验返回结果。
不过我用的是saas版本的,不需要本地部署。
如果你是零基础的,推荐你用eolinker或jmeter,两者都不需要你具备任何代码功底就能用。
我一般使用的是eolinker的流程流程用例,把写好的接口,选择执行测试,就可以进行接口自动化测试了。
假如你有编程基础,可以考虑使用python+requests+pytest/robotframework来做接口测试。如果用了python+requests,那么性能测试方面可以用python+locust。也可以不用locust,只要你掌握了前面提过的数据驱动的思想,配合一些自动化框架开发基础,也一样可以把接口测试做到能在其他性能测试工具里重用,当然这个就复杂了,以后再说吧。
接口测试工具eolinker使用地址:
www.eolinker.com