其他测试框架 适用于中小型测试团队的测试脚本管理平台--分享

黑山老妖 · 2019年05月16日 · 最后由 黑山老妖 回复于 2019年05月28日 · 2552 次阅读




目的

日常项目测试中,总是在不停的敲 linux 命令,切换目录,执行脚本。比如获取短信验证码,为了某个场景去执行某个脚本,甚至于测试环境的更新部署。这些都需要不停的敲打 linux 命令,有时候忘记路径和脚本,还要专门去找资料。非常浪费时间。 如果有个平台可以把这些管理起来就好了。但是一般的中小型团队是没有测试开发的,所以这个想法无从实施。

用法

账号配置:配置了连接的服务器的 ip,账号,密码,端口(在这个服务器里执行脚本)

环境配置;比如公司有 3 套环境,发送 push 的脚本在 3 套环境都有,执行的路径分别是

/home/app/multiple/100/go_src/src/cfds

/home/app/multiple/200/go_src/src/cfds

/home/app/multiple/300/go_src/src/cfds

我们把/home/app/multiple/100/;/home/app/multiple/200/;/home/app/multiple/300/提取出来作为环境的路径,剩下的所有环境下相同的路径部分作为脚本

脚本配置:把环境配置里截取的剩下的放到脚本里,这样就可以只需配置一个脚本,在不同环境里运行时,运用下拉框的形式选择,组合拼接后执行。

原理就是在界面上配置好要执行脚本各个部分,传递到后端拼接成一个完整的要执行的脚本,然后 paramiko 远程连接服务器去执行脚本,返回结果再显示在网页上。

例子

通过在脚本配置里配置脚本的名称,要执行的脚本,传的参数等,配置成功后显示在对应的页面。

如:./gettoekn --mobile=18656560106,需要写成./gettoekn --mobile=CMD;然后执行时在页面上输入的手机号,传到后端,执行命令时自动替换掉 CMD

对于这种类似于多个传参的:./cli_push -clientid=1 -uid=10086 -type=3 ,(根据 ios/Android,用户 uid,push 的类型),就写成./cli_push CMD,页面上的传的参数是-clientid=1 -uid=10086 -type=3。如果脚本不需要传递参数,也可以直接./cli_push CMD,界面上不填写,这样就是一个 “” 替换了 CMD,对所有类型所有用户发送 push.


其他如服务部署功能,监控功能类似以上

部署安装:

基于 python3,Django2,xadmin2

1.进入项目根目录:pip install -r requirements(xadmin2 会 pip 失败,请参考https://blog.csdn.net/yuhan963/article/details/79091248

2.python manage.py makemigrations

3.python manage.py migrate

4.python manage.py createsuperuser

5.python manage.py runserver 0.0.0.0:8000

因为上传的 github 里包含我之前使用的 sqlite3,所以也可以跳过 2,3,4 步骤。

另外:
该平台还支持在发布菜单页里,配置服务监控和代码部署。其中代码部署运用 websocket,实时显示服务端部署日志。当然,现在很多公司都有自己的代码部署平台,或者如 jenkins 上持续集成完成部署。这个功能稍微多余,但适用于没有自己的部署平台的团队。

附上 git 的地址:https://github.com/wss1029681084/ScrpitManage

多谢各位~

共收到 2 条回复 时间 点赞

还准备过来 star 一下。。

猫星人 回复

附上 git 地址啦😀

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册