转载 https://testerhome.com/opensource_projects/37
接口测试平台从开始到放弃
python3.6.3 Django 2.0.2框架
github地址:https://github.com/githublitao/api_automation_test
体验地址: http://120.79.232.23/ 请体验用户不要删除已有数据
账号:admin 密码:admin369874125
版本更新:
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次测试结果