MeterSphere 开源持续测试平台拥有非常强大的插件集成机制,用户可以通过插件实现平台能力的拓展,借助插件或脚本实现多种功能。在测试过程中,测试人员有时需要通过 SSH 协议登录至服务器,以获取某些配置文件和日志文件,或者启动其他服务、执行脚本等,MeterSphere 平台提供了插件和脚本两种方式帮助测试人员能够方便地实现这些操作。
以下是在 MeterSphere 开源持续测试平台中通过 SSH(Secure Shell,安全外壳协议)登录服务器的具体方法和注意事项。
方法一:使用 MeterSphere 平台提供的 SSH 插件登录服务器
使用 MeterSphere 平台提供的 SSH 插件,能够简单、快捷地通过 SSH 登录服务器。这一方法对测试人员的代码能力要求较低,而且用例维护成本也比较小。
MeterSphere 平台提供的 SSH 插件可以在 MeterSphere 的 GitHub 页面(https://github.com/metersphereMeterSphere 官方网站(metersphere.io)底部的技术交流群二维码入群获取。)下载,也可以扫描
为了在 MeterSphere 中实现通过 SSH 登录服务器,需要将下载好的 SSH 插件上传至 MeterSphere 平台。
上传路径:在 MeterSphere 首页左侧导航栏中依次选择 “系统设置”→“系统”→“插件管理”,选择 “点击上传” 按钮。
选择 “点击上传” 按钮后,在 “导入” 对话框内的 “使用场景” 栏目中选择 “接口测试” 选项。
注意事项
为了避免使用插件时出现异常,建议在上传插件后重新启动 system-setting 服务。
① SSH 插件上传完毕后,可以新建一个场景来测试是否能够通过 SSH 登录服务器。
新建场景的路径:在 MeterSphere 首页左侧导航栏中选择 “接口测试” 选项,在 “接口自动化” 选项卡中点击场景列表右侧的 “+” 按钮,选择 “创建场景” 选项。
② 在场景详情页面中,点击界面右下角的 “+” 按钮,在弹出的菜单中选择 “模拟请求” 选项,页面会出现该节点的相关服务器登录信息以及具体的操作命令输入栏,输入服务器信息和操作命令。
③ 服务器信息和操作命令输入完毕后,在场景详情页面点击 “调试” 按钮即可测试能否通过 SSH 登录服务器。
注意事项
如果按照上述步骤操作后仍无法通过 SSH 登录服务器,则可能需要在场景详情页面补充 Use return code、Use TTY、Print Standard、Error output 信息。
方法二:使用 BeanShell 脚本登录服务器
MeterSphere 平台的前后置脚本支持包括 BeanShell、Groovy、JavaScript、Python 在内的多种语言。下面我们将以事先准备好的代码片段为例,介绍通过 BeanShell 脚本实现 SSH 登录服务器的具体方法。
下图中是使用 BeanShell 脚本实现 SSH 登录服务器的代码样例,在代码中需要执行 ls 命令。
为了在 MeterSphere 中实现通过 SSH 登录服务器,需要在 MeterSphere 中自定义代码片段。
点击 MeterSphere 首页左侧导航栏的 “项目设置” 选项,选择 “自定义代码片段” 选项。
在弹出的 “更新代码片段” 对话框中,选择右侧的脚本语言,指定添加的代码片段为 “beanshell”;然后,把代码复制到 “代码片段” 选项卡中;最后,在 “名称” 输入栏内填写代码片段的名称,并且点击页面右下角的 “确定” 按钮。
在 “更新代码片段” 对话框中点击 “测试” 按钮,进行测试。
代码执行完成后,可以在 “更新代码片段” 对话框中的 “执行结果” 选项卡下实时查看到执行的结果。
注意事项
① 通过 BeanShell 脚本实现 SSH 登录服务器时,需要下载 JSch 包,并且将其上传至 MeterSphere 平台。
下载地址为:https://nowjava.com/jar/version/com/jcraft/jsch.html;
② 上传路径:在 MeterSphere 首页左侧导航栏中依次选择 “项目设置”→“文件管理 “;
③ 在 “文件管理” 页面点击 “添加文件” 按钮,上传 JSch 包。上传完成后,点击 “操作” 列下的眼睛式样按钮;
④ 在弹出窗口内将 “加载 Jar 包 “选项设置为开启状态即可。