一直听说python requests库对于接口自动化测试特别合适,但由于自身代码基础薄弱,一直没有实践;
这次赶上公司项目需要,同事小伙伴们一起学习写接口自动化脚本,听起来特别给力,赶紧实践一把:
自身电脑装了python2.x,装上,导入requests库,导入第三方库的方法如下:
PyCharm→Preferences→Project:项目名→Project Interpreter,点击左下角的+号;
![使用python requests库写接口自动化测试--记录学习过程中遇到的坑(1) 使用python requests库写接口自动化测试--记录学习过程中遇到的坑(1)](https://image.shishitao.com:8440/aHR0cHM6Ly9iYnNtYXguaWthZmFuLmNvbS9zdGF0aWMvTDNCeWIzaDVMMmgwZEhCekwybHRaekl3TVRndVkyNWliRzluY3k1amIyMHZZbXh2Wnk4eE5qTTNNelV3THpJd01Ua3dNeTh4TmpNM016VXdMVEl3TVRrd016SXlNVEV3TWpBd05EVXdMVEU1T1RRek1EVXhNRGt1Y0c1bi5qcGc%3D.jpg?w=700&webp=1)
开始写第一个接口,我的想法是先把接口的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是区分大小写的)
希望下次自己不要犯同样的错误。