Автоматизирую тесты на Python + Selenium + pytest +/- мелкие библиотеки
Написал некоторый набор тестов, все работает отлично за исключением пары тестов, которые дают не стабильный результат: Делаю 10 прогонов с одной и тоже логикой на одном и том же сервере и получаю примерно 7 успешных и 3 неудачных прогона, ошибка очень странная и не гуглиться:
self = <selenium.webdriver.remote.errorhandler.ErrorHandler object at 0x10ec47b00>
response = {'status': [13, 'unknown error'], 'value': "<html><body><h1>504 Gateway Time-out</h1>\nThe server didn't respond in time.\n</body></html>"}
Такая ошибка не одна и во всех подобных тестах падение происходит во время перехода по url, делаю вот так:
Попробуйте снимать скриншоты при падении тестов. Иногда помогает установить причину проблемы. Хотя очень похоже на то, что сказал @Valentin_G: тестовое окружение не выдерживает нагрузки. Проверить просто: напишите простенький многопоточный тест, который будет бомбить backend REST запросами, аналогичными тем, которые возвращают 504.
проблема абсолютно не зависит от теста, она может возникнуть как в начале тест сьюта, так и в конце, тяжелый тест может пройти, а совсем легкий в один клик - упадет, все более менее серьезные стресс тесты стенд проходит на отлично, проблема в хабе
В проекте была ситуация - нестабильно работал сторонний сервис, надо было проверить его. Используя JMeter сделал нагрузочный тест, при 20 запросах - более 50% было с 500 кодом. Дал результаты тамошним разработчикам - за пару дней нашли у себя баг и пофиксили.
Проблему удалось решить настройками запуска, в докере под вебдрайвер необходимо выделять дополнительную таблицу под кэш ссылок, иначе память переполняется и запросы начинают пропадать без вести
у нас слишком сложная система в кубернетисе, чтобы расписать подробно девопсовское решение, но решение нужно искать на стороне кубернетиса и его настроек