基于Python的接口自动化-01

为什么要做接口测试

当前互联网产品迭代速度越来越快,由之前的2-3个月到个把月,再到班车制,甚至更短,每次发版之前都需要对所有功能进行回归测试,在人力资源有限的情况下,做自动化测试很有必要。由于UI更新较快,如若页面交互比较复杂,UI自动化测试将变得更加难以维护,相较之,接口自动化就显得比较简单且易于维护。此外,UI自动化测试其操作的也是数据,因此接口自动化是最简单的

如何做接口测试

本文主要讨论通过request库模拟发送Http请求,主要是get、post请求,同时使用unittest库来写测试case,首先需要导入这两个库哦

import requests,unittest

简单介绍一下get、post请求的区别吧

get:1.从服务端获取数据 2.其请求的参数拼接在url地址后,所以可能导致信息的泄露,因此是非常不安全的

post:1.向服务端发送数据,可能导致服务端数据的变更 2.其请求的数据在请求的body里面,较get请求安全些

模拟get请求

querystring = {"key":"value"}

response =requests.get(test_url,params=querystring)

模拟post请求

data={

"key1":"value1",

"key2":"value2"

}

//一般情况下是json格式的数据,记得两个参数间应用逗号隔开

headers = {

'Content-Type': "application/json",

'Cache-Control': "no-cache",

'cookie':"***********}

//这些参数可通过抓包工具,如fiddlers,charles中request中获取

response=requests.post(test_url, data=data, headers=headers)

#response=requests.post(test_url, data=data, headers=headers) 当headers里面没有传必须的cookie时,可在方法里面直接提交

#response=requests.request('POST',test_url, data=data, headers=headers) 一般不用这种方法,知道就行了

测试中肯定会有一件头疼的事情,那就是有依赖的业务如何测试,比如很多都是基于登录状态的

response=requests.post(test_url, data=payload,headers=headers) //获取请求

response_cookies=response.cookies                                          //获取cookies对象

session=response_cookies.get('SESSION_ID')                          //获取sessionid

cookies={                                                                                      //组合成cookie对象

'SESSION_ID':session

}

get、post请求可以实现了,自动化测试当然少不了断言了,代码没有人的主观判断,这个时候要用到assert,assertEqual,assertNotEqual,assertTrue,assertIsNone,assertIsInstance等方法

python中assert断言是声明其布尔值必须为真的判定,如果发生异常就说明表达示为假。assert TRUE,“ERRORMSG”

在这里插入图片描述
今天就先写这么多,当然还有很多事情可以做

如发送测试报告,借助HTMLTestRunner

如mock测试数据

等等
在这里插入图片描述
上面是我收集的一些视频资源,在这个过程中帮到了我很多。如果你不想再体验一次自学时找不到资料,没人解答问题,坚持几天便放弃的感受的话,可以加入我们群【1127563538】,里面有各种软件测试资源和技术讨论。
在这里插入图片描述
当然还有面试,面试一般分为技术面和hr面,形式的话很少有群面,少部分企业可能会有一个交叉面,不过总的来说,技术面基本就是考察你的专业技术水平的,hr面的话主要是看这个人的综合素质以及家庭情况符不符合公司要求,一般来讲,技术的话只要通过了技术面hr面基本上是没有问题(也有少数企业hr面会刷很多人)
我们主要来说技术面,技术面的话主要是考察专业技术知识和水平,上面也是我整理好的精选面试题。
加油吧,测试人!如果你需要提升规划,那就行动吧,在路上总比在起点观望的要好。事必有法,然后有成。
资源不错就给个推荐吧~在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值