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共享引用(多个变量引用)示例代码
Dec 04 Python
Python中的浮点数原理与运算分析
Oct 12 Python
python实现校园网自动登录的示例讲解
Apr 22 Python
Python使用cx_Oracle模块操作Oracle数据库详解
May 07 Python
详解flask表单提交的两种方式
Jul 21 Python
Flask框架配置与调试操作示例
Jul 23 Python
python 使用装饰器并记录log的示例代码
Jul 12 Python
python+django+rest框架配置创建方法
Aug 31 Python
python实现单目标、多目标、多尺度、自定义特征的KCF跟踪算法(实例代码)
Jan 08 Python
Python 实现Image和Ndarray互相转换
Feb 19 Python
Python根据字典的值查询出对应的键的方法
Sep 30 Python
Python在线和离线安装第三方库的方法
Oct 31 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的开合式多级菜单程序
2006/10/09 PHP
php查看session内容的函数
2008/08/27 PHP
php win下Socket方式发邮件类
2009/08/21 PHP
使用PHP强制下载PDF文件示例
2014/01/17 PHP
php 获取SWF动画截图示例代码
2014/02/10 PHP
php中memcache 基本操作实例
2015/05/17 PHP
php读取和保存base64编码的图片内容
2017/04/22 PHP
PHP查找一列有序数组是否包含某值的方法
2020/02/07 PHP
php设计模式之策略模式实例分析【星际争霸游戏案例】
2020/03/26 PHP
DOM相关内容速查手册
2007/02/07 Javascript
De facto standard 世界上不可思议的事实标准
2010/08/29 Javascript
javascript实现div浮动在网页最顶上并带关闭按钮效果实例
2013/08/13 Javascript
在JavaScript中实现类的方式探讨
2013/08/28 Javascript
JSON 数字排序多字段排序介绍
2013/09/18 Javascript
jquery插件之定时查询待处理任务数量
2014/05/01 Javascript
使用 js+正则表达式为关键词添加链接
2014/11/11 Javascript
Js为表单动态添加节点内容的方法
2015/02/10 Javascript
javascript html5摇一摇功能的实现
2016/04/19 Javascript
Angular实现的日程表功能【可添加及隐藏显示内容】
2017/12/27 Javascript
基于vue框架手写一个notify插件实现通知功能的方法
2019/03/31 Javascript
VUE使用axios调用后台API接口的方法
2020/08/03 Javascript
jquery实现鼠标悬浮弹出气泡提示框
2020/12/23 jQuery
[03:52]DOTA2英雄基础教程 酒仙
2013/12/23 DOTA
Python实现获取域名所用服务器的真实IP
2015/10/25 Python
Windows下python3.7安装教程
2018/07/31 Python
如何在django中运行scrapy框架
2020/04/22 Python
Python定时任务APScheduler原理及实例解析
2020/05/30 Python
没编程基础可以学python吗
2020/06/17 Python
Desigual美国官方网站:西班牙服装品牌
2019/03/29 全球购物
Noon埃及:埃及在线购物
2019/11/26 全球购物
农民致富事迹材料
2014/01/23 职场文书
关爱留守儿童倡议书
2014/04/15 职场文书
临时工聘用合同协议书
2014/10/29 职场文书
财政局个人总结
2015/03/04 职场文书
医院中层管理人员培训心得体会
2016/01/11 职场文书
初中英语教学反思范文
2016/02/15 职场文书