Size: a a a

2020 September 11

SP

Sergey Pirogov in JS for testing
Красавчик 👏
источник

SP

Sergey Pirogov in JS for testing
А тот тут бояре начали мне глоба переменные пихать
источник

SP

Sergey Pirogov in JS for testing
Его в теории можно как экстенал либу сделать? Чтобы такие как я могли юзать
источник

ДП

Діма Потапов... in JS for testing
Sergey Pirogov
А тот тут бояре начали мне глоба переменные пихать
аргументи тоді не забувай називати в відповідності до фікстур
источник

ДП

Діма Потапов... in JS for testing
це як кодсепц зі сторінками які в тест входять
источник

ДП

Діма Потапов... in JS for testing
Sergei
В целом ничего сложного нет, н-р вот как можно добавить в mochajs поддержку фикстур а-ля pytest меньше чем за 100 строк кода: https://pastebin.com/BS0JknW6

Три вида скоупа фикстур: session, module, test. class вроде как не нужно, т.к. в js тесты не принято запихивать под класс. Можно б было заморочиться на скоуп с отловом вложенности в describe но что-то слишком рокетсайенс выходил бы :)
жир
источник

S

Sergei in JS for testing
Sergey Pirogov
Красавчик 👏
спасибо :) приятно слышать, я не уверен за наличие багов, но за полчаса то, что получилось)
источник

SP

Sergey Pirogov in JS for testing
Публикуй как нпм пакет, я тебе гарантирую славу
источник

S

Sergei in JS for testing
Sergey Pirogov
Его в теории можно как экстенал либу сделать? Чтобы такие как я могли юзать
в моку можно, как в другие раннеры не знаю. Если есть желание, используй код, мне не жалко)
источник

SP

Sergey Pirogov in JS for testing
Пушо для пайтон дикарей которые набегут в js-это будет родным
источник

E

Evgeniy in JS for testing
Sergey Pirogov
ну то понятно, но просто вопрос назрел, неужели никто не задумывался что это как-то странно
Видимо потому что зачастую в каждом сьюте свой beforeAll
источник

SK

Sergey Khristenko in JS for testing
Sergei
В целом ничего сложного нет, н-р вот как можно добавить в mochajs поддержку фикстур а-ля pytest меньше чем за 100 строк кода: https://pastebin.com/BS0JknW6

Три вида скоупа фикстур: session, module, test. class вроде как не нужно, т.к. в js тесты не принято запихивать под класс. Можно б было заморочиться на скоуп с отловом вложенности в describe но что-то слишком рокетсайенс выходил бы :)
так а это ж тоже самое что и before/beforeEach?
источник

S

Sergei in JS for testing
Sergey Khristenko
так а это ж тоже самое что и before/beforeEach?
не совсем, в двух словах не объяснить, но те кто попробовал фикстуры в пайтесте, без них уже не представляют мир :)
источник

SC

Sergey Chepets in JS for testing
Поставил себе задачу запустить тесты на playwright внутри образа mcr.microsoft.com/playwright:bionic. Внутри этого образа уже предустановлены хромиум, файерфокс, вебкит. Склонил репу внутрь, npm install, run tests. И получил вот такую ошибку.
browserType.launchPersistentContext: Failed to launch chromium because executable doesn't exist at /root/.cache/ms-playwright/chromium-792639/chrome-linux/chrome
Откуда ноги растут. Чет я думал playwright сам поймет где ему брать хромиум. Это мне нужно в лаунч конфиге браузера указать browser-path?
источник

VG

Vitalii Grygoruk in JS for testing
Sergey Chepets
Поставил себе задачу запустить тесты на playwright внутри образа mcr.microsoft.com/playwright:bionic. Внутри этого образа уже предустановлены хромиум, файерфокс, вебкит. Склонил репу внутрь, npm install, run tests. И получил вот такую ошибку.
browserType.launchPersistentContext: Failed to launch chromium because executable doesn't exist at /root/.cache/ms-playwright/chromium-792639/chrome-linux/chrome
Откуда ноги растут. Чет я думал playwright сам поймет где ему брать хромиум. Это мне нужно в лаунч конфиге браузера указать browser-path?
там вроде env vars какие-то установить надо. посмотри как это делает их github action.
источник

SC

Sergey Chepets in JS for testing
Vitalii Grygoruk
там вроде env vars какие-то установить надо. посмотри как это делает их github action.
А что за github action?
источник

VG

Vitalii Grygoruk in JS for testing
Sergey Chepets
А что за github action?
https://playwright.dev/#version=v1.4.0&path=docs%2Fci.md&q=caching-browsers - почитай вот это по поводу браузеров. https://github.com/microsoft/playwright/blob/v1.4.0/docs/docker/Dockerfile.bionic не устанавливает сами браузеры (они устанавливаются когда ты запускаешь npm install)
источник

SC

Sergey Chepets in JS for testing
Vitalii Grygoruk
https://playwright.dev/#version=v1.4.0&path=docs%2Fci.md&q=caching-browsers - почитай вот это по поводу браузеров. https://github.com/microsoft/playwright/blob/v1.4.0/docs/docker/Dockerfile.bionic не устанавливает сами браузеры (они устанавливаются когда ты запускаешь npm install)
А последние две команды в докерфайле бионик похоже на установку браузеров.
источник

VG

Vitalii Grygoruk in JS for testing
Sergey Chepets
А последние две команды в докерфайле бионик похоже на установку браузеров.
ок - значит смотри чтобы версия браузера совпадала с той которую ожидает твоя версия плейврайта
источник

SC

Sergey Chepets in JS for testing
Vitalii Grygoruk
ок - значит смотри чтобы версия браузера совпадала с той которую ожидает твоя версия плейврайта
спасибо, как раз на днях вышла версия плейрайта 1.4, а у меня еще 1.3
источник