在自动化测试过程中,比较常用的操作就是对远程主机进行操作,如何操作呢?使用SSH远程登陆到主机,然后执行相应的command即可。
使用Python来实现这些操作就相当简单了。下面是测试code。
代码如下:(code运行环境:python27+eclipse+pydev)
import paramiko
def sshclient_execmd(hostname, port, username, password, execmd):
paramiko.util.log_to_file("paramiko.log")
s = paramiko.SSHClient()
s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
s.connect(hostname=hostname, port=port, username=username, password=password)
stdin, stdout, stderr = s.exec_command (execmd)
stdin.write("Y") # Generally speaking, the first connection, need a simple interaction.
print stdout.read()
s.close()
def main():
hostname = '10.***.***.**'
port = 22
username = 'root'
password = '******'
execmd = "free"
sshclient_execmd(hostname, port, username, password, execmd)
if __name__ == "__main__":
main()