HttpRunnerManager接口自动化测试框架在win环境下搭建教程

时间:2023-01-05 14:07:40

  近几日一直在研究如何把接口自动化做的顺畅,目前用的是轻量级jmeter+ant+Jenkins自动化测试框架,目前测试界的主流是python语言,所以一直想用搭建一个基于python的HttpRunnerManager。公司项目也比较多,在上班的过程中偶尔研究了一下,于是就利用周末,在家操作了一发。在搭建的过程中遇到几个困难,但是在和各位网友的交流中,逐步找到问题,然后解决问题。感谢测试大神尹全旺给的指导,在他的基础上实现了搭建。参考他的博客地址为:https://testerhome.com/topics/13295,下面我就记录一下我在搭建过程中遇到的问题,踩过的坑,供大家参考。

  1,开源代码下载

这里的git下载地址是:https://github.com/HttpRunner/HttpRunnerManager,如果不会使用git,我也上传了一份源码在csdn上,下载地址如下:https://download.csdn.net/download/yelang_110/10806644,下载后的解压的目录如下:

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

  2,数据库准备

我这边安装的是mysql8.0.13版本数据库,参考资料上写推荐5.7版本以上,设置为utf-8编码,创建相应HttpRunner数据库,设置好相应用户名、密码,启动mysql。

在数据库安装过程中,也遇到一个问题,由于8.0版本和以往的版本不一样,安装成功后,客户端连接不上,于是在这个地方踩了第一个坑,后来找到资料解决了。具体的安装情况参考我的另外一篇博客:https://www.cnblogs.com/tiechui2015/p/10011908.html

  3,修改源码中settings.py的配置文件

具体的路径为:HttpRunnerManager/HttpRunnerManager/settings.py,修改:HttpRunnerManager/HttpRunnerManager/settings.py里DATABASES字典相关配置:NAME(默认HttpRunner)USER(用户名,建议root用户,需要有增删改查权限!)、PASSWORD(对应登录用户名密码)、HOST(数据库所在服务器ip地址)
PORT(数据库服务监听端口,默认3306)

我修改后的如下图:本地数据库,马赛克就不打了。

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

  4,rabbitmq消息中间件的安装

具体的安装方法,参考我的另外一篇博客:https://www.cnblogs.com/tiechui2015/p/10016106.html

启动和关闭命令需要记住:打开sbin目录,双击rabbitmq-server.bat

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

访问http://localhost:15672

username:guest、Password:guest, 成功登陆即可

  5,修改settings.py配置文件

修改配置路径目录如下:修改:HttpRunnerManager/HttpRunnerManager/settings.py里BROKER_URL = 'amqp://guest:guest@127.0.0.1:5672//'将127.0.0.1替换成host

截图如下:

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

  6,安装工程所依赖的库文件-requirements.txt

命令行窗口执行pip install -r requirements.txt 安装工程所依赖的库文件,这个地方踩了一个坑,几次都是报错,问题就是依赖问题,解决方法:

生成requirements.txt文件
pip freeze > requirements.txt
安装requirements.txt依赖
pip install -r requirements.txt
如此,就安装成功了。

  7,生成数据库迁移脚本

这是一个大坑,正常的执行都会一直报错,我们看下大神些的:

命令行窗口切换到HttpRunnerManager目录,执行python manage.py makemigrations ApiManager 生成数据库迁移脚本。你在执行这个的时候,报错,信息如下:

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

解决方法,使用pycharm,直接安装插件flask-djcelery。如下图:

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

安装成功后如下:

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

本以为上面的问题解决后,就可以,可是又出现了一个幺蛾子。踩坑记录如下,先看报错:

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

这是一个非常令人痛苦的时间,当然解决方法也是有的,解决方法如下:

进入到你的源码路径下,我的是在:

路径如下:C:\HttpRunnerManager-master

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

cmd后进入C:\HttpRunnerManager-master目录下后,执行:pip install pymysql,如下图:

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

继续执行我们的 脚本:python manage.py makemigrations ApiManager

