Size: a a a

QA — Автоматизация

2020 June 25

AS

Andrei Solntsev in QA — Автоматизация
Да по идее Selenide.switchTo(window()) сам ждёт, когда окно появится.
источник

VS

Vladislava Soboleva in QA — Автоматизация
Andrei Solntsev
Да по идее Selenide.switchTo(window()) сам ждёт, когда окно появится.
похоже мало ждет или не понимаю почему так выходит.
getWebDriver().manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS); делала
implicitlyWait(50, TimeUnit.SECONDS) тоже
источник

VS

Vladislava Soboleva in QA — Автоматизация
все равно ошибки, а на sleep таких нет, как костыль оставлять опасно(
источник

R(

Roman (rpwheeler) in QA — Автоматизация
1) Как я уже говорил, хорошо бы залогировать чего происходит с окнами-хендлами по которым пытаемся работать.
2) Я бы завернул wait в цикл, а в цикле прописал try-catch на этот вейт со счётчиком неудачных попыток и ожиданием в одну секунду при неудаче. Выход из цикла, скажем, если мы не дождались за 30 попыток (30 секунд). Хотя для начала можно и дольше Для начала-разбора попытки тоже логируются.

Также можно поставить  дбрекпойнт, пойти в дебаг, и посмотреть как это окно открывается, если открывается, и чего вообще интересного происходит.
источник

VS

Vladislava Soboleva in QA — Автоматизация
Roman (rpwheeler)
1) Как я уже говорил, хорошо бы залогировать чего происходит с окнами-хендлами по которым пытаемся работать.
2) Я бы завернул wait в цикл, а в цикле прописал try-catch на этот вейт со счётчиком неудачных попыток и ожиданием в одну секунду при неудаче. Выход из цикла, скажем, если мы не дождались за 30 попыток (30 секунд). Хотя для начала можно и дольше Для начала-разбора попытки тоже логируются.

Также можно поставить  дбрекпойнт, пойти в дебаг, и посмотреть как это окно открывается, если открывается, и чего вообще интересного происходит.
Так и поступлю. Большое спасибо!
источник

AS

Andrei Solntsev in QA — Автоматизация
Vladislava Soboleva
похоже мало ждет или не понимаю почему так выходит.
getWebDriver().manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS); делала
implicitlyWait(50, TimeUnit.SECONDS) тоже
Ждёт стандартные 4 секунды
источник
2020 June 26

AA

