HttpRunnerManager(一)--安装
1、相关地址
(1)中文文档介绍:https://cn.httprunner.org/
(2)相关安装包下载地址:链接:https://pan.baidu.com/s/13SP1mFsNKrLK0snRWWIyxA 提取码:prip
(3)源码下载地址:https://github.com/HttpRunner/HttpRunnerManager
(4)参考地址:https://www.cnblogs.com/tiechui2015/p/10017801.html
2、首先安装python 3.5版本,版本太高,HttpRunner运行会报错;--自行百度安装;
3、下载源码:https://github.com/HttpRunner/HttpRunnerManager 放在D盘根目录下,并解压;
4、安装mysql数据库,安装navicat图形界面,创建HttpRunner数据库,设置为utf-8编码,设置好相应用户名、密码;
5、修改HttpRunnerManager/HttpRunnerManager/settings.py里DATABASES字典相关配置;
6、rabbitmq安装,参考:https://www.cnblogs.com/tiechui2015/p/10017801.html
7、在rabbitmq文件夹,打开sbin目录,双击rabbitmq-server.bat;访问http://localhost:15672 ,username:guest、Password:guest, 成功登陆即可
8、修改:HttpRunnerManager/HttpRunnerManager/settings.py里BROKER_URL = 'amqp://guest:guest@127.0.0.1:5672//'或者将127.0.0.1替换成host
9、安装工程所依赖的库文件-requirements.txt
打开cmd
cd D:\HttpRunnerManager-master\HttpRunnerManager-master;
pip install -r requirements.txt;
requirements.txt详见下面:
Django == 2.0.3PyYAML == 3.12requests == 2.18.4eventlet == 0.22.1HttpRunner == 1.5.8django-celery == 3.3.0flower == 0.9.3dwebsocket == 0.4.2paramiko == 2.4.1mysqlclient == 1.3.13
此时可能提示mysqlclient报错,进行下面步骤10;
10、打开链接:https://pan.baidu.com/s/13SP1mFsNKrLK0snRWWIyxA 提取码:prip 下载文件,解压mysqlclient;
将mysqlclient-1.3.12-cp35-cp35m-win_amd64.whl拷贝到python的根目录下
打开cmd
cd python根目录;
pip install mysqlclient-1.3.12-cp35-cp35m-win_amd64.whl;pip install pymysql;cd python根目录下的lib-site packages-django-db-backends-mysql-打开__init__.py;填写下面两句并保存
import pymysqlpymysql.install_as_MySQLdb()
11、生成数据库迁移脚本,生成表结构
打开cmd,进入D:\HttpRunnerManager-master\HttpRunnerManager-master;
python manage.py makemigrations ApiManager #生成数据迁移脚本
python manage.py migrate #应用到db生成数据表
12、创建超级用户,用户后台管理数据库,并按提示输入相应用户名,密码,邮箱。 如不需用,可跳过此步骤;
python manage.py createsuperuser
13、启动服务
python manage.py runserver 0.0.0.0:8000
14、启动worker, 如果选择同步执行并确保不会使用到定时任务,那么此步骤可忽略
python manage.py celery -A HttpRunnerManager worker --loglevel=info #启动worker
python manage.py celery beat --loglevel=info #启动定时任务监听器
celery flower #启动任务监控后台
注意:运行第一条时可能报错,进入python根目录,lib-site packages-djcelery-management-commands-celery.py,将options注释掉,重新打开服务
运行第二条时,可能出现这样的错误:
解决步骤:
15、访问
访问:http://localhost:5555/dashboard 即可查看任务列表和状态
浏览器输入:http://127.0.0.1:8000/api/register/ 注册用户,开始尽情享用平台吧
浏览器输入http://127.0.0.1:8000/admin/ 输入步骤12设置的用户名、密码,登录后台运维管理系统,可后台管理数据
16、一睹为快
前端界面:
后端界面:
rabbitMQ界面:
Flower监控界面:
后台服务运行情况:
这几个服务不能关闭!!!!
注意:
(1)后台管理界面,点击任务监控,提示不能访问!解决方法:在代码区右键项目HttpRunnerManager-master,find in path,搜索192.168.91.45.所有文件都改为127.0.0.1。
(2)邮箱收不到邮件,在settings.py设置邮箱,且开启相应邮箱的SMTP服务,邮箱密码为设置的SMTP的密码。
查看服务报错,说明是SMTP没有开启或者密码设置不对;
步骤1:以QQ邮箱为例,在QQ邮箱设置-账户-找到POP3等全部开启,用短信验证;
步骤2:用outlook连接测试,或者其他客户端,打开文件-添加账户-手动设置-POP或IMAP-按图示填写信息--其他设置--点击测试账户设置,如果出现发来的邮件,设置成功;
步骤3:按照下面修改emails.py文件,并运行,记得把报告路径及名称改为本地(不然会报找不到文件错误,第一个参数写自己上边设置授权码的邮箱,后面一个参数是报告存在的路径及名称),同时smtp_server修改为smtp.qq.com,如果收到邮件,则成功;(详见下面代码)
import io import smtplib from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText#from HttpRunnerManager.settings import EMAIL_SEND_USERNAME, EMAIL_SEND_PASSWORDEMAIL_SEND_USERNAME = 'XXXXX@qq.com' # 定时任务报告发送邮箱,支持163,qq,sina,企业qq邮箱等,注意需要开通smtp服务 EMAIL_SEND_PASSWORD = 'XXXXXXX' # 邮箱密码def send_email_reports(receiver, html_report_path):if '@sina.com' in EMAIL_SEND_USERNAME:smtp_server = 'smtp.sina.com'elif '@163.com' in EMAIL_SEND_USERNAME:smtp_server = 'smtp.163.com'else:smtp_server = 'smtp.qq.com' #这里要修改subject = "接口自动化测试报告"with io.open(html_report_path, 'r', encoding='utf-8') as stream:send_file = stream.read()att = MIMEText(send_file, "base64", "utf-8")att["Content-Type"] = "application/octet-stream"att["Content-Disposition"] = "attachment;filename = TestReports.html"body = MIMEText("附件为定时任务生成的接口测试报告,请查收,谢谢!", _subtype='html', _charset='gb2312')msg = MIMEMultipart('related')msg['Subject'] = subjectmsg['from'] = EMAIL_SEND_USERNAMEmsg['to'] = receivermsg.attach(att)msg.attach(body)smtp = smtplib.SMTP()smtp.connect(smtp_server)smtp.starttls()smtp.login(EMAIL_SEND_USERNAME, EMAIL_SEND_PASSWORD)smtp.sendmail(EMAIL_SEND_USERNAME, receiver.split(','), msg.as_string())smtp.quit()if __name__ == '__main__':send_email_reports('XXXXXXX@qq.com', 'D:\\HttpRunnerManager-master\\HttpRunnerManager-master\\reports\\1558953180.html') #第一个参数是刚刚设置授权码的邮箱,第二个参数是本地路径下的任意文件,只要存在就行,随意设置,这里会作为附件显示在邮箱中
步骤四:将上面emails.py文件的修改撤销;
步骤五:将settings.py文件邮箱信息修改为刚刚设置的邮箱名称及授权码;再次重启服务,运行用例,就会收到邮件;
转载于:https://www.cnblogs.com/feifei-cyj/p/10911688.html
HttpRunnerManager(一)--安装相关推荐
- python locust post 参数拼接md5_HttpRunner接口自动化测试框架
HttpRunner 简介 HttpRunner 是一款面向 HTTP(S) 协议的通用测试框架,只需编写维护一份 YAML/JSON 脚本,即可实现自动化测试.性能测试.线上监控.持续集成等多种测试 ...
- linux手动安装unzip_怎样在Linux下搭建接口自动化测试平台?
前言 之前在学习HttpRunner时,我们都是把用例写在 YAML/JSON 中进行维护,使用起来也很方便.其实,现在有不少大佬都喜欢开发自动化测试平台,比如我们今天要搭建的HttpRunnerMa ...
- 在Ubuntu 18.04上搭建HttpRunnerManager服务
首先在HttpRunnerManager的GitHub页面下载项目代码,然后存放在任意目录下. 安装python的Django库,可以使用pip3 list --format columns确认是否已 ...
- HttpRunnerManager接口自动化测试框架在win环境下搭建教程
1.下载源码 git下载:https://github.com/HttpRunner/HttpRunnerManager 网盘下载:https://pan.baidu.com/s/1bNME6xu9g ...
- HttpRunnerManager + Jenkins接口自动化测试平台搭建
简介: httprunner是一款基于Python的开源工具. httprunner目前可以支持http/https协议,使用yaml/json格式的文件编写用例,封装了接口访问方法和pytest测试 ...
- linux环境下nacos的安装+启动,阿里云服务器安装nacos
nacos安装+启动(linux环境): 基础:安装java环境 官网下载压缩包:如 nacos-server-1.2.1.tar.gz 放在自定义目录下 # 解压 tar -xvf nacos-se ...
- Alibaba Cloud Linux 2.1903 LTS 64位服务器yum源下载404,Alibaba Cloud Linux 2实例中使用docker-ce、epel等YUM源安装软件失败
[Alibaba Cloud Linux 2.1903 LTS 64位]服务器yum源下载404 failure: repodata/repomd.xml from docker-ce-stable: ...
- Linux下docker安装配置oracle,oracle创建用户并远程连接,实测可用!
最近在给同学弄毕业设计的数据库,因为oracle在个人电脑上极不稳定,所以他的电脑数据库崩溃了,这时候我就在docker上为他拉了一个oracle,解决了问题. docker的安装共有以下几步,实测没 ...
- 在docker上安装部署tomcat项目 超简单,拿来主义
在docker中部署tomcat,非常简单,而且省去了手动安装jdk等步骤,只需要将war包复制在容器tomcat实例中的webapps下面即可.以下将详细讲解流程: 在windows中打好包以后用w ...
最新文章
- Csharp: FreeTextbox 编辑器控件运行时错误: 'FTB_ResizeGalleryArea' 未定义
- Java多线程设计模式(4)线程池模式
- 关于举办第十五届全国大学生 智能汽车竞赛的通知
- python 数据库表结构转为类_Python数据科学实践 | 数据库1
- pytorch 笔记: 复现论文 Stochastic Weight Completion for Road Networks using Graph Convolutional Networks
- OpenMP基本概念
- PE文件结构详解(六)重定位
- 【转】C#执行rar,zip文件压缩的几种方法及我遇到的坑总结
- ubuntu18.04 Qt Creator 安装+ROS Qt Creator Plug-in 插件安装笔记
- websocket连接mysql_websocket 使用 spring 的service层 ,进而调用里面的 dao层 来操作数据库 ,包括redis、mysql等通用...
- phantomjs linux java_PhantomJS 在linux上使用
- 使用 PSD Validator 在线校验 PSD 文件的质量
- Alphabet旗下自动驾驶部门Waymo将在匹兹堡设立办公室
- JAVA:二进制和十进制互转
- Java集合类学习总结
- 订单同步工程标准化改造事记
- js如何监听元素事件是否被移除_javascript:什么是js事件?(上)
- TUIO协议 (转)
- 联想e470加装固态硬盘_ThinkPad E470C怎么安装固态硬盘?
- 帮谷歌推广Webp图片格式之:Webp的格式转换