Как обновить hermione до версии 4.x
Данный рецепт актуален только для тех проектов, которые используют hermione младше 4-й версии.
Почему стоит обновиться?
Когда-то очень давно hermione перешла на «временный» форк пакета webdriverio@4 (сокр. wdio), который она использовала «под капотом», т. к. проблемы во внешнем wdio тормозили её разработку: постоянные баги в wdio, разногласия относительно вносимых изменений и т. п. И если сначала форк регулярно обновлялся командой hermione, чтобы предоставить пользователю актуальную функциональность, то со временем форк значительно отстал от текущей версии wdio во внешнем мире.
К тому времени во внешнем мире в wdio уже появилось много различных фич, которые интересны разработчикам: Chrome DevTools Protocol (CDP), стабы внешних запросов, расширенные возможности работы с мобильными устройствами и т. п. Поэтому у команды hermione не осталось выбора: нужно было отказываться от форка webdriverio@4 и переходить на самую актуальную версию webdriverio@7.
Сейчас уже доступна 8-я версия webdriverio и hermione@7 уже использует её.
Кроме этого, пользователям становилось всё неудобнее пользоваться устаревшими командами: тайпинги приходилось подключать из отдельного пакета (в новом wdio они поставляются из коробки), за документацией по командам приходилось ходить на старый сайт, в то время как некоторые пользователи иногда заходили на актуальную страницу и не могли понять, почему команды из документации не работают в hermione.
Таким образом, причин для радикального апгрейда — сразу на 3 мажора вверх — накопилось достаточно.
Что изменилось?
Изменений очень много, поэтому ниже будут перечислены только самые важные / интересные из них.