可是,执行之后又出现了错误,如下图:

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

解决方法二:

下载文件放到python安装的目录下:C:\Users\TieChui\AppData\Local\Programs\Python\Python37\Lib\site-packages  如下图:

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

下载地址:https://download.csdn.net/download/yelang_110/10806737

下载后,今日到该路径下的目录,一定要cd进入到你的python的site-packages路径下。

执行脚本:pip.exe install 你的文件名,如图

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

然后我们在执行我们的脚本:执行python manage.py makemigrations ApiManager 生成数据库迁移脚本。

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

  8,对数据库生成相应表结构

执行python manage.py migrate 对应HttpRunner数据库生成相应表结构。我们截图如下:

如下图:

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

  9,输入对应的后台账户密码

执行python manage.py createsuperuser 根据提示输入用户名,邮箱,密码。这里的密码就是刚才我们settings.py中配置的邮箱账户密码。如下

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

  10,执行python manage.py runserver,跑起来。

如下图:

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

此时注意启动命令:python manage.py runserver,要在cd:C:\HttpRunnerManager-master目录下执行。

python manage.py runserver 10.10.15.141:8000  #通过本地局域网IP访问请使用本条命令

-----------------------------------------------------------------------------------------------------------------------------------分割线---------------------------------------------------------------------------------------------

  11,shell或dos窗口切换到HttpRunnerManager目录执行脚本

执行脚本:python manage.py celery -A HttpRunnerManager worker --loglevel=info 启动worker

问题没有解决:报错如下:

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

12,shell或dos窗口切换到HttpRunnerManager目录执行:python manage.py celery beat --loglevel=info 开启定时任务配置

13,CLI窗口执行:celery flower 访问:http://localhost:5555/dashboard 即可查看任务列表和状态

备注:11,12,13这三个地方,开启定时任务和启动worker,目前我这边还是报错,后面有空再研究,如果有人知道这个地方,也可以告诉我,谢谢。

14,浏览器输入:http://127.0.0.1:8000/api/register/ 注册用户,开始享用

我没看下效果:

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

15,浏览器输入http://127.0.0.1:8000/admin/ 输入步骤6设置的用户名、密码,登录后台运维管理系统

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

当然,学习的路还没有结束,后面就要去使用这个工具了,先部署到这里,有问题可以给我留言,或者关注公众号留言。一起学习进步。

HttpRunnerManager接口自动化测试框架在win环境下搭建教程

