python接口测试框架django_开源~自研接口测试平台 Django2.0+Vue

接口测试平台从开始到放弃

python3.6.3 Django 2.0.2框架

版本更新:

v2.3

引入docker部署,由于采用的docker,基础镜像为centos,所以Windows下部署仍然可以使用定时任务

docker-compose up

v2.2

1.新增钉钉登录

https://ding-doc.dingtalk.com/doc#/serverapi2/kymkv6

1.先在钉钉开发平台上创建账号

2.替换dingConfig.py里的appid和APPSECRET

3.修改前段login.vue里的回调地址

V2.1.2

1.增加导出测试用例功能

V2.1.1

1.新增swaggerUI界面,访问地址127.0.0.1:8000/docs/

V2.1

1.优化前端代码,适配屏幕分辨率,未做浏览器兼容性,目前只在chrome上浏览正常

2.新增mock功能,api管理模块可启动,关闭mock,启动后,通过访问http://127.0.0.1:8000/mock/+url,可返回mock信息真实

V2.0

重构接口代码,引入反序列化方式,修改接口为基于类的方式,因修改大量后台接口代码,前端未更新,所以目前前端调用接口会出现大量问题,目前平台暂不可用,后续更新

项目结构:

目录简介:

项目介绍:

1.项目分为一个前台系统,一个后台管理系统,后台管理一些测试数据和用户数据,前台不提供注册,全部由后台创建用户

2.系统首页可创建,删除,修改项目

3.点击项目后,分为项目首页,测试地址管理,接口管理,自动化管理,项目动态,项目成员

4.接口管理中,提供类似postman的快速测试方式,录入的接口可进行测试,修改,查看测试记录,修改记录及删除;还可直接导出接口文档,后续引入新功能导入swagger的接口信息

5.自动化测试管理可直接从接口管理中导入接口信息,也可新建接口;单条用例内,后面的接口可关联前面接口的返回结果,前置条件是前面的接口校验方式选择json校验,并填写正确的json格式的数据。目前接口返回结果校验只提供5种方式,分别是不校验,校验HTTP状态,校验JSON格式,完全校验与正则校验。可手动测试生成测试报告。自动化测试需要部署在Linux环境下,使用的是crontab作为定时任务与循环任务,目前自动化测试报告的模板还在开发中。。。。

系统声明:

1.本系统采用Django REST framework编写接口,前端页面采用比较容易上手的vue+elementUI

2.初步学习web开发,接口统一采用基于方法的方式编写,后续引入权限系统,并修改成基于类的方法

使用方法:

1.安装Python3环境(未在Python2上运行后,不知道有没有问题)

2.下载代码到本地并解压

3.cmd到根目录下安装相关依赖包 pip install -r requirements.txt

pip install https://github.com/darklow/django-suit/tarball/v2

4.安装mysql数据库,配置数据库连接,进入api_automation_test/settings.py DATABASES = {

'default': {

# 'ENGINE': 'django.db.backends.sqlite3',

# 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),

'ENGINE':'django.db.backends.mysql', # 数据库类型,mysql

'NAME':'api_test', # database名

'USER':'root', # 登录用户

'PASSWORD':'123456', # 登录用户名

'HOST':'127.0.0.1', # 数据库地址

'PORT':'3306' # 数据库端口

}

}

5.cmd到根目录下,让 Django 知道我们在我们的模型有一些变更 python manage.py makemigrations

6.创造或修改表结构 python manage.py migrate

7.创建超级用户,用于登录后台管理 python manage.py createsuperuser

8.安装VUE环境,下载node.js并配置环境,下载npm包管理器,安装vue脚手架用于生成vue工程模板 npm install --global vue-cli

9.cmd进入frontend目录下,运行npm install安装相关依赖包

10.打包 npm run build

11.运行启动django服务 python manage.py runserver 0.0.0.0:8000

12.现在就可以访问 http://127.0.0.1:8000 进行登录, http://127.0.0.1:8000/admin 为后台管理平台(注:如果登录不了的话,可能是接口请求地址错误,修改api_automation_test/frontend/src/api/api.js 注释其他IP,保留127.0.0.1 export const test = 'http://127.0.0.1:8000';

