Size: a a a

JavaScript testing

2020 December 04

P

Paul G in JavaScript testing
Oleksandr Khotemskyi
const innerels = elements.map(el => el.$(‘some’))
Саня так прикинь если там 1000 элементов, и это хуево туча запросов и время
источник

OK

Oleksandr Khotemskyi in JavaScript testing
Paul G
Саня так прикинь если там 1000 элементов, и это хуево туча запросов и время
конечно, верни через executeScript
источник

OK

Oleksandr Khotemskyi in JavaScript testing
я делал так
источник

AP

Alexander Popov in JavaScript testing
Paul G
Саня так прикинь если там 1000 элементов, и это хуево туча запросов и время
а кидать 1000 элементов в браузер одним запросом, потом выполнять, потом обратно, думаешь быстрее? 🙂
источник

OK

Oleksandr Khotemskyi in JavaScript testing
ну кстати да, ты же потом будешь эти элементы как то использовать
источник

OK

Oleksandr Khotemskyi in JavaScript testing
так что то что ты их быстро нашел - это пол дела
источник

P

Paul G in JavaScript testing
Oleksandr Khotemskyi
ну кстати да, ты же потом будешь эти элементы как то использовать
мне надо только 1 элемент
источник

AP

Alexander Popov in JavaScript testing
Paul G
мне надо только 1 элемент
какой?
источник

P

Paul G in JavaScript testing
Alexander Popov
какой?
Забей, я сделаю по другому)
источник

OK

Oleksandr Khotemskyi in JavaScript testing
Paul G
Забей, я сделаю по другому)
$(function () {})

или

$$(function () {})

твой выбор короче
источник

P

Paul G in JavaScript testing
да, я именно так и сделал
источник

P

Paul G in JavaScript testing
а делал до этого через execute
источник

P

Paul G in JavaScript testing
ок, а если мне надо прокинуть внутрь этой функции arg?
источник

P

Paul G in JavaScript testing
шариш что это другой скоуп, скоуп браузера, а не фрейма
источник

P

Paul G in JavaScript testing
источник

BO

Boris Osipov in JavaScript testing
Paul G
ок, а если мне надо прокинуть внутрь этой функции arg?
тогда .execute() :)
источник

P

Paul G in JavaScript testing
Boris Osipov
тогда .execute() :)
тогда это печально
источник

P

Paul G in JavaScript testing
Boris Osipov
тогда .execute() :)
выход тогда искать execute, а потом кормить id в $(here)
источник

BO

Boris Osipov in JavaScript testing
Paul G
выход тогда искать execute, а потом кормить id в $(here)
я не очень понял что ты там делаешь. что-то типо того надо?
        await browser.url("https://webdriver.io/")
       const someButtonsArrayElements = await $$(".buttonWrapper")
       const buttonWrapper = await browser.execute((buttons) => { return buttons[0] }, someButtonsArrayElements);
       const button = await (await $(buttonWrapper)).$(".button")
       let href = await button.getAttribute("href");
       expect(href).toEqual("https://webdriver.io/docs/gettingstarted.html")

?
источник

BO

Boris Osipov in JavaScript testing
(пример живой, только накидал)
источник