Перейти к содержимому

Stormer

Регистрация: 09 янв 2017
Offline Активность: 24 мар 2018 20:12
-----

Мои сообщения

В теме: Одна такая мегаглавная проблема Selenium Webdriver, Selenium - отстой?

08 декабря 2017 - 15:49

 

Во-первых, говорить про умозрительные "внутренние страницы" нет смысла. Сделайте на https://jsbin.com/ пример страницы, на котором проблема воспроизводится, или найдите где-то на публичном сайте такой пример, на котором можно продемонстрировать проблему.
 
Во-вторых, версия 3.0.0 вышла два года назад, с тех пор были сотни багов исправлены, может быть и ваша проблема в их числе.
 
В-третьих, несложно посмотреть, как именно реализована функция wait.until -- там внутри именно такой цикл, как Вы описали: https://github.com/S.../common/wait.rb
 
Поэтому рассуждения в стиле "неужели нельзя нормально сделать" не имеют смысла. Оно и так "нормально сделано". Если что-то не работает -- давайте конкретный пример и будем разбираться, почему именно он не работает.

 

 

Алексей, спасибо за ответы! Хорошо, если воспроизведу, отпишусь. Но если и правда реализовано, как я описал, то, видимо, это у нас с кодом что-то не то.

Татьяна, ну да, такие спаны я обхожу ожиданием, пока этот спан исчезнет. Вроде норм.

 

А конкретно у нас шаги бывало сваливались, когда выбираешь меню, выдвигается подменюшка. И в этой подменюшке надо что-то выбрать.

Так вот она выдвигается очень быстро всегда. Но бывали случаи, когда тормознула, по-видимому, больше, чем на полсекунды. Это даже реже, чем 1 из 100 раз.

 

Но было как-то. И вот после такого, у меня wait.until не смог найти на выдвинутой менюшке item как-то раз. Не встречали такое?

Или в таких ситуациях одним wait.until нельзя обходиться?


В теме: Одна такая мегаглавная проблема Selenium Webdriver, Selenium - отстой?

08 декабря 2017 - 13:46

 

Реальный пример такой страницы, элемента, локатора и неудачного использования конструкции wait.until покажете?
И уточните, о реализации Selenium на каком языке идёт речь.

 

Пример страницы показать не могу, т.к. это пишется под страницы во внутренней локальной сети.

Но версии скажу: selenium под ruby. Версии: 2.53.4, 3.0.0, 3.0.0.beta.2.1,

ruby 2.2.0.

 

Локаторы в общем стандартные - где-то xpath, где-то css. Максимально короткие. В которые в качестве параметра подставляется, к примеру, текст. Или имя класса.

Это я к тому, что нет такого, что в многоэтажном локаторе что-то изменилось, а я не заметил.

 

Извиняюсь, я мб сгустил краски тем, что не написал, что падает в таких случаях все же не чаще одного из 10 раз. А то и реже. Но, тем не менее, может упасть.

 

Татьяна, wait.until я как раз делаю на visibility, например так:

element = @wait.until {
   element = @driver.find_elements(css: "td>a, td>span").
      select{|e| e.displayed? && e.text == menu_text}.first
        ....
}

Алексей, ну вот например такой код. Если этот wait.until бывало менял по схеме, описанной выше, то после такого уже всегда железно находился элемент.

Такое ощущение, что wait.until берет какой-то самый начальный "снимок" страницы и пытается в нём искать в течение всего таймаута.


В теме: Хотелось бы взглянуть на грамотный пример тест-кейса

27 мая 2017 - 18:43

Stormer, а поднять тему, которой полтора года и которая уже разобрана, это не повод самоутвердиться?;)

Спрашивающему все объяснили, но при этом появилось пара человек, которые начали тролить, да.

 

Теперь через полтора года появляетесь вы, на всех, без указания обращения, выливаете ушат скверной жидкости и пытаетесь утвердиться за счет знаний КС. Вероятно, это психология, да?:)

Вероятно :) Нет, я не пытаюсь. Я себя умнее кого-то не считаю.


В теме: Хотелось бы взглянуть на грамотный пример тест-кейса

26 мая 2017 - 13:35

 

ЗЫ: надысь в слаке одному товарищу, по доброте душевной, подробно ответил почему у него тесты в кроне не стартуют. Сегодня он в личу прямо с трейсбека зашел. Сижу вот, думаю, как человеку объяснить, что он слегка... даже с формулировкой затрудняюсь.

 

Давайте я тоже пообъясняю кое-что: "двое минус на зиге, дай флеш на дл, убрал с 1.4". Вы поняли, о чём я? Ок, бесспорно, задроты кс поймут.

Еще врачи друг друга хорошо понимают, изъясняясь на только им понятных терминах. А еще музыканты могут. Да и много кто может.


В теме: Хотелось бы взглянуть на грамотный пример тест-кейса

26 мая 2017 - 12:44

 

Меня особенно прикольнула начальная часть обсуждения. Человек нормально к вам обращается. А вы ему "неправильное кол-во вопросов задал" и т.п. подобную чепуху. С целью типа доказать, что вы умнее, а он глупее. Да тут науки-то никакой особо нет. Тест кейсы-тест-дизайны. Лол. Определение просто знать и всё. Что за люди, обязательно где-то надо найти повод, чтобы "самоутвердиться".

Человеку дали ссылку на статью с примерами, человеку дали определение, человека попросили сделать как понимает и пообещали поправить если что не так. А потом пришел 1 тролль и подстебнул, что человек под присказку "задам только один вопрос" задал 3. И все, все вокруг козлы, нормальному человеку помочь не хотят.
Да-да, конечно, тестировщик - не профессия, вызубрил пяток определений и тыкай в кнопки.

ЗЫ: надысь в слаке одному товарищу, по доброте душевной, подробно ответил почему у него тесты в кроне не стартуют. Сегодня он в личу прямо с трейсбека зашел. Сижу вот, думаю, как человеку объяснить, что он слегка... даже с формулировкой затрудняюсь.

 

Если не хотите помогать - не помогайте. Вас никто не заставляет помогать. Типичный пример русских форумов. Хз, почему у нас только такое. Читаешь стек-оверфлоу, там всё по делу. Читаешь русский форум: об----ут 10 раз, скажут, какой тупой. Потом только возможно дадут решение. Классика.

 

Это больше вопросы психологии. И это надо понимать, что всегда, когда человек что-то не знает, не разбирается в том, что знаешь ты, тебе он будет казаться глупее. Хотя это совершенно не обязательно так. И подстебывать и самоутверждаться - это идёт всё на самом деле оттого, что внутренне тот, кто это делает, не ощущает себя крутым. Не ощущает того, что он в чём-то достиг каких-то высот.

 

Если уж на то пошло, то любой математик может начать опускать всех нас, потому что его наука гораздо глубже и фундаментальнее, чем всё наше тестирование вместе взятое. Давайте ощутим себя даунами все вместе и признаем, что это так? Или не нравится?