- 传送门:
- Django之安装(一)
- Django之创建项目与配置(二)
- Django之添加API(三)
- Django之Swagger接口文档生成(四)
- Django之Restful接口测试-Postman(五)
- Django之Restful接口测试-Python+Requests+Unittest(六)
- Django之Restful接口测试-Django自带测试模块(七)
Python+Requests+Unittest框架
在第五章介绍了使用Potsman工具对Restful接口进行测试,接下来我们使用Python+Requests+Unittest框架进行接口测试用例的编写。
import requests
import unittest
class UserTest(unittest.TestCase):
def setUp(self):
self.base_url = 'http://127.0.0.1:8000/users'
self.auth = ('user001','pass001')
#GET查询接口username参数
def test_get_user(self):
r = requests.get(self.base_url+'/1/',auth=self.auth)
result = r.json()
self.assertEqual(result['username'],'user001')
self.assertEqual(result['email'],'user001@qq.com')
#POST添加创建用户
def test_add_user(self):
form_data = {'username':'user0011','email':'user008@qq.com','groups':'http://127.0.0.1:8000/groups/2/'}
r = requests.post(self.base_url+'/',auth=self.auth,data=form_data)
result = r.json()
self.assertEqual(result['username'], 'usernew')
#DELETE删除一条用户数据
def test_delete_user(self):
r = requests.delete(self.base_url+'/7/',auth=self.auth)
self.assertEqual(r.status_code,204)
#UPDATE局部更新参数
def test_update_user(self):
form_data={'email':'999@qq.com'}
r = requests.patch(self.base_url+'/6/',auth=self.auth,data=form_data)
result = r.json()
self.assertEqual(result['email'],'999@qq.com')
#GET验证无权限时接口返回参数值
def test_no_auth(self):
r = requests.get(self.base_url)
result = r.json()
self.assertEqual(result['detail'], 'Authentication credentials were not provided.')
print(result['detail'])
if __name__ == "__main__":
unittest.main()
版权声明:本文为m0_37193944原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。