Я ищу совет по наилучшему способу тестирования (через автоматизацию) углового веб-приложения.
Я копался на многих сайтах, глядя на то, что делают другие люди. Я также создал структуру и закодировал короткий набор тестов в Selenium/Jasmine/Protractor, который на самом деле отлично работал. Пока... Мне не нужно было интегрировать его в наши CI-сборки без головы. Я попробовал PhantomJS, и, хотя он время от времени заканчивается, он невероятно ошибочный и ненадежный для этой задачи, или с этим стеком, или и то, и другое. ;-).
Я готов изменить свой стек и перекодировать немного (мы не настолько глубоко в dev'ing), если я знаю, что могу выполнить следующие параметры (в порядке приоритета):
Я буквально провел много дней, пытаясь заставить Фантома сыграть красиво. Концепция замечательная, но поддержка кажется сомнительной, как и реализация и последующая работа. Я также попал в несколько списков безгласных браузеров, и ни один из них, похоже, не отвечает тем, что мне нужно (хотя я еще не пытался других, пока... Я хотел сначала отправить этот запрос для консультаций).
Итак, есть ли способ сделать это, чтобы быть надежным (по крайней мере настолько же надежным, как и код, который я пишу, что действительно все, что я прошу) и масштабируемым по моим требованиям выше?
Я новичок в тестировании угловых сайтов и JS, и я полностью открыт для любых/всех предложений. Ваши мысли очень признательны. - brent
Похоже, у вашего вопроса уже есть ответы.
Я бы предложил использовать инструмент транспортира, который позволит вам запускать тесты на реальных браузерах. Для тестирования от конца до конца или интеграции тестирование с использованием транспортира велико. Для выполнения только модульных тестов Карма хороша и может быть выполнена на реальном браузере.
Для инструментов CI получить доступ к реальному браузеру сложно, поскольку не все поставщики могли бы это предложить, поэтому использование Saucelab было бы удобно там, так как оно дает вид облачного доступа к браузерам и одновременно позволяет вам получить доступ к url localhost. Вы можете запускать те же самые теги транспортира и кармы на реальных браузерах через Saucelabs на платформе CI.