HttpRunnerManager接口自动化测试框架在win环境下搭建教程的更多相关文章

  1. 关于基于python2.7的unity自动化测试框架GAutomator测试环境的搭建(源码网盘下载地址:https://pan.baidu.com/s/1c2TXwtU)

    关于基于python 2.7的unity自动化测试框架GAutomator测试环境的搭建 百度云盘链接(思维图学习资料):https://pan.baidu.com/s/1dFWExMD 准备工作(具 ...

  2. Solr6.0与Jetty、Tomcat在Win环境下搭建/部署

    摘要: Solr6的新特性包括增强的edismax,对SQL更好的支持--并行SQL.JDBC驱动.更多的SQL语法支持等,并且在Solr6发布以后,Solr5还在持续更新,对于想尝鲜Solr6的用户 ...

  3. HttpRunnerManager接口自动化测试框架测试报告页面优化

    在测试报告生成结果页面,点击左上角的图标不能快速返回到首页.在大神的指点下,要改一个跳转链接,如下图: 修改路径如下: 修改的字段:把<a href="#!" class=& ...

  4. 【转】robot framework &plus; python实现http接口自动化测试框架

    前言 下周即将展开一个http接口测试的需求,刚刚完成的java类接口测试工作中,由于之前犯懒,没有提前搭建好自动化回归测试框架,以至于后期rd每修改一个bug,经常导致之前没有问题的case又产生了 ...

  5. robot framework &plus; python实现http接口自动化测试框架

    https://www.jianshu.com/p/6d1e8cb90e7d 前言 下周即将展开一个http接口测试的需求,刚刚完成的java类接口测试工作中,由于之前犯懒,没有提前搭建好自动化回归测 ...

  6. 接口自动化&&num;160&semi;&lbrack;授客&rsqb;基于python&plus;Testlink&plus;Jenkins实现的接口自动化测试框架V3&period;0

    基于python+Testlink+Jenkins实现的接口自动化测试框架V3.0   by:授客 QQ:1033553122     博客:http://blog.sina.com.cn/ishou ...

  7. 基于python&plus;Testlink&plus;Jenkins实现的接口自动化测试框架V3&period;0

    基于python+Testlink+Jenkins实现的接口自动化测试框架V3.0 目录 1. 开发环境2. 主要功能逻辑介绍3. 框架功能简介 4. 数据库的创建 5. 框架模块详细介绍6. Tes ...

  8. 接口自动化&&num;160&semi;基于python实现的http&plus;json协议接口自动化测试框架源码(实用改进版)

    基于python实现的http+json协议接口自动化测试框架(实用改进版)   by:授客 QQ:1033553122 欢迎加入软件性能测试交流QQ群:7156436     目录 1.      ...

  9. Maven&plus;TestNG&plus;ReportNG&sol;Allure接口自动化测试框架初探(上)

    转载:http://www.51testing.com/html/58/n-3721258.html 由于一直忙于功能和性能测试,接口自动化测试框架改造的工作被耽搁了好久.近期闲暇一些,可以来做点有意 ...

随机推荐

  1. win7系统下 自带的定时关机

    进入cmd下,输入shutdown -s -t 600 以上例子代表的是10分钟后自动关机 -s代表定时关机 -t代表着定时,时间以秒为单位一分钟60s 输入完后按enter 定时关机设置完成 当想取 ...

  2. iOS 键盘遮挡输入 解决办法

    .初始化及添加通知观察者 - (void)viewDidLoad { [super viewDidLoad]; self.tableView = [[UITableView alloc] initWi ...

  3. 推荐一个sqlce&comma;sqllite等数据库管理工具

    推荐一个sqlce,sqllite等数据库管理工具 下载地址: http://fishcodelib.com/files/DatabaseNet4.zip 支持sqlserver,sqlce, sql ...

  4. 一个关于如何创建类似于QQ客户端聊天窗口的模拟小项目

    对于不久之前学习到的一个有关的类似于QQ聊天框的模拟项目,对其中涉及到的知识在这里做一下总结. 首先,你要先创建一个客户端聊天框(取名为:ChatClient,它是你创建的类),这个类继承了Frame ...

  5. python 时间字符串与日期转化

    python 时间字符串与日期转化 datetime.datetime.strptime(string, format) 根据指定的格式解析字符串为一个datetime类型.相当于datetime.d ...

  6. 使用zzip和minizip解压缩文件

    #include <zzip/zzip.h> #include <zlib.h> #include <zip.h> #include <unzip.h> ...

  7. How-to go parallel in R – basics &plus; tips(转)

    Today is a good day to start parallelizing your code. I’ve been using the parallel package since its ...

  8. 打印中文dict list的各种姿势

    在开发过程中,我们经常需要打印一些变量的值,便于调试.这个时候就会发现如果在dict list这些容器中,如果包含中文字符,不管是str类型,还是unicode类型,都打印不出来.如下: >&g ...

  9. asp&period;net core 使用NLog记录日志到txt文件

    一.使用VisualStudioCode创建一个webapi项目(也可以是mvc等).一个类库(用于封装记录日志方法,当然如果使用依赖注入到控制台项目,就不需要此类库了). 二.在类库中添加NLog. ...

  10. python 模块基础 和常用的模块

    模块的定义 一个模块就是以.py结尾的python 文件,用来从逻辑上组织python代码.注意,模块名和变量名一样开头不能用数字,可以是双下划线和字母. 为什么要用模块? 将一些复杂的需要重复使用的 ...