Andrew Antoniuk in QA — Автоматизация
Vladislava Soboleva
все равно ошибки, а на sleep таких нет, как костыль оставлять опасно(
Попробуйте такое ожидание
wait.until(((ExpectedCondition<Boolean>d-> driver.getWindowHandles().size()>1));
источник

I

IceCream time 🍧🍧🍧... in QA — Автоматизация
Подскажите, какая разница между selenide и webdriver.io?
источник

R(

Roman (rpwheeler) in QA — Автоматизация
IceCream time 🍧🍧🍧
Подскажите, какая разница между selenide и webdriver.io?
Почему бы не открыть сайты каждого из, и не посмотреть?
источник

VS

Vladislava Soboleva in QA — Автоматизация
Andrew Antoniuk
Попробуйте такое ожидание
wait.until(((ExpectedCondition<Boolean>d-> driver.getWindowHandles().size()>1));
Он driver.getWindowHandles().size() определяет. То есть по size у меня 2 окна, а вот уже на счет того чтобы достать url окна или Title уже ошибка.
Я сделала сейчас так, завела цикл
while(flag){
try{
url()
flag=false
}
catch
Идея в том, что если он не находит окна и url() с ошибкой падает, то еще раз попытаться. Костыль, но работает. Далее буду копать глубже в чем проблема.
источник

R(

Roman (rpwheeler) in QA — Автоматизация
Vladislava Soboleva
Он driver.getWindowHandles().size() определяет. То есть по size у меня 2 окна, а вот уже на счет того чтобы достать url окна или Title уже ошибка.
Я сделала сейчас так, завела цикл
while(flag){
try{
url()
flag=false
}
catch
Идея в том, что если он не находит окна и url() с ошибкой падает, то еще раз попытаться. Костыль, но работает. Далее буду копать глубже в чем проблема.
> Костыль, но работает

Один мой знакомый автоматизатор в аватарке держал вот это:
https://all-t-shirts.ru/goods_images/ru112855II0002dd7f1e9fa2cf79b7e8f911818851ef1.jpg
источник

VS

Vladislava Soboleva in QA — Автоматизация
😂👍
источник

AA

Andrew Antoniuk in QA — Автоматизация
Попробуйте после того как появились 2 окна  итератором пройтись по ним
источник

VS

Vladislava Soboleva in QA — Автоматизация
Andrew Antoniuk
Попробуйте после того как появились 2 окна  итератором пройтись по ним
Спс) Попробую!
источник

DZ

Dias Zhumagaliyev in QA — Автоматизация
Всем доброго!
Объясните плиз что у меня не так в коде именно с if conditions

const {element, by} = require ("protractor")
const {ExpectedConditions} = require('protractor')
describe('wefox task', function(){
   
   it('login', async function(){

       //page we need to open
       await browser.get('URL');
       {
       //checks the correction of the URL
       if(window.location.href=='URL')
       // if the URL is similar to the one above we continue with the test and run LOGIN
           const user_input = element(by.css("SELECTOR"))
           const username = element(by.id('user_name'))

           await browser.wait(ExpectedConditions.visibilityOf(username),10*1000)
           await browser.wait(ExpectedConditions.elementToBeClickable(user_input),10*1000)

           await user_input.click ()
           await username.sendKeys ("username")

    } else {
        //if the page is incorrect we return an error
      console.log ("incorrect page")
});
       
       await browser.sleep(50000);      
       
   });  
});
источник

SM

Sewa Makhinya in QA — Автоматизация
Dias Zhumagaliyev
Всем доброго!
Объясните плиз что у меня не так в коде именно с if conditions

const {element, by} = require ("protractor")
const {ExpectedConditions} = require('protractor')
describe('wefox task', function(){
   
   it('login', async function(){

       //page we need to open
       await browser.get('URL');
       {
       //checks the correction of the URL
       if(window.location.href=='URL')
       // if the URL is similar to the one above we continue with the test and run LOGIN
           const user_input = element(by.css("SELECTOR"))
           const username = element(by.id('user_name'))

           await browser.wait(ExpectedConditions.visibilityOf(username),10*1000)
           await browser.wait(ExpectedConditions.elementToBeClickable(user_input),10*1000)

           await user_input.click ()
           await username.sendKeys ("username")

    } else {
        //if the page is incorrect we return an error
      console.log ("incorrect page")
});
       
       await browser.sleep(50000);      
       
   });  
});
> if(window.location.href=='URL')
здесь не так две вещи
1. == -> ===
2. сравнивается window.location.href со строкой ‘URL’
источник

DZ

Dias Zhumagaliyev in QA — Автоматизация
Sewa Makhinya
> if(window.location.href=='URL')
здесь не так две вещи
1. == -> ===
2. сравнивается window.location.href со строкой ‘URL’
эту строку пока удалил. по другому буду подтверждать правильность страницы
источник

S

Sergei in QA — Автоматизация
> 1. == -> ===

если сравнивать две строки, разве нет разницы?
источник

SM

Sewa Makhinya in QA — Автоматизация
Sergei
> 1. == -> ===

если сравнивать две строки, разве нет разницы?
это вопрос подхода
источник

SM

Sewa Makhinya in QA — Автоматизация
Dias Zhumagaliyev
эту строку пока удалил. по другому буду подтверждать правильность страницы
так а что не работает, собственно?
источник