如何在Linux下搭建接口自动化测试平台

我们今天来学习一下在Linux下如何搭建基于HttpRunner开发的接口自动化测试平台吧!

需要在Linux上提前准备的环境(下面是本人搭建时的环境):

1,Python 3.6.8 

2,MySQL 5.7

一:下载HttpRunnerManager源码

我们直接到 Github 上下载 HttpRunnerManager ,把它下载到本地,

Github地址:https://github.com/HttpRunner/HttpRunnerManager

二:下载完成,解压后传到Linux服务器上

三:安装 requirements.txt 里的依赖包,在HttpRunnerManager-master目录下输入以下命令:

1

pip3 install -r requirements.txt

四:MySQL上创建HttpRunner数据库

在Windows下通过Navicat连接MySQL后创建的数据库,名称为 hrun

五:修改配置文件,修改 HttpRunnerManager/settings.py 配置文件里DATABASES字典

1

vim settings.py <br>:wq

根据实际情况修改即可

六:同步数据库

上面,我们只是创建了一个名称为 hrun 的数据库,但这个数据库下没有任何数据表,现在,我们将同步数据库得到数据表。需要先返回到 HttpRunnerManager 的根目录,也就是 HttpRunnerManager-master 目录下。

生成数据迁移脚本:

1

python3 manage.py makemigrations ApiManager

应用到db生成数据表:

1

python3 manage.py migrate

同步数据库完成之后,我们再到 MySQL 中查看,可以发现 hrun 数据库下新增了很多数据表。

七:创建后台管理员用户

创建一个超级用户,并按提示输入相应用户名,密码,邮箱。该用户可用于管理后台数据

1

python3 manage.py createsuperuser

八:启动Django服务

1

nohup python3 manage.py runserver 0.0.0.0:8000 >hrun.log 2>&1 &

HttpRunnerManager在后台运行的日志,将输出到 hrun.log 下。

九:登录HttpRunnerManager

在Linux下启动服务之后,我们将在Windows下进行访问并登录HttpRunnerManager,我们需要检查一下 8000 等端口是否已开放,

如果是在云服务器上搭建的环境,需要添加安全组规则,否则可能访问不到。

后台管理:http://ip地址:8000/admin/

注册界面:http://ip地址:8000/api/register/

后台运维管理登录界面如下:

输入上一步骤创建的后台用户即可进行后台登录,登录后的界面如下:

HttpRunnerManager用户登录界面如下:

用户登录成功后的主界面:

十:修改样式

1

2

cd templates/

vim base.html

在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消息中间件等

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/263759.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

用数码管慢速动态扫描显示数字“1234“

#include<reg51.h> // 包含51单片机寄存器定义的头文件 void delay(void) //延时函数&#xff0c;延时一段时间 { unsigned char i,j; for(i0;i<250;i) for(j0;j<250;j) ; } void main(void) { while(1) //无限循…

AI绘画中CLIP文本-图像预训练模型

介绍 OpenAI 在 2021 年提出了 CLIP&#xff08;Contrastive Language–Image Pretraining&#xff09;算法&#xff0c;这是一个先进的机器学习模型&#xff0c;旨在理解和解释图像和文本之间的关系。CLIP 的核心思想是通过大规模的图像和文本对进行训练&#xff0c;学习图像…

(自适应手机版)英文外贸网站模板 - 带三级子目录

(自适应手机版)英文外贸网站模板 - 带三级子目录 PbootCMS内核开发的网站模板&#xff0c;该模板适用于外贸网站、英文网站类等企业&#xff0c;当然其他行业也可以做&#xff0c;只需要把文字图片换成其他行业的即可&#xff1b; 自适应手机版&#xff0c;同一个后台&#x…

STM32的以太网外设+PHY(LAN8720)使用详解(3):PHY寄存器详解

0 工具准备 1.野火 stm32f407霸天虎开发板 2.LAN8720数据手册 3.STM32F4xx中文参考手册1 PHY寄存器 前面介绍到&#xff0c;站管理接口&#xff08;SMI&#xff09;允许应用程序通过2线时钟和数据线访问任意PHY寄存器&#xff0c;同时该接口支持访问最多32个PHY&#xff0c;也…

探讨APP自动化测试工具的重要性

随着移动应用市场的蓬勃发展&#xff0c;企业对于保证其移动应用质量和用户体验的需求日益迫切。在这一背景下&#xff0c;APP自动化测试工具正变得越来越重要&#xff0c;成为企业成功的关键组成部分。本文将探讨APP自动化测试工具对企业的重要性&#xff0c;并为您解析其在提…

python中整数和浮点数的运算

任意两个数相除时&#xff0c;结果总是浮点数&#xff0c;即便这两个数能够整除。例如&#xff1a; 在任何运算中&#xff0c;只要有操作数是浮点数&#xff0c;结果总是浮点数。例如&#xff1a;

DshanMCU-R128s2 ADC 按键配置方法

FreeRTOS平台上使用的按键为ADC-KEY&#xff0c;采用的ADC模块为GPADC。 按键功能驱动的实现是通过ADC分压&#xff0c;使每个按键检测的电压值不同&#xff0c;从而实现区分不同的按键。按下或者弹起中断之后&#xff0c;通过中断触发&#xff0c;主动检测当前电压识别出对应…

