Статьи

Одновременное множественное браузерное тестирование JavaScript с Yeti

Разработчики ненавидят тесты. Проверять код, который явно идеален, утомительно. Что еще хуже, скромный веб-разработчик редко знает, какую ОС или браузер выберет пользователь, и должен тестировать различные платформы. Топ-5 браузеров могут быть относительно простыми, но к ним присоединился растущий разнообразный и мощный набор мобильных устройств.

JavaScript особенно проблематичен. Разработчики создают сложные клиентские приложения, и модульное тестирование стало необходимым. Есть ряд библиотек, которые могут помочь, в том числе YUI Test , FireUnit и JsUnit . К сожалению, это остается в значительной степени ручным процессом, поскольку одновременно можно протестировать только один браузер.

YUI-разработчики Yahoo используют одни из самых строгих процессов: в настоящее время они поддерживают 11 браузерных сред и тестируют несколько новых мобильных платформ. Тестирование функциональности JavaScript на одном браузере было трудоемким, а инструменты автоматического тестирования были сложны в настройке и обслуживании.

Чтобы облегчить бремя, Yahoo выпустила Yeti — YUI Easy Testing Interface . Это проект с открытым исходным кодом, основанный на node.js, который позволяет выполнять модульное тестирование из командной строки:


$ yeti mytestpage.html
✔ DOM Tests from Safari (Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_4; en-us) 
AppleWebKit/533.16 (KHTML, like Gecko) Version/5.0 Safari/533.16)
  20 passed
  0 failed

Тем не менее, многопользовательские возможности Yeti будут волновать большинство разработчиков. Запуск Yeti без аргументов запускает веб-сервер по адресу http: // localhost: 8000 /. На этот URL можно указать любой браузер, включая мобильные устройства, если вы используете систему, такую ​​как localtunnel, для создания публичного адреса для локального сервера. Каждый тест, который вы затем запускаете, автоматически выполняется во всех браузерах, посещающих URL-адрес Yeti, и результаты возвращаются в консоль. Удивительный.

Yahoo признает, что Yeti еще не завершен, но вы можете скачать код v0.1 сегодня. Он был протестирован только на Mac OS X, хотя может работать на ПК с Linux с node.js. После запуска любой браузер, работающий в любой ОС, может быть направлен на сервер.

Yeti обладает потенциалом сделать модульное тестирование JavaScript намного проще, чем сегодня. Это, безусловно, проект, который мы с интересом будем смотреть.

Ссылки по теме: