「泰斯特平台」是一个由「软件测试 & 机器学习爱好者」开发的接口自动化测试平台。
平台致力于将人工智能技术与软件测试有效结合,让平台在保障测试精确性要求的同时更具智能化、泛化能力, 同时尽可能 最优化使用体验 ,目标是成为 最贴心、最好用、颜值最高 的开源测试平台。
平台遵循「前后端分离开发」**,技术栈为:「Python + Vue + Mongodb」,后端开发使用的是轻量级 Web 框架 Flask, 前端 UI 框架则采用的是易上手的 ElementUi。
-
平台遵循「小而精」的策略,最大化所有功能的开发、使用性价比,可帮助测试团队快速搭建起易于上手 / 维护的接口 自动化测试体系。
-
平台遵循「零编码」原则,使用者不需要编程即可完成较为复杂的业务流程接口测试。
-
平台遵循「颜值即正义」原则,操作界面展示如下:
- 平台拥有极佳的定时任务体验,启动定时任务后可随时停用 / 任意编辑任务内容且立即生效,同时拥有丰富的告警策略, 页面展示如下:
- 平台拥有导入 / 导出功能,支持测试人员 "最喜爱的" Excel 格式,易于批量生成 / 修改用例。
-
平台拥有较为丰富的测试结果校验体系,支持文本相似度校验。 (具体内容可参考本篇博文)
-
平台对外提供测试任务调度接口,方便与开发项目集成。
-
......
(还有许许多多令人惊喜的小特色等着你去探索 & 挖掘)
git clone https://github.com/amazingTest/Taisite-Platform.git
2.1 点击下载压缩包
pip install tensorflow==1.11 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install bert-serving-server==1.9.2 -i https://pypi.tuna.tsinghua.edu.cn/simple
// 当前目录切换至模型文件夹目录后执行
bert-serving-start -model_dir ./chinese_L-12_H-768_A-12/ -num_worker=1
启动成功后输出如下:
AUTOTEST_PLATFORM_ENV=production
AUTOTEST_PLATFORM_NLP_SERVER=127.0.0.1
AUTOTEST_PLATFORM_MONGO_HOST=${MONGO_HOST}
AUTOTEST_PLATFORM_MONGO_PORT=${MONGO_PORT}
AUTOTEST_PLATFORM_MONGO_USERNAME=${USERNAME}
AUTOTEST_PLATFORM_MONGO_PASSWORD=${PASSWORD}
AUTOTEST_PLATFORM_MONGO_DEFAULT_DBNAME=taisite
其中 AUTOTEST_PLATFORM_ENV 默认为 production (必填)
AUTOTEST_PLATFORM_MONGO_HOST 和 AUTOTEST_PLATFORM_MONGO_PORT 分别表示数据库的地址和端口(必填)
AUTOTEST_PLATFORM_MONGO_USERNAME 和 AUTOTEST_PLATFORM_MONGO_PASSWORD 分别表示数据库的帐号密码(若无可不填)
AUTOTEST_PLATFORM_NLP_SERVER(自然语言模型服务)默认为本机启动 (非必填)
AUTOTEST_PLATFORM_MONGO_DEFAULT_DBNAME 为默认的数据表名(必填)
设置完成后可通过下列命令进行测试(CMD切换至项目根目录下)
python ./backend/config.py
若配置成功则可看见输入的配置数据
npm install -g cnpm --registry=https://registry.npm.taobao.org
cnpm install
cnpm run build
若成功打包则会在项目根目录下生成 dist 文件夹
// 切换至项目根目录下执行
pip install -r ./backend/requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
// 启动后端 ( 默认5050端口 )
python ./backend/run.py
// 创建平台管理员帐号密码
python ./backend/createAdminUser.py
现在就可以访问 http://127.0.0.1:5050/#/login 使用创建的管理员帐号密码进行登录
git clone https://github.com/amazingTest/Taisite-Platform.git
sudo -i
docker pull shaoyuyishiwo/bertserver
docker run --name autotest-platform-bertserver -d shaoyuyishiwo/bertserver
sudo -i
docker pull mongo
docker run --name autotest-platform-mongo -p 27017:27017 -v /data/db:/data/db -v /data/configdb:/data/configdb ``-d mongo
docker exec -it autotest-platform-mongo /bin/bash
mongo
> use admin
switched to db admin
> db.createUser({user:"${USERNAME}",pwd:"${PASSWORD}",roles:["root"]})
Successfully added user: { "user" : "admin", "roles" : [ "root" ] }
> db.adminCommand({setParameter:1, internalQueryExecMaxBlockingSortBytes:335544320})
{ "was" : 33554432, "ok" : 1 }
// 编辑 /etc/profile 文件
sudo -i
vi /etc/profile
若出现警告则选择 (E)dit anyway (输入 E)
export AUTOTEST_PLATFORM_NLP_HOST=${BERT_IPADRESS}
export AUTOTEST_PLATFORM_MONGO_HOST=${MONGO_HOST}
export AUTOTEST_PLATFORM_MONGO_PORT=${MONGO_PORT}
export AUTOTEST_PLATFORM_MONGO_USERNAME=${USERNAME}
export AUTOTEST_PLATFORM_MONGO_PASSWORD=${PASSWORD}
export AUTOTEST_PLATFORM_MONGO_DEFAULT_DBNAME=${DBNAME}
变量为动态值,部署者自行根据实际情况输入,${DBNAME} 值可任意自定义(数据库表名), 其中 ${BERT_IPADRESS} 和 ${MONGO_HOST} 值可通过下列命令查询:
docker inspect autotest-platform-bertserver
docker inspect autotest-platform-mongo // 若使用了上面的步骤部署数据库
输出如下图所示:
source /etc/profile
//在项目根目录下执行部署文件
sh deploy ${PORT}
其中 ${PORT} 变量填写项目访问端口即可,项目启动的同时也创建了管理员帐号密码,如下图所示:
浏览器访问部署服务器地址的 ${PORT} 端口后使用「4.启动项目」中创建的帐号密码登陆即可
平台主流程使用可参考 本篇博文中的正文部分
# TODO 详细的使用教程
若对平台有任何疑问、建议,或想关注更多平台资讯, 欢迎扫描下方二维码关注我、联系我。
开源不易 欢迎扫描下方二维码 助力开源。