接口自动化测试平台-HttpRunnerManager-简介与安装部署

2022-07-25 14:05:59 浏览数 (2)

简介与安装部署

目录

  • 1、简介
  • 2、安装部署
    • 2.1、Python
      • 2.1.1、压缩包安装
      • 2.1.2、在线安装
      • 2.1.3、可执行程序安装
    • 2.2、MySQL
      • 2.2.1、安装MySQL
      • 2.2.2、配置MySQL
      • 2.2.3、启动MySQL
      • 2.2.4、登录MySQL
      • 2.2.5、创建数据库
    • 2.3、Erlang
      • 2.3.1、安装Erlang
      • 2.3.2、配置Erlang
    • 2.4、RabbitMQ
      • 2.4.1、安装RabbitMQ
      • 2.4.2、激活RabbitMQ管理插件
      • 2.4.3、启动RabbitMQ
    • 2.5、HttpRunnerManager
      • 2.5.1、安装HttpRunnerManager
      • 2.5.2、配置HttpRunnerManager
      • 2.5.3、安装依赖库
      • 2.5.4、生成数据表
      • 2.5.5、创建超级用户

HttpRunnerManager项目已停止维护,之前在公司的项目中落地过,而且使用很长时间,虽然有些小BUG,但整体功能已经满足项目组的工作需求(接口自动化测试)。

1、简介

HttpRunnerManager基于HttpRunner,是对HttpRunner的包装和Web图形化。

主要特点:

(1)项目管理:新增项目、项目列表及相关操作,支持用例批量上传(标准化的HttpRunner json和yaml用例脚本)。

(2)模块管理:为项目新增模块,用例和配置都归属于module,module和project支持同步和异步方式。

(3)用例管理:为模块新增用例,用例列表可管理与执行用例。

(4)运行方式:可单个test,单个module,单个project,也可选择多个批量运行,支持自定义测试计划,运行时可以灵活选择配置和环境。

(5)分布执行:单个用例和批量执行结果会直接在前端展示,测试套件和定时任务执行可选择为同步或者异步方式。

(6)系统设置:可添加运行环境,运行用例时可以一键切换环境。

(7)报告查看:所有异步执行的用例均可在线查看报告,可自主命名,为空默认时间戳保存。

(8)定时任务:可设置定时任务,遵循crontab表达式,可在线开启、关闭,完毕后支持邮件通知。

官方网址:https://github.com/HttpRunner/HttpRunnerManager

2、安装部署

在Windows环境(64位)下进行安装部署。

本章接口请求链接使用moco生成。

如图所示:需要用到moco包和Json配置文件(已经配置完成)。

启动moco服务:

打开moco所在目录,鼠标双击启动moco服务.bat文件即可。

如图所示:moco服务开启,就可以使用接口请求链接了。

2.1、Python

Python是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。

Python是纯粹的自由软件,源代码和解释器CPython遵循GPL(GNU General Public License)协议。Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进。相比于C 或Java,Python让开发者能够用更少的代码表达想法。不管是小型还是大型程序,该语言都试图让程序的结构清晰明了。

打开官网:https://www.python.org

点击Downloads--->Windows

本章使用Python 3(Python 3.6.5),所以这里点击Python 3.6.5

鼠标向下翻到Files区域,Windows为64位,所以这里讲解Python 64位安装。

下载相应的文件,安装方式有三种(任选一种即可,推荐可执行程序安装方式)

Windows x86-64 embeddable zip file(嵌入式的zip文件,解压后需配置环境变量)

Windows x86-64 executable installer(可执行程序,执行安装)

Windows x86-64 web-based installer(在线安装,执行安装需要联网)

2.1.1、压缩包安装

1、将下载的python-3.6.5-embed-amd64.zip文件解压到需要安装的目录上,例如D盘,并命名为Python3.6.5。

2、配置环境变量

鼠标选中我的电脑右键,点击属性--->高级系统设置--->高级--->环境变量。

点击环境变量,系统变量里:

修改Path,点击编辑,在变量值最后添加 ;D:Python3.6.5

确定后,打开命令行,输入python,提示以下信息表示Python安装成功且环境变量配置成功。

2.1.2、在线安装

1、执行下载后的python-3.6.5-amd64-webinstall.exe文件。

2、勾选Add Python 3.6 to PATH(添加环境变量),之后点击Customize installation(自定义安装)。

3、点击Next。

4、例如安装到D:Python36目录下,之后点击Install,进行在线联网安装。

5、安装完成,点击Close即可。

6、打开命令行,输入python,提示以下信息表示Python安装成功且环境变量配置成功。

