以前在学习HttpRunner时,咱们都是把用例写在 YAML/JSON
中进行维护,使用起来也很方便。其实,如今有很多大佬都喜欢开发自动化测试平台,好比咱们今天要搭建的HttpRunnerManager
,这就是已开发好的基于HttpRunner开发的接口自动化测试平台。css
Github地址:https://github.com/HttpRunner/HttpRunnerManagerhtml
虽然如今HttpRunnerManager的做者已经中止维护该平台了,但咱们仍能够经过搭建HttpRunnerManager来进一步学习,在平台搭建完成后,咱们可在平台上直接编写接口自动化测试用例。python
须要在Linux上提早准备的环境(下面是本人搭建时的环境):
1,Python 3.6.8 (可参考文章:Linux下安装Python3)
2,MySQL 5.7(可参考文章:Linux下安装MySQL 5.7 )mysql
首先,咱们直接到 Github
上下载 HttpRunnerManager
,把它下载到本地,或者经过 git 上直接 clone 。在这里,我是先直接下载压缩包。git
下载完成,解压后传到Linux服务器上,或者先传到Linux再经过 unzip
命令解压,最后,咱们获得以下内容:github
由于已经在Linux下安装了python3和pip3,所以这里直接经过 pip3 来安装便可。sql
安装命令:pip3 install -r requirements.txt数据库
输入命令安装后,等待安装完成。我在安装时遇到了以下错误:django
上面的报错是在安装 mysqlclient
时报错,在网上查了下,发现缘由是Linux系统在装mysql相关的包时要先装依赖包 mysql-devel
,所以咱们须要先安装 mysql-devel
,命令以下:vim
yum install mysql-devel
安装以后,再从新安装 requirements.txt
里的依赖包,就不会报错了。
接下来,咱们须要在MySQL上建立相应HttpRunner数据库,设置好相应用户名、密码,并启动MySQL。下面是我在 Windows 下经过 Navicat
链接MySQL后建立的数据库,名称为 hrun
。
建立完成,就能够不用管它了,后面会进行同步数据库,进而获得数据表结构。
修改 HttpRunnerManager/settings.py
配置文件里DATABASES字典,须要修改的地方(大约在settings.py中第120行左右):
咱们本次只修改数据库配置相关的内容,能够经过 vim 命令进行修改,修改以后以下(根据本身实际状况修改):
上面,咱们只是建立了一个名称为 hrun
的数据库,但这个数据库下没有任何数据表,如今,咱们将同步数据库获得数据表。须要先返回到 HttpRunnerManager 的根目录,在咱们这里也就是 HttpRunnerManager-master
目录下。
生成数据迁移脚本:python3 manage.py makemigrations ApiManager
应用到db生成数据表:python3 manage.py migrate
同步数据库完成以后,咱们再到 MySQL 中查看,能够发现 hrun
数据库下新增了不少数据表。
到这里,咱们基本的搭建工做已差很少完成。如今,咱们建立一个超级用户,并按提示输入相应用户名,密码,邮箱。该用户可用于管理后台数据。
建立后台用户:python3 manage.py createsuperuser
咱们还须要启动Django服务,Django默认端口通常是8000,启动服务的命令以下:
python3 manage.py runserver 0.0.0.0:8000
使用上面的命令,有一个不足的地方,那就是不能在后台运行,所以咱们最好经过后台运行的方式来启动Django服务,命令以下:
nohup python3 manage.py runserver 0.0.0.0:8000 >hrun.log 2>&1 &
HttpRunnerManager在后台运行的日志,将输出到 hrun.log
下。
在Linux下启动服务以后,咱们将在Windows下进行访问并登陆HttpRunnerManager,咱们须要检查一下 8000 等端口是否已开放,特别若是是在云服务器上搭建的环境,须要添加安全组规则,不然可能访问不到。
后台管理:http://ip地址:8000/admin/
注册界面:http://ip地址:8000/api/register/
后台运维管理登陆界面以下:
输入上一步骤建立的后台用户便可进行后台登陆,登陆后的界面以下:
HttpRunnerManager用户注册界面以下:
建立普通用户以后,切换到登陆界面,以下:
用户登陆成功后的主界面:
注意:在上面的主界面中,咱们发现界面的样式彷佛有些不对劲,这是由于咱们从Github上下载的源码有些问题,这里就须要手动修改一下了。
上面 templates/base.html
文件中第23行,须要修改一下,将 http://cdn.amazeui.org/amazeui/2.7.2/css/amazeui.min.css
替换为 http://cdn.bootcss.com/amazeui/2.7.2/css/amazeui.min.css
,替换以后,再次刷新页面,界面样式就正常了,最后显示的界面效果以下:
HttpRunnerManager中,异步执行、定时任务、任务监控等功能,须要搭建RabbitMQ消息中间件等,这些咱们在后续再进一步学习吧。
OK,如今咱们的HttpRunnerManager接口测试平台已经基本搭建成功了,除了异步执行、定时任务、任务监控等以外,其余的功能均可以使用了。