1 Star 2 Fork 2

飞翔的心 / SMART_Best

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

特别说明

  • 1.当前系统存在很多不稳定性和bug,后续会持续修复和升级
  • 2.如有更好ideas的小伙伴可以积极提出需求,争取把SMARTBest做的更好,服务于更多的中小互联网企业质量保障团队
演示地址(服务配置较差,请善待):http://101.34.153.134/#/login 账号/密码请直接默认登录

1、展示与简介

平台界面展示

avatar

编写一条测试用例并执行调试

avatar

执行场景的调试

avatar

开启测试任务

avatar

2、概述

愿景:做最简单、最有效、最务实的接口自动化测试平台

使用注意事项

  • 为保障更好的页面兼容性请使用chrome内核的浏览器打开,常见的浏览器有360,chrome等

SMART_Best支持哪些功能?

  • 接口调试,向PostMan一样顺畅
  • 场景化的接口测试、调试、断言等
  • 支持数据驱动、条件控制器、循环控制器等3中模式的数据逻辑控制器件
  • 支持定时任务
  • 清晰的测试报告,问题一目了然

SMART_Best未来的目标和计划

  • 1.核心主旨仍然将专注于零代码的接口自动化测试,在此基础上不断完善各类逻辑控制器件和断言方式,完善对各类复杂业务场景的自动化测试支持
  • 2.完善对CI/CD的支持,助力质量卡点的实现
  • 3.强化测试报告和统计数据部分,让团队协作更加透明,让管理可更方便的量化
  • 4.不断优化用户体验

SMART_Best的优点

  • 1.编辑、维护、执行、debug、汇报结果、定时任务等一体化操作,化零为整,一站式搞定自动化测试
  • 2.零代码,快速上手,人人都可以无门槛地参与到自动化测试中来
  • 3.一站式、团队协作化的自动化测试平台,助力您健步如飞,请忘记'版本快速迭代,接口天天都在变'的烦心事
  • 4.分离式的开发模式,让维护平台的成本降到最低

SMART_Best的核心价值

  • 1.解决团队接口自动化测试需求,释放回归测试人力去做更有价值的事情
  • 2.零代码,快速上手,快速统一团队成员良莠不齐的自动化测试能力

3、系统组成

3.1 SMART_Best系统组成

├── SMART_Best
│   └── smart_admin                 - Controller层
│   └── smart_common                - common共用类
│   └── smart_framework             - JWT鉴权
│   └── smart_msg                   - 消息通知/推送模块
│   └── smart_engine                - 测试引擎
│   └── smart_generator             - 代码生成器CRUD
│   └── smart_system                - Service Mapper
│   └── SMARTBest-UI                - 前端UI

4、部署

4.1、前端部署

前端部署采用pm2的方式部署,所以需要您的服务器需要有pm2和node环境

1:npm run build:prod

2:启动pm2

pm2 start ./app.js --name smart

pm2 stop 0

pm2 delete 0


报错app.js had too many unstable restarts (16)


GET ERROR报错 关闭路由的history模式

1: 基本环境

1:node环境 v14.0.7以上版本
2:vue cli环境 vue3.12.1  npm install -g @vue/cli@3.12.1

2:编译

4.2、后端部署

1:mvn clean package -P prod
2:启动 setsid java -Dloader.path=./lib,config,resources -jar smart-admin.jar
3:日志存储在 /User/yangbin/Desktop/SMART_Best/Log

5、功能说明

5.1、系统管理功能介绍

5.2、新功能介绍

5.2.1、Groovy脚本断言

avatar

  • 1 Groovy脚本断言支持的内置对象
编号 名称 支持方法 描述
1 vars get(String)、put(String,Object)、getResponse() vars内置对象
2 status isSuccess(Boolean)、 rest() 修改代码执行状态成功or失败

6、持续改善

6.1、升级日志

编号 版本 日期 描述
1 v1.0.0 2020.06.10 首次提交,还有很多待解决的BUG
2 v1.0.0 2020.06.15 修改数据排序问题
3 v1.0.0 2020.06.15 增加前置处理操作
4 v1.0.0 2020.06.15 增加后置处理操作
5 v1.0.0 2020.06.15 修改测试引擎
6 v1.0.0 2020.07.16 修改首页数据可视化
7 v1.0.0 2021.10.21 增加接口调试功能
8 v1.0.0 2021.12.30 优化前端Tree的展示
9 v1.0.0 2022.01.07 优化Maven打包配置

6.2、BUG列表与计划

编号 版本 日期 BUG描述 是否解决 计划
1 v1.0.0 2020.06.10 导入用例功能未完善 v1.0.1版本解决
2 v1.0.0 2020.06.10 最右侧用例详情页面数据回显异常 v1.0.1版本解决
3 v1.0.0 2020.06.10 断言全部采用String类型,导致不支持逻辑运算 v1.0.1版本解决
4 v1.0.0 2022.01.07 条件控制器下的用例不满足条件不会执行但是会记录在报告中 v1.0.1版本解决
4 v1.0.0 2022.01.07 条件控制器'条件是否并存'回显在首次刷新的情况下无法勾选 v1.0.1版本解决

6.3、新功能

编号 版本 日期 描述
1 v1.0.0 2022.01.14 支持执行Groovy脚本的断言方式

安装部署

docker安装MySQL8.0

1.启动Docker
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d -v /home/mysql/:/var/lib/mysql mysql8.0 --lower_case_table_names=1

2.进入mysql容器
docker exec -it mysql /bin/bash

3.连接到mysql服务
mysql -uroot -proot 123456

4.设置root可以远程访问
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

5.刷新权限
FLUSH PRIVILEGES;

需要优化的问题

1.处理params,希望后台/前端可以自动监听把url的参数处理为param数据,并且可以进行基本的url解码 - 已解决
2.创建HTTP请求默认选择GET请求方式 - 已解决
3.场景/用例可在List页面编辑优先级
4.场景/用例可以添加标签
5.场景/用例页面渲染很慢需要优化
6.执行Task任务支持传递优先级进行测试
7.场景/用例页面的基本搜索与高级搜索
8.节点的复制/粘贴功能 Ctrl+C/Ctrl+V功能 -已完成
9.响应Data只用记录执行失败的和重试的 - 已完成
10.HashTree优化
11.执行前置操作步骤的优化,例如执行某一批用例前统一添加登录接口获取token放置在后面执行的所有接口的Header中
12.JMX导入用例
13.Excel导入用例
14.用例下接口的批量删除功能
15.用例的批量强制删除功能
16.场景组下面有用例的判断,来确认这个场景是否支持被删除
17.首页`接口执行情况`的优化
18.首页`实时运行概况(最近10条)`的完善
19.首页`历史统计(接口)`的完善
20.邮件报告`触发原因`的修复
21.测试报告增加平均耗时统计 - 暂时不做
22.用例List界面`接口数`数据错误的统计 - 已修复
23.报告页面点击`执行用例组`可以跳转到对应的用例编辑页面

空文件

简介

做最适合的测试平台-Best 展开 收起
Java 等 5 种语言
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Java
1
https://gitee.com/AnndyYang/smart_-best.git
git@gitee.com:AnndyYang/smart_-best.git
AnndyYang
smart_-best
SMART_Best
master

搜索帮助