Я имею к тесту записи на сценарий развертывания, который загружает файлы через SSH, но я хотел бы иметь его не в зависимости от внешней конфигурации серверов. Это - то, как я вижу его:
Единственный вопрос состоит в том, как выполнить их фиктивные демоны SSH.
Я использую Python и Матрицу.
Если вам нужен полный контроль над действиями сервера (например, для того, чтобы имитировать различные проблемные условия и таким образом провести действительно тщательное тестирование), я рекомендую twisted: как показано в этой статье, с его помощью очень легко создать свой собственный SSH-сервер.
Если вы предпочитаете использовать существующий ssh-сервер, выберите его из списка здесь (или используйте тот, который поставляется с вашей системой, если таковая имеется; или, возможно, sshwindows, если вы работаете на windows) и запустите его с помощью subprocess из Python как часть запуска ваших тестов.
Реализация демона SSH не является тривиальной.
Если ваша единственная проблема в том, что вы не хотите, чтобы он зависел от существующих конфигураций, вы можете запустить новый sshd с -f для указания конкретной конфигурации и -p для запуска на заданном порту.
Вы можете использовать os.system для вызовов оболочки:
os.system('sshd -f myconfig -p 22022')