Flaky tests: The method. (Andrei Solntsev, Estonia) [RU]

  Рет қаралды 2,691

Selenium Camp

Selenium Camp

Күн бұрын

Пікірлер: 12
@EponskijGorodovoij
@EponskijGorodovoij Ай бұрын
Почему не был рассмотрен вариант использования Concurrency API, для решения задач с поджиданием всяких шустрых элементов в отдельном неблокирующем потоке?
@EugeneM
@EugeneM 3 жыл бұрын
Про первый сценарий, который якобы НИКАК не протестить, чтобы тест был неморагющий. Всё просто. Шаги should appear или should disappear не должны иметь таймаута 4 сек. Этот таймаут должен быть намного больше (а разумных пределах, с учетом самых тормозных браузеров и систем, ну скажем 1 мин). И тогда шаг валидации дождётся появления Saving. А затем дождётся исчезания. Моргнуть такой тест может, если браузер или винда подвиснет. Но это уже исключительный случай.
@andrei.solntsev
@andrei.solntsev 3 жыл бұрын
Ну, так можно увеличивать таймаут до бесконечности. Ну да, можно. Некоторые кейсы это решит, но не все. Но разве это вообще нормально в 21 веке, что какое-то действие на UI длится дольше 4 секунд? Не правильнее ли вместо увеличения таймаута разобраться, что там тормозит? Если оно в тестах так тормозит, что же в продакшине будет?
@EugeneM
@EugeneM 3 жыл бұрын
@@andrei.solntsev запросто может на UI что-то ждать более 4 сек, особенно при обращении к бэкэнду. Плюс может быть какой то глюк сети.
@andrei.solntsev
@andrei.solntsev 3 жыл бұрын
@@EugeneM Ну да, если какой-то конкретный шаг ожидаемо может занять более 4 секунд, то ему можно явно указать таймаут побольше. Всё это легко делается. Типа $.should(appear, Duration.ofSeconds(60)). НО Этот тест всё равно может моргнуть, если запрос, наоборот, очень быстрый. Тогда может случиться, что надпись "Saving" успела появиться и пропасть до того, как тест начал ожидать её появления.
@ajiekcahdppeperoni7011
@ajiekcahdppeperoni7011 3 жыл бұрын
selenide - обертка не допиленная, если честно
@andrei.solntsev
@andrei.solntsev 3 жыл бұрын
Вот это заявка. :) Так всё на свете недопиленная! Ну так заведи issue, расскажи, что следует допилить. Ну и допили по возможности. Это ж опенсорс так-то.
@SB-pk2ss
@SB-pk2ss Жыл бұрын
о, а вот и эспертное мнение подъехало, как всегда с аргументами)). Держи в курсе
@АлексейВолков-й6п5ъ
@АлексейВолков-й6п5ъ 4 жыл бұрын
в общем понятно кому теперь жаловаться когда bspb в очередной раз висит )
@andrei.solntsev
@andrei.solntsev 4 жыл бұрын
Это даже мне непонятно...
@QwinTube
@QwinTube 3 жыл бұрын
@@andrei.solntsev на 36 минуте начал рассказывать что настроен дженкинс чтобы билдить новую ветку - можно подробнее как реализовано, и как гонять лишь один тест
@andrei.solntsev
@andrei.solntsev 3 жыл бұрын
@@QwinTube Так это как раз легко. Создаёшь ветку, добавляешь в build.gradle или pom.xml строчку типа "include **/MyTest*" и погнали. Здесь подробнее: kzbin.info/www/bejne/gnXNdaeIa9CXaMU - с 11:57
風船をキャッチしろ!🎈 Balloon catch Challenges
00:57
はじめしゃちょー(hajime)
Рет қаралды 82 МЛН
Trapped by the Machine, Saved by Kind Strangers! #shorts
00:21
Fabiosa Best Lifehacks
Рет қаралды 39 МЛН
ТВОИ РОДИТЕЛИ И ЧЕЛОВЕК ПАУК 😂#shorts
00:59
BATEK_OFFICIAL
Рет қаралды 4,6 МЛН
Real Man relocate to Remote Controlled Car 👨🏻➡️🚙🕹️ #builderc
00:24
The Nuts and Bolts of WebdriverIO (Christian Bromann, Germany) [EN]
47:34
The Art of Code - Dylan Beattie
1:00:49
NDC Conferences
Рет қаралды 4,7 МЛН
CI/CD - Простым языком на понятном примере
15:29
Артём Шумейко
Рет қаралды 108 М.
Test coverage visualization (Artem Eroshenko, Russia) [RU]
48:48
Selenium Camp
Рет қаралды 1,7 М.
Clean Code - Uncle Bob / Lesson 3
59:41
UnityCoin
Рет қаралды 354 М.
風船をキャッチしろ!🎈 Balloon catch Challenges
00:57
はじめしゃちょー(hajime)
Рет қаралды 82 МЛН