Sua compreensão é bem completa. A única coisa que posso acrescentar é que o uso de terminologia "mestre / escravo" em jenkins / hudson é um pouco corrompido na minha opinião. Como os "escravos" são mais como executores no esquema distribuído de disparar jobs / builds / projects. Eu não acho que ter 3 mestres jenkins separados é razoável em sua situação.
1) - Eu terei que aprender como criar escravos - Isso não é realmente uma preocupação, é apenas um arquivo jar para o escravo. Pode ser instalado em outro sistema operacional com bastante facilidade (Linux, Windows, Unix) pode ser executado como um serviço / daemon. Então você só terá que anexar esse escravo ao mestre.
2) Eu terei que lidar com a comunicação entre os clientes e escravos - Isso também é bem trivial, já que tudo que você precisa é gerenciar as chaves ssh e conta de usuário para os escravos se conectarem para os clientes.
3) Posso ter problemas ao executar testes de unidade que exigem interação com a interface do usuário - Isso não deve ser um problema novamente. Deve haver muitas soluções até agora.
Mais uma vez, eu realmente incentivo você a utilizar o jennkins em seu fluxo de trabalho de desenvolvimento para CI e CD, realmente não há coisas que os jenkins não possam fazer. Começou a usá-lo há 3 anos e nunca mais olhou para trás.
A única pedra angular que vejo em sua situação particular é que é uma nova ferramenta e pode haver uma pequena curva de aprendizado e alguns ajustes a serem feitos durante a migração do fluxo de trabalho antigo, mas provavelmente ele beneficiará muito você e sua equipe a longo prazo.
Espero que isso ajude.