Python+threading模块对单个接口进行并发测试


Posted in Python onJune 25, 2019

本文实例为大家分享了Python threading模块对单个接口进行并发测试的具体代码,供大家参考,具体内容如下

本文知识点

通过在threading.Thread继承类中重写run()方法实现定制输出结果

代码如下

import requests
import threading
import sys, io
# 解决console显示乱码的编码问题
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')

class Mythread(threading.Thread):
 """This class customizes the output thu overriding the run() method"""
 def __init__(self, obj):
 super(Mythread, self).__init__()
 self.obj = obj

 def run(self):
 ret = self.obj.test_search_tags_movie()
 print('result--%s:\n%s' % (self.getName(), ret))
 

class Douban(object):
 """A class containing interface test method of Douban object"""
 def __init__(self):
 self.host = 'movie.douban.com'
 self.headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0',
 'Referer':'https://movie.douban.com/',
 }

 def get_response(self, url, data):
 resp = requests.post(url=url, data=data, headers=self.headers).content.decode('utf-8')
 return resp

 def test_search_tags_movie(self):
 method = 'search_tags'
 url = 'https://%s/j/%s' % (self.host, method)
 post_data = {
  'type':'movie',
  'source':'index'
 }
 resp = self.get_response(url=url, data=post_data)
 return resp
 
if __name__ == '__main__':
 douban = Douban()
 thds = []
 for i in range(9):
 thd = Mythread(douban)
 thd.start()
 thds.append(thd)

 for thd in thds:
 thd.join()

运行结果

Python+threading模块对单个接口进行并发测试

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
linux系统使用python监测网络接口获取网络的输入输出
Jan 15 Python
python测试驱动开发实例
Oct 08 Python
Python实现的Google IP 可用性检测脚本
Apr 23 Python
python类装饰器用法实例
Jun 04 Python
python 3.5下xadmin的使用及修复源码bug
May 10 Python
Python 获取 datax 执行结果保存到数据库的方法
Jul 11 Python
python实现智能语音天气预报
Dec 02 Python
python 微信好友特征数据分析及可视化
Jan 07 Python
python+opencv边缘提取与各函数参数解析
Mar 09 Python
Python+pyftpdlib实现局域网文件互传
Aug 24 Python
python 批量下载bilibili视频的gui程序
Nov 20 Python
python 如何上传包到pypi
Dec 24 Python
python简单鼠标自动点击某区域的实例
Jun 25 #Python
详解pandas删除缺失数据(pd.dropna()方法)
Jun 25 #Python
python命令行参数用法实例分析
Jun 25 #Python
PyQt5重写QComboBox的鼠标点击事件方法
Jun 25 #Python
bluepy 一款python封装的BLE利器简单介绍
Jun 25 #Python
PyQt5下拉式复选框QComboCheckBox的实例
Jun 25 #Python
在Pandas中处理NaN值的方法
Jun 25 #Python
You might like
PHP+javascript液晶时钟
2006/10/09 PHP
PHP+XML 制作简单的留言本 图文教程
2009/11/02 PHP
如何在HTML 中嵌入 PHP 代码
2015/05/13 PHP
typecho插件编写教程(一):Hello World
2015/05/28 PHP
微信小程序发送订阅消息的方法(php 为例)
2019/10/30 PHP
JS date对象的减法处理实现代码
2010/12/28 Javascript
字符串的replace方法应用浅析
2011/12/06 Javascript
JavaScript 验证码的实例代码(附效果图)
2013/03/22 Javascript
javascript上传图片前预览图片兼容大多数浏览器
2013/10/25 Javascript
getAsDataURL在Firefox7.0下无法预览本地图片的解决方法
2013/11/15 Javascript
jsPDF生成pdf后在网页展示实例
2014/01/16 Javascript
IE8中使用javascript动态加载CSS的解决方法
2014/06/17 Javascript
javascript框架设计读书笔记之字符串的扩展和修复
2014/12/02 Javascript
node.js中的fs.stat方法使用说明
2014/12/16 Javascript
jQuery在ul中显示某个li索引号的方法
2015/03/17 Javascript
JavaScript实现类似拉勾网的鼠标移入移出效果
2016/10/27 Javascript
js生成随机数方法和实例
2017/01/17 Javascript
bootstrap treeview 树形菜单带复选框及级联选择功能
2018/06/08 Javascript
Python 中的with关键字使用详解
2016/09/11 Python
python字符串过滤性能比较5种方法
2017/06/22 Python
利用Python操作消息队列RabbitMQ的方法教程
2017/07/19 Python
解决python matplotlib imshow无法显示的问题
2018/05/24 Python
Python实现聊天机器人的示例代码
2018/07/09 Python
python三引号输出方法
2019/02/27 Python
Python matplotlib以日期为x轴作图代码实例
2019/11/22 Python
Keras构建神经网络踩坑(解决model.predict预测值全为0.0的问题)
2020/07/07 Python
Python QTimer实现多线程及QSS应用过程解析
2020/07/11 Python
flask框架中的cookie和session使用
2021/01/31 Python
欧洲最大的滑雪假期供应商之一:Sunweb Holidays
2018/01/06 全球购物
科技开发中心办公室主任岗位责任制
2014/02/10 职场文书
办公室副主任职责范本
2014/03/08 职场文书
单位承诺书格式
2014/05/21 职场文书
羽毛球社团活动总结
2014/06/27 职场文书
董事长岗位职责
2015/02/13 职场文书
2015年小学总务工作总结
2015/07/21 职场文书
Vue如何清空对象
2022/03/03 Vue.js