项目讲解:

1、登陆,用户只能由后台创建

2、目前只开放了接口测试,所有只有项目列表页面,可完成项目的新增,删除,查询,修改,批量删除

3、后台管理页面,主要用作数据管理,及项目人员添加删除

4、下载后的接口文档模板

5、自动化测试生成的报告,保留最近10次测试结果

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

香蜜台词共赴鸿蒙,香蜜台词斗法

1、凤凰,我们,还能回到从前吗。回不去了,再也回不去了,或许,我们可以从头开始。我终究是不能,也不愿放你走,留在我身边,不要再骗我,否则,我真的会跟你共赴鸿蒙…

postgresql中装gis插件_PostgreSQL插件PostGIS安装

参考官网 http://postgis.net/PostGis版本2.5.31.安装libxml2# yum install libxml2 libxml2-devel2.安装json-c# tar zxvf json-c-json-c-0.13.1-20180305.tar.gz# cd json-c-json-c-0.13.1-20180305# ./configure && make && make install3.安装protobuf-c# …

html5svg在线编辑器,SVG to Canvas在线转换工具

https://github.com/samsha/svg2canvascanvg.js是的确实有人在做这样的事,canvg.js 就是一个将SVG转换成Canvas的工具库,甚至有些SVG的动画效果也能得到实现,但是canvg.js存在很多问题:不可避免的SVG兼容问题SVG是一种很复杂的矢量…

python3 上传文件到目标机器_通过python模块实现服务器和本地机器之间快速拷贝文件...

在实际的开发过程中,很多时候我们都不直接在本机上开发,一般都在远程服务器上开发并运行程序。比如三胖在实际开发中就会使用到很多台服务器:我有一台笔记本电脑,通过 ssh 连接着很多台服务器,我需要经常在不同的服务器…

android 拼图课程设计,拼图游戏设计_课程设计报告.docx

IlIlIlIl学号16082202032016-2017学年 第一学期《Windows程序设计》课程设计报告题目:拼图游戏设计专业:班级:姓名:指导教师:成绩:学院二0—六年十一月十五日TOC \o "1-5" \h \z \o "Current Document" 仁设计目的与要求31. 111 目白勺????…

android 能调用gcc_如何在命令行下使用Android NDK交叉编译工具

我们知道,在Linux下可以使用gcc来把一份C代码编译成为Linux上的可执行程序, 如:$ gcc -o main.out main.c而Android平台提供了NDK工具包来交叉编译可以运行于Android系统中的应用程序, 它需要我们编写 Android.mk来配置编译选项和编译目标, 那么, 能否也像gcc那样直接在命令行下…

鸿蒙系统有那些上市,鸿蒙上市整套系统究竟意味着什么

大家期待的鸿蒙系统已经上市,首先鸿蒙系统从自家的生态产品适配,大家熟知的华为笔记本,华为手机,华为平板,华为手表等,相比目前市场上的操作系统,IOS,安卓,微软Windows&a…

c# 时间格式化为英文_C# DateTime日期格式化

1. 分类DateTime调用ToString()传入的参数可分为制式和自定义两种:1) 制式:系统自带的,转入特定的单个字符就可转换为系统已设定好的格式。2) 自定义:自由组合日期代码(y、M、d、h、m、s、f)来展示丰富的日期格式。2. 制式类型说明…

html多个单元格合并单元格内容,excel怎样快速把多个单元格内容合并 合并多个单元格内容的设置方法...

excel是我们常用的办公软件,有时我们需要把多个单元个的内容合并到一个单元格里,那么excel怎样快速把多个单元格内容合并?下面小编带来合并多个单元格内容的设置方法,希望对大家有所帮助。合并多个单元格内容的设置方法&#xff1…

XP的用户账户使用了HTML界面,XP系统点击用户账户显示参数无效怎么办?WinXp下点击用户账户提示参数无效解决方案...

