home.social

#flaky_tests — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #flaky_tests, aggregated by home.social.

  1. FlakyDetector 2.0: Как я превратил сырое исследование в продакшен-инструмент с AST, ML и красивым дашбордом…

    Представь: пятница, вечер. Ты запускаешь CI для последнего пулл-реквеста, идёшь наливать кофе, возвращаешься… а билд упал. Один тест. Ты перезапускаешь проходит. «Флаки», — вздыхаешь ты и ставишь лейбл flaky . На следующей неделе история повторяется. Потом ещё раз. Мы привыкли, что нестабильные тесты — это неизбежное зло . Их ловят повторными прогонами, а если повезёт вырезают. Но знаешь, что реально бесит? В 80% случаев корень проблемы можно найти, просто посмотрев на код теста. Я написал инструмент, который это делает автоматически. Без логов CI, без истории прогонов — только AST и машинное обучение. Назвал его FlakyDetector . Первая версия была исследовательским прототипом (про него у меня выходила статья на Хабре ). А теперь — это полноценный продукт: CLI, веб-дашборд, CI-интеграция и даже React-фронтенд. И да, он open source. Давай разберёмся, как это устроено .

    habr.com/ru/articles/1035782/

    #python #ast #catboost #flaky_tests #тестирование #machine_learning #test_smells #fastapi #static_analysis

  2. FlakyDetector 2.0: Как я превратил сырое исследование в продакшен-инструмент с AST, ML и красивым дашбордом…

    Представь: пятница, вечер. Ты запускаешь CI для последнего пулл-реквеста, идёшь наливать кофе, возвращаешься… а билд упал. Один тест. Ты перезапускаешь проходит. «Флаки», — вздыхаешь ты и ставишь лейбл flaky . На следующей неделе история повторяется. Потом ещё раз. Мы привыкли, что нестабильные тесты — это неизбежное зло . Их ловят повторными прогонами, а если повезёт вырезают. Но знаешь, что реально бесит? В 80% случаев корень проблемы можно найти, просто посмотрев на код теста. Я написал инструмент, который это делает автоматически. Без логов CI, без истории прогонов — только AST и машинное обучение. Назвал его FlakyDetector . Первая версия была исследовательским прототипом (про него у меня выходила статья на Хабре ). А теперь — это полноценный продукт: CLI, веб-дашборд, CI-интеграция и даже React-фронтенд. И да, он open source. Давай разберёмся, как это устроено .

    habr.com/ru/articles/1035782/

    #python #ast #catboost #flaky_tests #тестирование #machine_learning #test_smells #fastapi #static_analysis

  3. FlakyDetector 2.0: Как я превратил сырое исследование в продакшен-инструмент с AST, ML и красивым дашбордом…

    Представь: пятница, вечер. Ты запускаешь CI для последнего пулл-реквеста, идёшь наливать кофе, возвращаешься… а билд упал. Один тест. Ты перезапускаешь проходит. «Флаки», — вздыхаешь ты и ставишь лейбл flaky . На следующей неделе история повторяется. Потом ещё раз. Мы привыкли, что нестабильные тесты — это неизбежное зло . Их ловят повторными прогонами, а если повезёт вырезают. Но знаешь, что реально бесит? В 80% случаев корень проблемы можно найти, просто посмотрев на код теста. Я написал инструмент, который это делает автоматически. Без логов CI, без истории прогонов — только AST и машинное обучение. Назвал его FlakyDetector . Первая версия была исследовательским прототипом (про него у меня выходила статья на Хабре ). А теперь — это полноценный продукт: CLI, веб-дашборд, CI-интеграция и даже React-фронтенд. И да, он open source. Давай разберёмся, как это устроено .

    habr.com/ru/articles/1035782/

    #python #ast #catboost #flaky_tests #тестирование #machine_learning #test_smells #fastapi #static_analysis

  4. FlakyDetector 2.0: Как я превратил сырое исследование в продакшен-инструмент с AST, ML и красивым дашбордом…

    Представь: пятница, вечер. Ты запускаешь CI для последнего пулл-реквеста, идёшь наливать кофе, возвращаешься… а билд упал. Один тест. Ты перезапускаешь проходит. «Флаки», — вздыхаешь ты и ставишь лейбл flaky . На следующей неделе история повторяется. Потом ещё раз. Мы привыкли, что нестабильные тесты — это неизбежное зло . Их ловят повторными прогонами, а если повезёт вырезают. Но знаешь, что реально бесит? В 80% случаев корень проблемы можно найти, просто посмотрев на код теста. Я написал инструмент, который это делает автоматически. Без логов CI, без истории прогонов — только AST и машинное обучение. Назвал его FlakyDetector . Первая версия была исследовательским прототипом (про него у меня выходила статья на Хабре ). А теперь — это полноценный продукт: CLI, веб-дашборд, CI-интеграция и даже React-фронтенд. И да, он open source. Давай разберёмся, как это устроено .

    habr.com/ru/articles/1035782/

    #python #ast #catboost #flaky_tests #тестирование #machine_learning #test_smells #fastapi #static_analysis

  5. Архитектура тестового фреймворка

    Красные тесты на CI, зелёные локально, time.sleep в каждом втором тесте, а после смены селектора всё равно всё падает? Знакомо. Это не судьба, а отсутствие архитектуры. Разбираем, как превратить хаос из автотестов в промышленный фреймворк: слои, паттерны (POM, Builder, DI), анти-паттерны и работу с окружениями. С примерами на Python.

    habr.com/ru/companies/otus/art

    #архитектура_тестового_фреймворка #автотесты_Python #Page_Object_Model #pytest #антипаттерны_тестирования #flaky_tests #WebDriver_ожидания #тестовые_данные_изоляция #стабильность_автотестов

  6. Избавляемся от Flaky тестов в CI/CD при помощи JMina

    Представьте: вы написали код, покрыли его тестами, запустили их локально — тесты успешно прошли. Вы загрузили изменения в репозиторий, пайплайн успешно завершился. Самое время расслабиться и приступить к новым задачам. Но не тут-то было! Спустя некоторое время в CI/CD падает тест. Вы запускаете тесты локально — они проходят успешно. Вы снова запускаете пайплайн в CI/CD — и тесты снова проходят. Однако через какое-то время ситуация повторяется.

    habr.com/ru/articles/904952/

    #java #test #integration_testing #flaky #flaky_tests #logging #slf4j #tdd #kotlin #groovy

  7. Избавляемся от Flaky тестов в CI/CD при помощи JMina

    Представьте: вы написали код, покрыли его тестами, запустили их локально — тесты успешно прошли. Вы загрузили изменения в репозиторий, пайплайн успешно завершился. Самое время расслабиться и приступить к новым задачам. Но не тут-то было! Спустя некоторое время в CI/CD падает тест. Вы запускаете тесты локально — они проходят успешно. Вы снова запускаете пайплайн в CI/CD — и тесты снова проходят. Однако через какое-то время ситуация повторяется.

    habr.com/ru/articles/904952/

    #java #test #integration_testing #flaky #flaky_tests #logging #slf4j #tdd #kotlin #groovy

  8. Избавляемся от Flaky тестов в CI/CD при помощи JMina

    Представьте: вы написали код, покрыли его тестами, запустили их локально — тесты успешно прошли. Вы загрузили изменения в репозиторий, пайплайн успешно завершился. Самое время расслабиться и приступить к новым задачам. Но не тут-то было! Спустя некоторое время в CI/CD падает тест. Вы запускаете тесты локально — они проходят успешно. Вы снова запускаете пайплайн в CI/CD — и тесты снова проходят. Однако через какое-то время ситуация повторяется.

    habr.com/ru/articles/904952/

    #java #test #integration_testing #flaky #flaky_tests #logging #slf4j #tdd #kotlin #groovy

  9. Избавляемся от Flaky тестов в CI/CD при помощи JMina

    Представьте: вы написали код, покрыли его тестами, запустили их локально — тесты успешно прошли. Вы загрузили изменения в репозиторий, пайплайн успешно завершился. Самое время расслабиться и приступить к новым задачам. Но не тут-то было! Спустя некоторое время в CI/CD падает тест. Вы запускаете тесты локально — они проходят успешно. Вы снова запускаете пайплайн в CI/CD — и тесты снова проходят. Однако через какое-то время ситуация повторяется.

    habr.com/ru/articles/904952/

    #java #test #integration_testing #flaky #flaky_tests #logging #slf4j #tdd #kotlin #groovy