2.1.3、可执行程序安装

1、执行下载后的python-3.6.5-amd64.exe文件。

2、勾选Add Python 3.6 to PATH(添加环境变量),之后点击Customize installation(自定义安装)。

3、点击Next。

4、例如安装到D:Python36目录下,之后点击Install,进行安装。

5、安装完成,点击Close即可。

6、打开命令行,输入python,提示以下信息表示Python安装成功且环境变量配置成功。

2.2、MySQL

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle旗下产品。MySQL是最流行的关系型数据库管理系统之一,在WEB应用方面,MySQL是最好的 RDBMS(Relational Database Management System,关系数据库管理系统)应用软件。

MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。

由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。

官方网址:https://www.mysql.com/

2.2.1、安装MySQL

下载地址:https://dev.mysql.com/downloads/

点击MySQL Community Server进入下载页面,点击Download。

点击No thanks, just start my download.即可下载。

MySQL下载完成。

将下载的mysql-8.0.13-winx64.zip进行解压,例如解压到D:mysql-8.0.13。

2.2.2、配置MySQL

1、配置环境变量:

鼠标选中我的电脑右键,点击属性--->高级系统设置--->高级--->环境变量。

点击环境变量,系统变量里:

修改Path,点击编辑,在变量值最后添加 ;D:mysql-8.0.13bin

2、在MySQL安装目录下创建my.ini配置文件。

my.ini配置文件内容:

代码语言:javascript复制
[client]
# 设置MySQL客户端默认字符集
default-character-set=utf8
 
[mysqld]
# 设置密码永不过期的全局策略
default_password_lifetime=0
# 设置3306端口
port=3306
# 设置MySQL的安装目录
basedir=D:mysql-8.0.13
# 设置MySQL的数据存放目录
datadir=D:mysql-8.0.13data
# 允许最大连接数
max_connections=2000
# 服务端使用的默认字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 认证方式
default_authentication_plugin=mysql_native_password
# 服务器关闭非交互连接之前等待活动的秒数
wait_timeout=28800000
# 服务器关闭交互式连接前等待活动的秒数
interactive_timeout=28800000
# 最大允许数据量
max_allowed_packet=500M
# 禁用DNS解析
skip-name-resolve

2.2.3、启动MySQL

以管理员身份打开cmd命令行工具,切换目录到bin目录下,输入命令:

初始化数据库mysqld --initialize --console

执行完成后,会输出root用户的默认初始密码,如:

2018-11-02T02:17:17.094636Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: kwd#dorXa6K)

kwd#dorXa6K) 就是默认初始密码,后续登录需要用到,也可以在登陆后修改密码。

输入安装命令mysqld install

鼠标选中我的电脑右键,点击管理--->服务和应用程序--->服务,可以看到MySQL服务。

启动MySQL服务输入以下命令即可net start mysql

2.2.4、登录MySQL

当MySQL服务已经运行时,我们可以通过MySQL自带的客户端工具登录到MySQL数据库中,首先打开命令行,输入以下格式的命令:

mysql -h 主机名 -u 用户名 -p

参数说明:

-h:指定客户端所要登录的MySQL主机名,登录本机(localhost或127.0.0.1)该参数可以省略。

-u:登录的用户名。

-p:告诉服务器将会使用一个密码来登录,如果所要登录的用户名密码为空,可以忽略此选项。

例如我们要登录本机的MySQL数据库,只需要输入以下命令即可:

mysql -u root -p

或者

mysql -u root -p -h localhost -P 3306

mysql -u root -p -h 127.0.0.1 -P 3306

之后输入密码即可登录。

修改root用户的密码(密码修改为123456)。

alter user 'root'@'localhost' identified by '123456';

注意:

此时可以使用第三方工具连接MySQL数据库,如果出现无法连接MySQL可能有以下原因,MySQL 8.0不同于之前版本。

MySQL 8.0之前版本加密规则是mysql_native_password

MySQL 8.0之后版本加密规则是caching_sha2_password

解决方法:把MySQL用户登录密码加密规则还原成mysql_native_password。

输入命令:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

FLUSH PRIVILEGES;

2.2.5、创建数据库

创建数据库HttpRunnerManager

CREATE DATABASE HttpRunnerManager;

显示当前数据库列表,可以看到HttpRunnerManager库创建成功。

SHOW DATABASES;

2.3、Erlang

