Robot Framework - SSH 库 - 在远程服务器上编辑文件
Robot Framework - SSH library - Editing a file on remote server
我正在 Robot Framework 中编写一个测试用例,我必须将文件从本地计算机 (windows) 复制到远程服务器 (linux) 或创建一个新的一个在该位置。
我使用了多个 sudo su -
命令将用户切换到 root 用户 以访问所需的主机。因此,我无法使用 SSH Library
中的 Put File
关键字上传文件。通过使用 Write
关键字执行命令,我已经到达了所需的文件夹位置。
由于没有其他选项(这就是我对机器人框架知识有限的认识),我开始使用 vi <filename>
命令创建一个新文件。我也达到了文件的插入模式,但是我无法将文本编辑到文件中。
有人可以告诉我我该怎么做吗
- 在多个 SU 命令(切换用户)后将文件从本地 windows 机器复制到远程 linux 服务器
- 创建一个新的文本文件并输入内容。
请参阅:正在创建/复制的新文件是证书文件。因此我不想在我的测试套件文件中写入证书的全部内容
整个测试用例看起来像这样
First Jump1
Log Starting the connection to AWS VM
# Connection to VM with Public Key
Connection To VM ${hostname} ${username}
Send Command sudo su -
Send Command su - <ServiceUser1>
# Reached the Detination server
Send Command whoami
Send Command ss -tln | grep 127.0.0.1:40
# Connecting to Particular ZIP
Send Command sudo -u <ServiceUser2> /usr/bin/ssh <ServiceUser2>@localhost -p <port>
Send Command sudo su -
# Check Auth Certificate
Send Command mosquitto_pub -h ${mq_host} -p ${mq_port} -u ${mq_username} -P ${mq_password}
在步骤Check Auth Certificate中,检查证书是否存在,如果存在 -> 删除当前证书并创建新证书(创建新证书文件或从本地上传),如果没有,则创建一个新证书
虽然它可能不理想,但能够实现我想做的事情
echo "content" > newFilename
echo "update content" >> newFileName
我正在 Robot Framework 中编写一个测试用例,我必须将文件从本地计算机 (windows) 复制到远程服务器 (linux) 或创建一个新的一个在该位置。
我使用了多个 sudo su -
命令将用户切换到 root 用户 以访问所需的主机。因此,我无法使用 SSH Library
中的 Put File
关键字上传文件。通过使用 Write
关键字执行命令,我已经到达了所需的文件夹位置。
由于没有其他选项(这就是我对机器人框架知识有限的认识),我开始使用 vi <filename>
命令创建一个新文件。我也达到了文件的插入模式,但是我无法将文本编辑到文件中。
有人可以告诉我我该怎么做吗
- 在多个 SU 命令(切换用户)后将文件从本地 windows 机器复制到远程 linux 服务器
- 创建一个新的文本文件并输入内容。
请参阅:正在创建/复制的新文件是证书文件。因此我不想在我的测试套件文件中写入证书的全部内容
整个测试用例看起来像这样
First Jump1
Log Starting the connection to AWS VM
# Connection to VM with Public Key
Connection To VM ${hostname} ${username}
Send Command sudo su -
Send Command su - <ServiceUser1>
# Reached the Detination server
Send Command whoami
Send Command ss -tln | grep 127.0.0.1:40
# Connecting to Particular ZIP
Send Command sudo -u <ServiceUser2> /usr/bin/ssh <ServiceUser2>@localhost -p <port>
Send Command sudo su -
# Check Auth Certificate
Send Command mosquitto_pub -h ${mq_host} -p ${mq_port} -u ${mq_username} -P ${mq_password}
在步骤Check Auth Certificate中,检查证书是否存在,如果存在 -> 删除当前证书并创建新证书(创建新证书文件或从本地上传),如果没有,则创建一个新证书
虽然它可能不理想,但能够实现我想做的事情
echo "content" > newFilename
echo "update content" >> newFileName