前戏
在我们进行自动化测试的时候,很多网站都会都请求头做个校验,比如验证 User-Agent,看是不是浏览器发送的请求,如果我们不加请求头,使用脚本访问,默认User-Agent是python,这样服务器如果进行了校验,就会拒绝我们的请求。所以,在做自动化的时候,加上必要的请求头是一个好习惯。
请求头设置
使用requests库添加请求头很简单,只需要传一个headers参数就可以了
import requests base_url = 'http://httpbin.org' form_data = {"user": "zou", "pwd": '31500'} form_header = {"User-Agent": "Chrome/68.0.3440.106"} # 设置请求头,字典格式 r = requests.post(base_url + '/post', data=form_data, headers=form_header) print(r.url) # 打印URL print(r.status_code) print(r.text)
结果:
http://httpbin.org/post 200 { "args": {}, "data": "", "files": {}, "form": { "pwd": "31500", "user": "zou" }, "headers": { "Accept": "*/*", "Accept-Encoding": "gzip, deflate", "Content-Length": "18", "Content-Type": "application/x-www-form-urlencoded", "Host": "httpbin.org", "User-Agent": "Chrome/68.0.3440.106" }, "json": null, "origin": "112.10.81.210, 112.10.81.210", "url": "https://httpbin.org/post" }
查看请求头
前面我们已经设置好了请求头,我们可以使用r.request.headers来查看请求头
import requests base_url = 'http://httpbin.org' form_data = {"user": "zou", "pwd": '31500'} form_header = {"User-Agent": "Chrome/68.0.3440.106"} r = requests.post(base_url + '/post', data=form_data, headers=form_header) print(r.request.headers) # 查看请求头
结果:
{'User-Agent': 'Chrome/68.0.3440.106', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Length': '18', 'Content-Type': 'application/x-www-form-urlencoded'}
响应时间
当我们测接口的时候,我们肯定是想知道接口的响应时间,requests 提供了获取响应时间的方法
res.elapsed
获取到的数据格式如下
0:00:00.030363 # 单位为微秒
可以直接转为毫秒
res.elapsed.microseconds/1000
下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!
最后: 可以在公众号:程序员小濠 ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。
如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!