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


        近几日一直在研究如何把接口自动化做的顺畅,目前用的是轻量级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,下载后的解压的目录如下:

      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)

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

       4,rabbitmq消息中间件的安装

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

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

    访问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

    截图如下:

      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 生成数据库迁移脚本。你在执行这个的时候,报错,信息如下:

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

    安装成功后如下:

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

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

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

    路径如下:C:HttpRunnerManager-master

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

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

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

    解决方法二:

    下载文件放到python安装的目录下:C:UsersTieChuiAppDataLocalProgramsPythonPython37Libsite-packages  如下图:

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

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

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

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

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

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

    如下图:

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

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

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

    如下图:

    此时注意启动命令: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

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

     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/ 注册用户,开始享用

    我没看下效果:

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

     

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

  • 相关阅读:
    Bonding
    负载均衡
    XML
    wireshark
    IE
    轨迹系列7——Socket总结及实现基于TCP或UDP的809协议方法
    轨迹系列6——车载GPS对接方案汇总小结(809、自定义协议、前置库、WS)
    基于R树索引的点面关系判断以及效率优化统计
    WebGIS中以version方式实现代码更新后前端自动读取更新代码的方法
    轨迹系列5——验证轨迹GPS坐标转换为本地坐标的四/七参数是否准确的一种方案
  • 原文地址:https://www.cnblogs.com/tiechui2015/p/10017801.html
Copyright © 2020-2023  润新知