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 相关文章推荐
python新手经常遇到的17个错误分析
Jul 30 Python
Python使用filetype精确判断文件类型
Jul 02 Python
Python 读写文件的操作代码
Sep 20 Python
python+opencv实现霍夫变换检测直线
Oct 23 Python
理想高通滤波实现Python opencv示例
Jan 30 Python
简单了解Python3里的一些新特性
Jul 13 Python
Python使用lambda表达式对字典排序操作示例
Jul 25 Python
详解python中docx库的安装过程
Nov 08 Python
用OpenCV将视频分解成单帧图片,图片合成视频示例
Dec 10 Python
Selenium 滚动页面至元素可见的方法
Mar 18 Python
服务器端jupyter notebook映射到本地浏览器的操作
Apr 14 Python
使用matlab 判断两个矩阵是否相等的实例
May 11 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 表单验证实现代码
2009/03/10 PHP
深入理解PHP中的count函数
2016/05/31 PHP
Javascript学习笔记4 Eval函数
2010/01/11 Javascript
禁止拷贝网页内容的js代码
2014/01/22 Javascript
node.js应用后台守护进程管理器Forever安装和使用实例
2014/06/01 Javascript
《JavaScript DOM 编程艺术》读书笔记之JavaScript 语法
2015/01/09 Javascript
7个让JavaScript变得更好的注意事项
2015/01/28 Javascript
JavaScript头像上传插件源码分享
2016/03/29 Javascript
JS实现自动轮播图效果(自适应屏幕宽度+手机触屏滑动)
2017/06/19 Javascript
JS实现批量上传文件并显示进度功能
2017/06/27 Javascript
原生JS实现Ajax跨域请求flask响应内容
2017/10/24 Javascript
利用jquery如何从json中读取数据追加到html中
2017/12/01 jQuery
基于element-ui组件手动实现单选和上传功能
2018/12/06 Javascript
浅谈js闭包理解
2019/04/01 Javascript
Vue中使用create-keyframe-animation与动画钩子完成复杂动画
2019/04/09 Javascript
[52:20]DOTA2-DPC中国联赛正赛 SAG vs XGBO3 第一场 3月5日
2021/03/11 DOTA
Python  连接字符串(join %)
2008/09/06 Python
Python 过滤字符串的技巧,map与itertools.imap
2008/09/06 Python
Pyramid将models.py文件的内容分布到多个文件的方法
2013/11/27 Python
Python的ORM框架中SQLAlchemy库的查询操作的教程
2015/04/25 Python
pyQt4实现俄罗斯方块游戏
2018/06/26 Python
处理python中多线程与多进程中的数据共享问题
2019/07/28 Python
利用rest framework搭建Django API过程解析
2019/08/31 Python
python 在threading中如何处理主进程和子线程的关系
2020/04/25 Python
python网络编程之五子棋游戏
2020/05/14 Python
Pandas缺失值2种处理方式代码实例
2020/06/13 Python
亚洲航空公司官方网站:AirAsia
2019/11/25 全球购物
拉夫劳伦爱尔兰官方网站:Ralph Lauren爱尔兰
2020/04/10 全球购物
英国在线购买轮胎、预订汽车、汽车维修和装配网站:Protyre
2020/04/12 全球购物
搞笑征婚广告词
2014/03/17 职场文书
2014年驻村干部工作总结
2014/11/17 职场文书
房地产财务经理岗位职责
2015/04/08 职场文书
源码解读Spring-Integration执行过程
2021/06/11 Java/Android
仅用几行Python代码就能复制她的U盘文件?
2021/06/26 Python
《Estab Life》4月6日播出 正式PV、主视觉图公开
2022/03/20 日漫
Flutter集成高德地图并添加自定义Maker的实践
2022/04/07 Java/Android