Size: a a a

JavaScript testing

2021 January 12

A

Aleksey in JavaScript testing
Может что путаю, но респонс будет внутри evaluate по идее
источник

A

Aleksey in JavaScript testing
Да, все логично)
источник

OI

Oleksii Ihnatiuk in JavaScript testing
я вот не могу понять чего, я же его возвращаю
источник

OI

Oleksii Ihnatiuk in JavaScript testing
и evaluate возвращает то, что возвращает функция внутри :)
источник

A

Aleksey in JavaScript testing
В 1 примере нет никакого return вроде
источник

OI

Oleksii Ihnatiuk in JavaScript testing
он не нужен если все в одну строчку
источник

OI

Oleksii Ihnatiuk in JavaScript testing
() => 2+2 вернет 4 даже если не писать return
источник

OI

Oleksii Ihnatiuk in JavaScript testing
если explicit хочешь, то
() => {
  return 2+2;
}
источник

OI

Oleksii Ihnatiuk in JavaScript testing
ладно, проехали) наверное заморочки с контекстом
источник

A

Aleksey in JavaScript testing
Я сейчас сходу не вспомню что там не так с evaluate, давно использовал, были похожие приколы с ним просто. Помню что инициализировал сначала переменные, а в evaluate сохранял в них данные
источник

A

Aleksey in JavaScript testing
Было меньше мороки так)
источник

A

Aleksey in JavaScript testing
Точнее не сохранение было, а использование внешних. Что-то уже перемешалось все в памяти) Но запомнилось, что с evaluate часто что-то интересное происходит)
источник

VH

Vitali Haradkou in JavaScript testing
Oleksii Ihnatiuk
у кого-то есть идейка почему response у меня {} пустой объект?
const response = await page.evaluate(() =>
     fetch('https://somesitehere/sitemap.xml', {
       method: 'GET',
       referrerPolicy: 'strict-origin-when-cross-origin',
     }),
   );
цель: послать запрос из браузера, думал реализовать через evaluate в пупетире.
Если делать в браузере ручками, то все ок
Тут дело в том что ты возвращаешь промис.(evaluate выполняет код внутри браузера). Промис это объект со скрытыми свойствами, которые ты не увидишь потомучто скрытые они не просто так)
источник

BO

Boris Osipov in JavaScript testing
Гарри Поттер  и Скрытые Свойства Промиса
источник
2021 January 13

МЁ

Мюсля 🙈 Ёшшик... in JavaScript testing
🙊🙈
источник

OK

Oleksandr Khotemskyi in JavaScript testing
Oleksii Ihnatiuk
я вот не могу понять чего, я же его возвращаю
Он не смог засерилизоватся в json мб
источник

NK

ID:0 in JavaScript testing
источник

МК

Максим Кучеренко... in JavaScript testing
Коллеги, подскажите, нужно сделать автотест на сложный бизнес-процесс, когда над одной формой поочерёдно работают несколько пользователей с разными ролями. Как лучше, делать один весьма большой тест или несколько связанных? Я знаю, что связанные тесты это не очень хорошая идея, но меня смущает, что если тест будет один, то он будет очень сложным и долгим.
источник

OI

Oleksii Ihnatiuk in JavaScript testing
Максим Кучеренко
Коллеги, подскажите, нужно сделать автотест на сложный бизнес-процесс, когда над одной формой поочерёдно работают несколько пользователей с разными ролями. Как лучше, делать один весьма большой тест или несколько связанных? Я знаю, что связанные тесты это не очень хорошая идея, но меня смущает, что если тест будет один, то он будет очень сложным и долгим.
разбивайте тест на множество тестов, я понимаю, что код будет дублироваться, но в каждом тесте делайте специфический фокус.
Например заполнение формы и отправка. Можно сделать тест 1, который будет только заполнять форму и потом проверять значения в полях. тест 2 будет тоже заполнять форму (не проверять что заполнение корректно) и будет уже отправлять форму, потом проверка что отправило корректно. То есть уже во втором тесте мы берем на веру что заполнение работает. Таким образом мы разделяем что мы проверяем.
источник

OI

Oleksii Ihnatiuk in JavaScript testing
связанные тесты очень сложно дебажжить и рефакторить, лучше сделать несколько несвязанных даже если они будут копи пастить какую-то логику или части
источник