Я работаю над проектом, в котором мы держим одну вики-платформу в синхронизации с контентом другого. То, как мы это делаем, - это редактирование документа на «Wiki A», который передает поток данных, который преобразует данные из формата «Wiki A» в формат «Wiki B» и отправляет эти данные в «Wiki B» для импорта.Автоматизированные интеграционные тесты, охватывающие несколько сервисов
У меня есть 3 компонента.
- 'Wiki A', которая находится в PHP Сервис
- перевода, который является рубин на рельсах обслуживание
- 'Wiki B', который находится в Java
Я хочу построить автоматизированная сквозная платформа тестирования, которая в идеале должна быть в состоянии протестировать следующее: Основная потребность в тестировании - это мои модульные тесты для каждого продукта, которые не могут протестировать связь между продуктами и не тестировать все сквозные данные течь.
- Редактировать страницу на 'вики A'
- испытаний, что он начинает из потока данных
- Test, что TranslationService преобразованы данные
- испытаний, что импорт 'Wiki B' преобразованные данные
Основываясь на первоначальных исследованиях, мои варианты - такие инструменты записи, как Selenium. Selenium может обрабатывать несколько продуктов, которые я хочу протестировать, но из того, что я видел, тесты хрупки. Другой вариант - это инструмент для тестирования разработки, такой как Cucumber/Capybara, с которым я могу написать надежные тесты, но я не уверен, как он работает в архитектуре с несколькими продуктами, каждая из которых написана на другом языке.
Я смотрю на это правильно? Я слишком амбициозен, чтобы попытаться создать единую сквозную систему тестирования, охватывающую несколько продуктов?
Вам нужно будет быть более конкретным. Тем не менее, тесты Selenium не являются хрупкими, как таковые, но они часто плохо реализуются тестировщиками, которые либо неопытны, либо вынуждены работать с труднодоступными для тестирования сайтами во многих браузерах. Огурец - это просто абстракция: его правила все еще должны выполняться разработчиком/тестером, и это все равно можно сделать хорошо или плохо. Также современный Selenium не является инструментом записи - это больше не поддерживается. –
Какие особенности я должен упомянуть? –
Ну, более конкретный и сфокусированный ваш вопрос, тем больше вы получите авторитетные, а не самоуверенные и/или очень высокоуровневые ответы. –