02.09.2026: Среда-разгреба из рук валива

«…Семь раз отмерь — один раз отрежь…» © Народная мудрость

А ведь как удобно! Вместо того чтобы делать дело, сидишь и вымеряешь, вымеряешь и задумчиво долго глядишь в потолок.

Есть мысль (h 100px)
Шучу!
Думаю (h 100px)
Хотя…

С самого утра убрал хлам с 3D-принтера, протёр стол, запустил печать. И оказалось, что модель не той длины.

Злюсь (h 100px)
И как так вышло!? Я же вчера чётко прописывал размеры!

Смоделировал заново. Поставил печататься и… Ну капец! Края модели загнулись вверх.

Безумие (h 100px)
Пластик недостаточно сухой? Адгезия в этом месте оказалась плохой? Принтеру пора на помойку!? Да что не так!?

Прервал печать. Отодрал от стола испорченную деталь. Взгрустнул по потраченному времени и пластику.

Стартую рабочий день. Уж там то всё должно быть ровно.

А вот и ни… А вот и нет! Почти сразу после начала рабочего дня попёрли сообщения.

Злюсь (h 100px)
Ну здорово! Стенд так и не починили. Тестовому стенду нужен психиатр! Он жёстко глючит и ведёт себя неадекватно.

Созвонились с бэкендером. Выяснили, что в новой версии изменился эндпоинт авторизации в админке.

Безумие (h 100px)
….!!!!!!

Но это ладно. С этим хотя бы понятно что делать. А как быть с неадекватным поведением, когда админ не видит таблицу с обращениями пользователей. Она тупо не грузится!

Бомбит (h 100px)
Устраивать новый созвон с фронтендерами? Опять плясать с бубном? Жаловаться в лигу наций? Или что?
psihiatr
Для начала нужно успокоиться.

Вдох. Выдох. Вдох. Выдох. Вдох. Сдох. Выдох. Раз. Два. Три. Четыре. Пять. Тридцать.

Замыслил-затаил (h 100px)
Вроде чуть отпустило.

Что можно сделать? Для начала нужно вытянуть из проекта всех пользователей, все их роли и прочие параметры, и собрать в сводный документ. Чтобы было с чем идти к фронтам.

Вот только это работа на неделю или две… Или нет?

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

Повторная попытка печати детали. И снова та же проблема!

Рука-лицо (h 100px)
Углы задираются вверх настолько, что об них начинает спотыкаться глова принтера.

Похоже, что дело в пластике. Он набрал воды и теперь его плющит и колбасит.

Можно выкинуть. Можно посушить часиков 8, и попробовать снова пустить в дело.

Думаю (h 100px)
Выкинуть — очень заманчивая идея. Но это почти 1000 рублей в помойное ведро.

Жаба убедила расчехлить сушилку… А кривые руки её уронили… Сушилку. Командная работа!

Большинство производителей рекомендуют сушить PETG в диапазоне 60–70 °C — 4-6 часов.

Значит ночью нужно будет включить, часов за 6 до того как проснусь. А включением займётся автоматика (умная розетка + HASS).

А ХЗ (h 100px)
Увы, но сушилка полностью аналоговая. Как в СССР. Тут не только включение вручную. Тут ещё и выключение заморочное. Нельзя обесточивать сушилку сразу. Нужно постепенно довести нагрев до нуля, чтобы спираль не лопнула или типа того.

Как бы не забыть сделать временную автоматизацию?

Второй день мучаюсь с тем, что тестируемый сайт не выдаёт таблицу с данными. Шапка грузится, меню грузится, а ниже всего этого белая мгла и пустое пространство.

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

А решение оказалось до обидного простым. Но сначала о причине.

Взрыв мозга (h 250px)

Почему таблица не загружалась: точка останова, прокси Selenide и расследование

Буду краток. Оказывается, IDE может сломать страницу в браузере. Если тест наследуется от базового класса с `Configuration.proxyEnabled = true`, Selenide поднимает прокси-сервер внутри JVM теста, и Chrome запускается с ключом `—proxy-server`, указывающим на него.

Точка останова в IntelliJ IDEA по умолчанию работает в режиме Suspend: All. Т.е. замораживает все потоки JVM, а вместе с ними и этот прокси. Браузер остаётся с тем, что успел загрузить до останова: шапка и меню на месте, а всё, что подтягивается запросами, уже не придёт никогда.

Выглядит как сломанный фронт, права доступа или мёртвый бэкенд.

Лечится одним кликом: правый клик по точке останова → Suspend: Thread. Тогда встаёт только поток теста, прокси продолжает обслуживать браузер.
Альтернатива — поставить в код ожидание (sleep) вместо/до точки останова или на время отладки уйти на базовый класс без прокси.

Узнать эту болезнь можно по трём признакам разом:

  • DOM через CDP читается, а `Runtime.evaluate` висит;
  • процессор при этом не загружен;
  • тот же URL из curl или скрипта отдаётся за десятки миллисекунд.

Т.е. поставив банальный sleep(100000); перед точкой останова, я решил проблему и смог спокойной собрать нужные селекторы со страницы.

Бывалый (h 100px)
Слов нет… Цензурных. Одни междометия. Но т.н. «баг» победить получилось. И судя по всем приметам, он сидел между креслом и монитором.
zlobniyii
Ах-ха-ха-ха-ха, глупый человечишка!

Рабочий день закончил позже, но зато тест теперь зелёный. Нужно будет поискать методы или хотя бы эндпоинты для удаления тестируемых карточек, чтобы не загаживать базу данных каждым тестом.

Но это завтра. А сегодня взгляд нашарил книгу про цигун. Открыл. Написана просто, читается медленно. Поймал себя на том, что получаю удовольствие от этой неспешности, хотя мозг постоянно пытается одновременно заглянуть в следующую строчку. Приходится его контролировать, чтобы не проглотить, а усвоить написанное.

Очень круто (h 100px)
Эта книга, словно тренажёр. Захотелось научиться читать вот так, без спешки.

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

Так что, сгенерировал, обработал в редакторе и поставил прожигаться. А пока прожигается, можно посмотреть новые серии аниме «Революция книжного червя».

Вот что получилось. Очень неплохо для картона коробки от пиццы. Мне нравится.

Ну а после «червя» засел смотреть «Военная хроника маленькой девочки». Грустный и безумный сериал.

Напишите комментарий

Введите имя

Введите адрес электронной почты

Введите адрес вашего сайта

Нажмите эту кнопку, чтобы отправить комментарий.

Введите текст комментария