Erlang是一种通用的面向并发的编程语言,它由瑞典电信设备制造商爱立信所辖的CS-Lab开发,目的是创造一种可以应对大规模并发活动的编程语言和运行环境。Erlang问世于1987年,经过十年的发展,于1998年发布开源版本。Erlang是运行于虚拟机的解释性语言,但是现在也包含有乌普萨拉大学高性能Erlang计划(HiPE)开发的本地代码编译器,自R11B-4版本开始,Erlang也开始支持脚本式解释器。在编程范型上,Erlang属于多重范型编程语言,涵盖函数式、并发式及分布式。顺序执行的Erlang是一个及早求值, 单次赋值和动态类型的函数式编程语言。

消息队列RabbitMQ是由Erlang编写,所以搭建RabbitMQ的环境需要先有Erlang的开发环境。

官方网址:http://www.erlang.org/

2.3.1、安装Erlang

下载地址:http://www.erlang.org/downloads

下载完成后,默认安装即可。

2.3.2、配置Erlang

配置环境变量

鼠标选中我的电脑右键,点击属性--->高级系统设置--->高级--->环境变量。

点击环境变量,系统变量里:

(1)点击新建,变量名填写 ERLANG_HOME

变量值填写 C:Program Fileserl10.1

(2)修改Path,点击编辑,在变量值最后添加 ;%ERLANG_HOME%bin

确定后,打开命令行,输入erl -version,提示以下信息表示Erlang安装成功且环境变量配置成功。

2.4、RabbitMQ

RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。RabbitMQ主要是为了实现系统之间的双向解耦而实现的。当生产者大量产生数据时,消费者无法快速消费,那么需要一个中间层,保存这个数据。

AMQP(Advanced Message Queuing Protocol),高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。

RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如:Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMP等,支持AJAX。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。

官方网址:http://www.rabbitmq.com/

2.4.1、安装RabbitMQ

下载地址:http://www.rabbitmq.com/download.html

下载完成后,RabbitMQ默认安装即可(例如安装到D:RabbitMQ Server)。

默认安装的RabbitMQ端口号:

4369:erlang发现口

5672:client端通信口

15672:管理界面ui端口

25672:server间内部通信口

2.4.2、激活RabbitMQ管理插件

激活RabbitMQ管理插件,可以更好的可视化方式查看RabbitMQ服务器实例状态。

打开命令行进入到安装目录下的sbin目录。

输入命令rabbitmq-plugins.bat enable rabbitmq_management

2.4.3、启动RabbitMQ

管理员模式运行命令行,输入重启服务命令net stop RabbitMQ && net start RabbitMQ

之后访问地址:http://localhost:15672/#/

Username为guest,Password为guest,点击Login进行登录即可。

如图所示:登录成功。

2.5、HttpRunnerManager

2.5.1、安装HttpRunnerManager

下载地址:https://codeload.github.com/HttpRunner/HttpRunnerManager/zip/master

下载完成后,进行解压(例如D:HttpRunnerManager)。

2.5.2、配置HttpRunnerManager

1、HttpRunnerManager/HttpRunnerManager/settings.py文件,修改DATABASES字典和邮件发送账号。

DATABASES(数据库信息以实际部署为准):

邮件发送账号(邮箱信息以实际使用为准):

2、HttpRunnerManager/HttpRunnerManager/settings.py文件,修改worker相关配置。

2.5.3、安装依赖库

1、安装目录下,命令行执行命令pip install -r requirements.txt安装工程所依赖的库文件。

requirements.txt文件内容:

代码语言:javascript复制
Django == 2.0.3
PyYAML == 3.12
requests == 2.18.4
eventlet == 0.22.1
django-celery == 3.2.2
flower == 0.9.2
dwebsocket == 0.4.2
paramiko == 2.4.1
HttpRunner == 1.5.8

2、之后安装mysqlclient,mysqlclient版本为1.3.13。

下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient

下载指定版本,cp36代表Python 3.6的版本,win_amd64代表64位的系统,所以需要选择正确,否则安装过程会报错平台不匹配。

下载完成后,命令行进入安装文件所在路径,运行mysqlclient安装命令。

pip install mysqlclient-1.3.13-cp36-cp36m-win_amd64.whl

2.5.4、生成数据表

命令行窗口切换到HttpRunnerManager目录。

生成数据迁移脚本python manage.py makemigrations ApiManager

应用到db生成数据表python manage.py migrate

此时可以看到HttpRunnerManager库中生成相应的表。

2.5.5、创建超级用户

超级用户可以后台管理数据库,输入命令python manage.py createsuperuser

按提示输入用户名,邮箱,密码,确认密码。如不需用,可跳过此步骤。

如图所示:数据库中可以查询到刚创建的超级用户(admin)。

0 人点赞