接口测试
来源:互联网 发布:查看mysql 用户和授权 编辑:程序博客网 时间:2024/05/29 09:38
当不能够白盒测试的时候,可以快速选择接口测试,测试后台逻辑
2、Post
用json=这种方式直接把字典类型的python数据转化成,json,
1.GET
# coding=utf-8# author:import requests # 导入requests模块import unittest # 导入Python单元测试框架unittest# import json # 导入jsonclass RequestGet(unittest.TestCase): ''' 使用requests模块的Get请求方法测试 ''' def test_get_without_param(self): """ 测试GET请求无参数 :return: """ # 请求的接口地址 url = 'http://api.zhongchou.cn/deal/list?v=1' # para = {} # 获取响应内容 res = requests.get(url,) # 将返回内容转换为json格式 jresult = res.json() # print jresult # 判断errno的值不为空 if (jresult['errno'] != ""): # 断言:验证errno的值为0 self.assertEqual(0, jresult['errno']) # self.assertEqual(200,res.status_code) # 验证返回的状态码为200 #print "接口/deal/list----------OK!" else: #print "接口/deal/list----------Failure!"if __name__ == '__main__': unittest.main()
2、Post
# coding=utf-8# author:import requestsimport unittestclass RequestPost(unittest.TestCase): ''' 使用Requests的post请求测试登录接口 ''' def test_post_login(self): # 测试登录 posturl = "http://api.zhongchou.cn/user/login?v=1" postdata = {'identity': '18311338905', 'password': 'a000000'} res = requests.post(posturl, postdata) jresult = res.json() print res.text print jresult['data']['userID'] if (jresult['errno'] != ""): self.assertEqual('765a03f489ef55e284bcefd1', jresult['data']['userID']) print "接口/user/login----------OK!" else: print "接口/user/login----------Failure!" self.assertEqual(0, 1)if __name__ == '__main__': unittest.main()3.注意点
需要登录的接口,加入headers,token和session,可以通过抓包工具抓取或者问开发直接要
#_/_/_/_/前置_/_/_/_/ def setUp(self): self.headers = {'User-Agent':'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E) ', 'Accept':'application/json', # 'Content-Type':'application/json', # 'Accept-Language ':'zh-CN', 'X-CSRFToken':'KyeUya7GfZuMbJQ5xGxTI0xX4xUyC4yUCbBE3OdcNac76ni4WNPQLGP3Rtz7Z4bY', 'Authorization':'JWT eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6IjEwMDAwMDAwMDgxIiwidXNlcl9pZCI6MTE2NjksImVtYWlsIjoiIiwiZXhwIjoxNTE2NTE1MjYzfQ.jyGsMsY-Hxz-4kx6ILPOVC9s8wNVe6r_A3zoTc1vzLo'} #/api/reading/begin/ def test_readingBegin(self): result = requests.get('https://#####################',headers = self.headers) self.assertEqual(200,result.status_code,'请求失败')注意自己测试的服务器支持解析的格式
当时application/json的时候,我们使用
result = requests.post('https://#####################',',json = self.postdata5,headers = self.headers)
用json=这种方式直接把字典类型的python数据转化成,json,
bingo
阅读全文
0 0
- 测试接口
- 接口测试
- 接口测试
- 接口测试
- 接口测试
- 接口测试
- 接口测试
- 接口测试
- 接口测试
- 接口测试
- 接口测试
- 接口测试
- 接口测试
- 接口测试
- 接口测试
- 接口测试
- 接口测试
- 接口测试
- 在js中为对象添加和删除属性
- c++11 内存模型解读
- 计算机网络的体系结构
- Machine Learning Concepts
- 边播放遍缓冲
- 接口测试
- HotSpot虚拟机实现中几个重要的类
- 助力雅迪成行业霸主 “咨询界黑马”君智的竞争战略奥秘
- 查询语句中select from where group by having order by的执行顺序
- maven-dependency-plugin
- unity编辑器拓展四——删除场景空Animator组件
- 如何排查Linux机器是否已经被入侵?
- golang 跳出for循环
- 表单标签基本属性