使用python requests库写接口自动化测试--记录学习过程中遇到的坑(1)
一直听说python requests库对于接口自动化测试特别合适,但由于自身代码基础薄弱,一直没有实践;
这次赶上公司项目需要,同事小伙伴们一起学习写接口自动化脚本,听起来特别给力,赶紧实践一把:
自身电脑装了python2.x,装上,导入requests库,导入第三方库的方法如下:
开始写第一个接口,我的想法是先把接口的url给拼接出来,然后再验证返回结果;
就这一个简单的链接,我就碰到了小坑:
def test_course_all(self):
url = self.url
headers = self.headers
course_param = {'page': '1', 'Length': '20', 't': '1552897684523_850377'}
resp = requests.get(url, headers=headers, params=course_param)
print("URL:::" + resp.url)
print(resp.headers) 返回结果如下:

点击这个URL,网页提示:
{
"data": {},
"errmsg": "Error 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-20,20' at line 1",
"errno": 10004
}
经过跟原接口仔细对比,参数中page中的P需要大写,结果才能返回正确;(python是区分大小写的)

希望下次自己不要犯同样的错误。
使用python requests库写接口自动化测试--记录学习过程中遇到的坑(1)的更多相关文章
- 使用python+requests+unittest实现接口自动化测试
这两天一直在找直接用python做接口自动化的方法,在网上也搜了一些博客参考,今天自己动手试了一下. 一.整体结构 上图是项目的目录结构,下面主要介绍下每个目录的作用. Common:公共方法:主要放 ...
- python+requests库,接口自动化
1.requests库的使用 requests是python的一个HTTP客户端库,跟urllib,urllib2类似,那为什么要用requests而不用urllib2呢?官方文档中是这样说明的: “ ...
- 基于Python + requests 的web接口自动化测试框架
之前采用JMeter进行接口测试,每次给带新人进行培训比较麻烦,干脆用python实现,将代码和用例分离,易于维护. 项目背景 公司的软件采用B/S架构,进行数据存储.分析.管理 工具选择 pytho ...
- 用python requests库写一个人人网相册爬虫
担心人人网会黄掉,写个爬虫,把我的相册照片都下载下来.代码如下: # -*- coding: utf-8 -*- import requests import json import os def m ...
- Python+requests库 POST接口图片上传
捕获到POST接口的请求参数,如下: 包括data.file两个部分,上传代码如下: 比较简单,直接发送files参数即可 heads中 content-type 折腾了1个小时,呵呵
- python requests库学习笔记(上)
尊重博客园原创精神,请勿转载! requests库官方使用手册地址:http://www.python-requests.org/en/master/:中文使用手册地址:http://cn.pytho ...
- Python requests库的使用(一)
requests库官方使用手册地址:http://www.python-requests.org/en/master/:中文使用手册地址:http://cn.python-requests.org/z ...
- Python——Requests库的开发者接口
本文介绍 Python Requests 库的开发者接口,主要内容包括: 目录 一.主要接口 1. requests.request() 2. requests.head().get().post() ...
- 大概看了一天python request源码。写下python requests库发送 get,post请求大概过程。
python requests库发送请求时,比如get请求,大概过程. 一.发起get请求过程:调用requests.get(url,**kwargs)-->request('get', url ...
随机推荐
- CentOS 7 更换 阿里云/清华大学 yum 软件源
阿里云参考:https://opsx.alibaba.com/mirror?lang=zh-CN 清华参考:https://mirrors.tuna.tsinghua.edu.cn/help/cent ...
- ACM暑假培训宣讲稿
(鞠躬)感谢大家的掌声! 我上台来作这次的宣讲,首先要感谢大家的捧场(当然,这是一句玩笑话),其实吧,我要感谢一下我们ACM班老大(班长),hjh队友,是他指派我来的,给了我这个宝贵的机会.最要感谢的 ...
- Spring MVC 配置文件
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.spr ...
- mongodb ---- findAndModify 写法
db.coll.findAndModify({ query:{x:"ggg"}, update:{$set:{"x":"gggg"}}, f ...
- [GO]定时器的停止和重置
package main import ( "time" "fmt" ) func main() { timer := time.NewTimer( * tim ...
- Animation(动画效果)
Ctrl+6打开Animation窗口.选择物体,点击录制,保存录制文件后即为给该物体添加了动画效果. Animation可以修改某时间点的物体位置.大小.材质球上的所有属性.碰撞器等等. 可以通过修 ...
- post上传文件限制--另一种解决途径
问题:项目之前的上传功能是没有问题的,但是今天同样的代码上传一个压缩包的时候出现了问题,报的是struts.xml的错,说是找不到返回的映射, 问题截图: 很奇怪的问题,之前都没问题的,仔细对比后发现 ...
- 在 Linux 系统上快速获取命令的帮助信息
几种方法: help 命令 man 命令 info 命令 命令 --help man 章节分类如下 1 - commands 2 - system calls 3 - library calls 4 ...
- 汇编中的移位指令(8086CPU)
原创 8086CPU中有8条移位指令,分为两大类. 非循环移位指令: SAL —— 算术左移 —— 最高位移入标志状态位CF SAR —— 算术右移 —— 最低位移入CF,最高位不变. 比如说:将10 ...
- DRBD 数据镜像软件
1>DRBD介绍 1>数据镜像软件DRBD介绍 分布式块设备复制(Distributed Relicated Block Deivce,DRBD),是一种基于软件.基于网络的块复制存储解 ...