XP系统开机后,我们通常需要点击用户账户,然后输入账号密码后才能真正进入系统。不过,最近却有一些原因分析:WinXP用户帐户的主界面是一个基于HTML界面的程序,例如“用户帐户”中的“更改用户登录和注销的方式”等菜单&…

mysql5.5客户端_MySQL 5.5/5.6——概述 MySQL 客户端程序

本文内容 mysqlmysqladminmysqlcheckmysqldumpmysqlimportmysqlshowmysqlslap参考资料mysqlmysql 是一个可以输入行的 SQL 外壳,输入行可以编辑。它支持交互和非交互。当使用交互式,查询结果以一个 ASCII 表格式来显示。当使用非交互时(例如,…

mysql timestamp类型比较_MySQL timestamp 类型比较的测试

TIMESTAMP 类型字段与 CHAR 比较:BEGIN#Routine body goes here...DECLARE rdToday CHAR(10) DEFAULT CURDATE();DECLARE rdBegin CHAR(19) DEFAULT CONCAT(rdToday, 00:00:00);DECLARE rdEnd CHAR(19) DEFAULT CONCAT(rdToday, 23:59:59);SELECT mdc_ordertime FROM mz_drugre…

按网络中计算机所处的,按照网络中计算机所处的地位划分,计算机网络包括

按照网络中计算机所处的地位划分,计算机网络包括更多相关问题与横道计划相比,网络计划具有的主要特点有()等。A.网络计划能够明确表达各项工作之间的逻辑关系某新建项目包含多个单项工程,则该项目新增固定资产的计算应以()为对象。A.建设项目…

第一次使用mysql_第一次使用mysql,求帮忙

我用的是navicate,怎么把里面的数据库备份出来放到另外一个服务器里面啊,那个里面也装的是navicate回复讨论(解决方案)没用过navicate,它是一个图形化工具,应该有导入导出的按钮,找找看。没用过navicate,它是一个图形化…

计算机专业的求职信英文作文,计算机专业本科英文求职信范文

计算机专业本科英文求职信范文2017-07-24Dear leaders:Hello!First of all I would like to thank you through my自荐信busy, give me a chance to show themselves.I am a 2004 session of computer science graduates, in纵跨the threshold of the school and the community…

mac 如何配置mysql_MAC下安装与配置MySQL

一 下载MySQL访问MySQL的官网http://www.mysql.com/downloads/ 然后在页面中会看到“MySQL Community Server”下方有一个“download”点击。进入MySQL的下载界面(http://www.mysql.com/downloads/mysql/),如果你是用的Mac OS来访问的话那么就会默认为你选好了Mac O…

计算机专硕专业课难度,计算机考研:20考研的408难度如何?

原标题:计算机考研:20考研的408难度如何?2020年对于计算机考研来说风云突变的一年,去年夏天“专业课改考”一度成为计算机考研小伙伴们之间的热词。不少院校或改变、或增加专业课科目,借此提高专业课难度,增…

windows mysql4.1安装_Windows下,MySql的安装及配置(Install and Config of MySQL in Windows)...

电脑重新换了系统,需要安装MySQL。以前用MySQL的时候,从来没有详细配置过,这次从网上找了些资料,好好的配置了一下MySQL。发现以前见表的时候不能存储中文字段需要各处改的问题,其实在初始配置的时候都能解决掉的。OK&…

barrons ap计算机科学,巴朗ap心理学barrons ap psychology, 5th edition-201-240.pdf

巴朗ap心理学barrons ap psychology, 5th edition-201-240.pdf (C)Arousaltheorydescribesmotivationbyreferringtostagesinourresponsestostress(thegeneraladaptationsyndrome).Achievementmotivationisnotusedtodescribemotivationduetostress.(D)Apersonwithalowoptimumlev…

mysql数据超10亿条,大型主键:超过10亿行MySQL + InnoDB?

I was wondering if InnoDB would be the best way to format the table? The table contains one field, primary key, and the table will get 816k rows a day (est.). This will get very large very quick! Im working on a file storage way (would this be faster)? T…