我必须为通过SSH上传文件的部署脚本编写测试,但我想让它不依赖于外部服务器配置.这就是我的看法:
在Loopback接口的不同端口上创建2个没有认证的SSH守护进程.
在这两个端口上运行部署脚本
唯一的问题是如何运行这些虚拟SSH守护进程.
我使用Python和Fabric.
如果你想完全控制服务器的动作(例如,为了模拟各种问题条件,从而进行真正彻底的测试),我建议使用twisted:正如本文所示,它使得设置自己的自定义SSH服务器变得非常容易.
如果您更愿意使用现有的ssh服务器,请从此处的列表中选择一个(或者使用您的系统附带的服务器,如果有的话;或者如果您在Windows上,则使用sshwindows)并使用Python中的子进程运行它启动测试的一部分.