同步操作将从 scu-zrb/interface_test_platform 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
BTest是一个接口测试平台, 能帮助用户高效快捷地完成接口自动化用例的开发, 覆盖较为复杂的流程接口场景. 它是我个人业余时间开发的, 难免有不少BUG. 类似这样的平台, 网上已经有很多, 那为什么还要开发这个呢.
在此之前, 实际工作中我基于开源项目HttpRunnerManager做了一些补充性和优化性的二次开发, 渐渐有了自己写个测试平台的想法: 一是为了分享自己的经验和想法,希望能帮助到测试人员更有效的完成工作;二是实践自己的想法, 当是练手.
本平台基于django restframwork和vue+iview开发, 驱动框架使用httprunner(1.5.8)
强烈建议使用平台前先了解httprunner的基本用法
项目结构
目录说明: 前端代码放在后端代码根目录中
npm install -g cnpm --registry=https://registry.npm.taobao.org
cnpm install --global vue-cli
cnpm install
npm run dev
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'dbname', # 数据库名
'USER': 'root', # 用户名
'PASSWORD': '123456', # 密码
'HOST': '127.0.0.1', # 数据库ip
'PORT': '3306', # 端口默认3306即可
}
}
EMAIL_SERVER = 'smtp.qq.com' # 邮箱服务器
EMAIL_PORT = 465 # 邮箱服务器端口
EMAIL_SENDER = '123456789@qq.com' # 发件人
EMAIL_PASSWORD = '' # 发件人密码
# 如果没启动使用下面命令
net start RabbitMQ
python -m venv venvName
venvName/Scripts/activate.bat
pip install -r require.txt
# kumbo库中使用了保留关键字async,与python3.7存在冲突,worker无法运行.
考虑下面三种方式:
1.py<=3.6,则不需要修改任务celery相关内容
-----------------------------------------------------------
2.py>=3.7,手动修改kumbo.async包名,再修改celery中相关引用项(未修改运行会报错,挨个改)
-----------------------------------------------------------
3.py>=3.7,命令升级celery库(升到4.x,不确定celery beat任务实时更新是否有效,未验证):
pip install --upgrade https://github.com/celery/celery/tarball/master
-----------------------------------------------------------
# 更新httprunner,把工程根目录下httprunner_update目录的文件全部替换到当前环境三方包httprunner目录下,对1.5.8版本httprunner做了几处优化.
1.引用函数时参数可以使用python多数数据类型
详情见 https://www.jianshu.com/p/2b83c1216f57
-----------------------------------------------------------
2.结果提取失败可返回用户定义的默认值
详情见 https://www.jianshu.com/p/c31a803f1f6a
java -jar moco-runner-X.X.X-standalone.jar http -p 8899 -c mock_data/settings.json
python manage.py makemigrations # 生成数据迁移脚本
python manage.py migrate # 创建表
python manage.py runserver 9999
celery -A AutoTest worker -l info #启动worker
celery -A AutoTest beat -l info #启动任务监听
# 上面两命令可以合并: celery -A AutoTest worker -l info -B
celery flower #启动任务后台
注册新用户,成功后自动登录跳转,前台只能注册为普通用户.而管理员用户可以通过admin后台创建或修改.
首页为数据面板,菜单按测试管理-数据管理-报告管理,划为三个模块
平台按项目-模块-用例的层级管理,要依次创建对应的条目
多数模块都提供了搜索栏
项目/模块/用例均提供了批量运行的方式, 而用例也可以单独运行和快速调试
debugtalk页面, 为每个项目绑定一份自定义函数或变量(下版本改为多项目共用debugtalk), 可在线编辑, 遵循python语法.
用例嵌套引用/快速调试/结果一键提取
添加及触发任务
数据管理, 提供多种形式保存用例数据, 做到数据与用例分离的目的
MOCK服务基于moco运行
测试报告及邮件
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。