STM32的以太网外设+PHY(LAN8720)使用详解(4):STM32管脚配置

0 工具准备 1.野火 stm32f407霸天虎开发板 2.LAN8720数据手册 3.STM32F4xx中文参考手册1 MCU管脚配置 1.1 使能外设相关时钟 STM32配置任何外设的第一步都是使能相关的外设时钟&#xff0c;根据前面的原理图我们需要使能相关的引脚时钟&#xff0c;同时我们需要使能SYSCFG时…

Linux服务器nginx部署Vue前端(详细版)

提示&#xff1a;适用于前后端项目的部署 文章目录 前言一、打包前端文件二、下载和部署Nginx三、配置conf文件启动nginx 前言 搜索到这篇文章想必你已经对Nginx比较了解&#xff0c;我也不对Nginx进行介绍赘述了&#xff0c;只需要明白Nginx本身也是一个静态资源的服务器&…

postman几种常见的请求方式

1、get请求直接拼URL形式 对于http接口&#xff0c;有get和post两种请求方式&#xff0c;当接口说明中未明确post中入参必须是json串时&#xff0c;均可用url方式请求 参数既可以写到URL中&#xff0c;也可写到参数列表中&#xff0c;都一样&#xff0c;请求时候都是拼URL 2&am…

LeetCode-17 电话号码的字母组合

LeetCode-17 电话号码的字母组合 给定一个仅包含数字 2-9 的字符串&#xff0c;返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下&#xff08;与电话按键相同&#xff09;。注意 1 不对应任何字母。 示例 1&#xff1a; 输入&#xff1a;d…

opencv入门到精通——OpenCV4.1.2之性能衡量与优化方法

目录 目标 使用OpenCV衡量性能 OpenCV中的默认优化 在IPython中衡量性能 更多IPython魔术命令 性能优化技术 目标 在图像处理中&#xff0c;由于每秒要处理大量操作&#xff0c;因此必须使代码不仅提供正确的解决方案&#xff0c;而且还必须以最快的方式提供。因此&#…

Python中__getitem__的奇妙应用

更多资料获取 &#x1f4da; 个人网站&#xff1a;ipengtao.com 理解 __getitem__ 方法 1 基本概念 在Python中&#xff0c;__getitem__ 是一个重要的魔法方法&#xff0c;用于实现对象的索引访问。当使用类似 obj[index] 的方式访问对象时&#xff0c;Python 解释器会自动调…

C#线程Thread的使用

引言 在C#编程语言中&#xff0c;线程是一种并发执行的机制&#xff0c;可以实现多个任务同时执行&#xff0c;提高程序的效率和响应能力。C#提供了Thread类来处理线程相关的操作。本文将详细介绍C#中Thread类的使用方法和注意事项。 目录 引言线程的基本概念线程&#xff08;…

SoapUI、Jmeter、Postman三种接口测试工具的比较分析!

前段时间忙于接口测试&#xff0c;也看了几款接口测试工具&#xff0c;简单从几个角度做了个比较&#xff0c;拿出来与诸位分享一下。本文从多个方面对接口测试的三款常用工具进行比较分析&#xff0c;以便于在特定的情况下选择最合适的工具&#xff0c;或者使用自己编写的工具…

Selenium Web自动化实践案例,跟着敲代码真香

1 项目背景 https://passport.csdn.net/login CSDN登录页面 2 功能实现 自动运行用例 自动生成测试报告 自动断言与截图 自动将最新测试报告发送到指定邮箱 数据&#xff0c;页面元素分离 PageObjectUnittestddt数据驱动用例 执行日志、分布式执行 3 项目架构…

多线程同步之:QWaitCondition

一、 QWaitCondition 不是通过 强制执行互斥&#xff0c;而是通过提供 条件变量 来同步线程。 1.1 使用 互斥量 和 QReadWriteLock&#xff0c;存在的一个问题 1.2 QWaitConditionQMutex 1.3 1.4 消费者线程先启动 2个线程启动的先后顺序不应调换&#xff1a;用先启动thread…

从零开发短视频电商 在AWS上用SageMaker部署自定义模型

文章目录 简介使用model.tar.gz1.从huggingface上下载模型2.自定义代码3.打包为tar 文件4.上传model.tar.gz到S35.部署推理 使用hub1.在sagemaker上新建个jupyterlab2.上传官方示例ipynb文件3.指定HF_MODEL_ID和HF_TASK进行部署和推理 inference.py官方示例 简介 原始链接&…

【RocketMQ每日一问】rocketmq事务消息原理?

rocketmq事务消息原理&#xff1f; RocketMQ的事务消息主要由三部分组成&#xff1a;半消息&#xff08;Half Message&#xff09;、执行本地事务和事务补偿机制。下面详细介绍这三部分&#xff1a; 半消息&#xff08;Half Message&#xff09;用户向RocketMQ发送半消息&…

基于ssm的星巴克咖啡店管理系统论文

基于ssm的星巴克咖啡店管理系统 摘要 当下&#xff0c;正处于信息化的时代&#xff0c;许多行业顺应时代的变化&#xff0c;结合使用计算机技术向数字化、信息化建设迈进。以前星巴克咖啡店对于咖啡信息的管理和控制&#xff0c;采用人工登记的方式保存相关数据&#xff0c;这…