快捷搜索: 王者荣耀 脱发

Python-接口自动化测试之接口基础

1.什么是API接口?

项目地址:http://api.lemonban.com/futureloan

服务端—API接口—>客户端(浏览器)

接口定义规则,可以在接口文档查看:

    访问地址 请求方法 get/post 请求参数

什么是接口测试?

测试接口的返回数据是否和预期一致(assert)。可以使用浏览器、postman、jmeter和soupui等接口测试工具,也可以通过代码访问。

2.HTTP协议

接口需要使用协议才能完成,最广泛使用的协议是http协议。 HTTP(超文本传输协议)是用于传输超媒体文档(例如html)是无色应用层协议。它是为web浏览器与web服务器之间的通信而设计的,但也可以用于其他目的。HTTP遵循经典的客户端-服务端模型,客户端打开一个连接发出请求,然后等到直到收到服务器端响应。

用户通过客户端访问某个URL地址,发送请求给服务器,服务器收到请求以后,解析请求数据,给客户端返回响应数据。

C/S软件架构

    Client/Server,Brower/Server P2P,peer to peer

2.1 HTTP请求

2.1.1 url

统一资源定位符(Uniform Resource Locator),它也被称为web地址,相当于快递单上的地址。

2.1.2 请求方法

!!!面试题:请求方法有哪些?

    get,请求指定的资源,使用get的请求用于获取数据 post,发送数据给服务器,创建或者更新资源 put,创建或者替换目标资源 patch,用于对资源进行部分修改 delete,删除资源,请求服务器删除request-URL所标示的资源(请求服务器删除页面) options,返回服务器针对特定资源所支持的HTML请求方法 或web服务器发送*测试服务器功能(允许客户端查看服务器性能) head,与服务器索与get请求一致的相应,响应体不会返回,获取包含在小消息头中的原信息(与get请求类似,返回的响应中没有具体内容,用于获取报头)

具体来说,一个接口支持哪种请求方法,是由后端开发工程师(接口提供方/接口文档)决定的。

get请求和post请求的区别

请求主体就是body 。

get请求无消息体,只能携带少量数据,且不安全

post请求有消息体,可以携带大量数据,且安全

get请求传递参数的方式:

    URL 参数拼接?key1=value1&key2=value2 请求头request headers

post请求传递参数的方式:

    URL 请求头request headers 请求体 body

GET方式提交的数据最多只能有1024字节,而POST则没有此限制。

2.1.3 请求头

Headers

2.1.4 Content-Type

body参数传递的主要数据格式:

    json,Content-Type:application/json form表单,Content-Type:multipart/form-data

postman会自动根据填充的数据格式自动匹配Content-Type,jmeter/python需要手动设置。

2.1.5 请求体

Body

2.2 HTTP响应

相应状态码

    1** 信息,服务器收到请求,需要请求者继续执行操作 2** 成功,操作被成功接收并处理 3** 重定向,需要进一步的操作以完成请求 4** 客户端错误,请求包含语法错误或取法完成请求 5** 服务器错误,服务器在处理请求的过程中发生了错误

响应头

Set-Cookie

服务端返回给客户端一个cookie信息,当客户端接收到之后,直接会把相关数据保存到浏览器本地,然后下次再访问这个请求时,会把cookie的信息自动传给服务器。

经验分享 程序员 微信小程序 职场和发展