Да, это только e2e UI тесты mobile / web. API в несколько раз больше.
С ростом количества клиентов нам стало сложно администрировать кучу отдельных серверов, по итогу решили делать 1 большой кластер (аля SaaS решение) и разделять контексты под отдельных кастомеров. Запускаем в среднем от 80 до 100 тыс. тестов ежедневно в зависимости от фазы релиза.
Да, этот слейв отвечает за запуск всего тест сьюта. По окончанию слейв схлопывается и не кушает ресурсы кластера.
Проблем решает несколько:
1. Масштабируемость (возможность раскатывать все на сотнях виртуалок)
2. Меньшие затраты (все скейлится / даунскейлится по необходимости твоей автоматизации)
3. Высокая стабильность работы (кубер их коробки дает достаточно много возможностей для контроля жизнеспособности твоих сервисов в кластере)
Почти, но не совсем. Цепочка следующая — ты запускаешь задачу на jenkins master (который крутится в кубере), он поднимает под эту задачу отдельный слейв в качестве кубернетес pod. Твои тесты уже по классике обращаются по http к moon (аналог selenium hub), он под каждую сессию стартует pod с соответствующим браузером / эмулятором.
Я думаю это скорее задача тула для запуска тестов, нежели инфраструктуры для автоматизации. Инфраструктура просто должна вывозить количество потоков, которое от нее хотят интеграционные тесты.
Непосредственно твою задачу можно решать кучей различных способов, я в основном работал на Java TestNG, там это можно было обыграть через параметры аннотации @Test — invocationCount / threadPoolSize: testng.org/...ion-main.html#annotations
Наверное не совсем понял вопрос, на текущий момент используем Aerokube Moon.
Пока в кубере iOS не гоняем, яблочные оси к сожалению плохо поддаются докеризации. А так под себя строим мобильные фермы, как то недавно я записывал интервью по этой теме: www.youtube.com/watch?v=NEnq-xpGp3E
До конца 2020 будет официальный релиз JS агента
На самом деле мы даже EKS не используем, разворачиваем сами k8s кластер с помощью kops. Вероятно ECS требует меньше трудозатрат, но мы не нашли возможности запускать Android эмуляторы в этой инфраструктуре на bare metal машинах.
Jenkins Kubernetes plugin — plugins.jenkins.io/kubernetes, готовим различный имаджи, с подготовленной средой. Через лейблы задачи запускаются на тех или иных образах.