Системы версионирования все хороши, просто берите ту же, что используют девелоперы на проекте.
1. Ruby и Python изучить никогда не помешает. Но вот как раз для всяких системных операций с виндой, поднятия служб и т.п. лучше брать родной PowerShell. Другое дело, что это будут изолированные скрипты, а не тесты. Если нужны именно тесты, с выбором языка определяйтель в своей команде . Просто будете из тестовых сценариев вызывать системные команды, это в любом языке можно делать.
2. TeamCity - это не тестовый инструмент. Он запускает некую последовательность процессов и собирает с них информацию, например, всякие логи и файлы. В том числе будет запускать тесты через агенты, которые Вы установите на виртуалках, и собирать результаты в центральную систему. Для удобства работы с тестами есть плагины (смотрим тут: https://confluence.j...ameworksSupport), как с ними работать - зависит от того, какой язык и тестовый фреймворк будет выбран.
Спасибо за советы! Буду пробовать!) +1 Вам в карму)