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 相关文章推荐
Eclipse中Python开发环境搭建简单教程
Mar 23 Python
详解Python的Twisted框架中reactor事件管理器的用法
May 25 Python
使用Django Form解决表单数据无法动态刷新的两种方法
Jul 14 Python
利用Python批量提取Win10锁屏壁纸实战教程
Mar 27 Python
使用python编写udp协议的ping程序方法
Apr 22 Python
Django如何将URL映射到视图
Jul 29 Python
Python GUI库PyQt5图形和特效样式QSS介绍
Feb 25 Python
Python动态导入模块:__import__、importlib、动态导入的使用场景实例分析
Mar 30 Python
python反爬虫方法的优缺点分析
Nov 25 Python
python上下文管理的使用场景实例讲解
Mar 03 Python
Pytorch实现图像识别之数字识别(附详细注释)
May 11 Python
教你如何用Python实现人脸识别(含源代码)
Jun 23 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 xfocus防注入资料
2008/04/27 PHP
ThinkPHP的SAE开发相关注意事项详解
2016/10/09 PHP
Javascript 生成指定范围数值随机数
2009/01/09 Javascript
jquery获取input表单值的代码
2010/04/19 Javascript
使用jQuery实现的网页版的个人简历(可换肤)
2013/04/19 Javascript
简单的JavaScript互斥锁分享
2014/02/02 Javascript
jquery+CSS3模拟Path2.0动画菜单效果代码
2015/08/31 Javascript
javascript实现uploadify上传格式以及个数限制
2015/11/23 Javascript
Javascript基础学习笔记(菜鸟必看篇)
2016/07/22 Javascript
AngularJS国际化详解及示例代码
2016/08/18 Javascript
jQueryUI 拖放排序遇到滚动条时有可能无法执行排序的小bug及解决方案
2016/12/19 Javascript
vue-cli中的webpack配置详解
2017/09/25 Javascript
AngularJS实现注册表单验证功能
2017/10/16 Javascript
细说webpack源码之compile流程-rules参数处理技巧(2)
2017/12/26 Javascript
解决使用bootstrap的dropdown部件时报错:error:Bootstrap dropdown require Popper.js问题
2018/08/30 Javascript
vue动态渲染svg、添加点击事件的实现
2020/03/13 Javascript
详解Python编程中基本的数学计算使用
2016/02/04 Python
python使用matplotlib画饼状图
2018/09/25 Python
Python 使用PyQt5 完成选择文件或目录的对话框方法
2019/06/27 Python
Python基于Opencv来快速实现人脸识别过程详解(完整版)
2019/07/11 Python
Python openpyxl 插入折线图实例
2020/04/17 Python
Django Model层F,Q对象和聚合函数原理解析
2020/11/12 Python
如何用Python进行时间序列分解和预测
2021/03/01 Python
css3 transform属性详解
2014/09/30 HTML / CSS
简单总结CSS3中视窗单位Viewport的常见用法
2016/02/04 HTML / CSS
英语系毕业生自荐信
2013/10/31 职场文书
大家访活动实施方案
2014/03/10 职场文书
教师求职自荐书
2014/06/14 职场文书
领导干部对照检查材料
2014/08/24 职场文书
2014学习十八届四中全会精神思想汇报范文
2014/10/23 职场文书
敬业奉献模范事迹材料
2014/12/24 职场文书
校长师德表现自我评价
2015/03/04 职场文书
2015年房产经纪人工作总结
2015/05/15 职场文书
上学路上观后感
2015/06/16 职场文书
党章学习心得体会2016
2016/01/14 职场文书
html中两种获取标签内的值的方法
2022/06/16 jQuery