🔧 Метапрограммирование в действии
🔍 На новой работе при погружении в проект обнаружил, что в 2000+ тестах отсутствует привязка к Allure ID. В свободное время я быстро написал скрипт, который исправляет это автоматически.
🚀 Что нам нужно сделать?
1. 🗂 Собрать список тестов — пройтись по папкам и найти все файлы с тестами
2. 🛠 Запросить Allure TestOps API по названию теста и получить нужный ID
3. ✒️ Вставить над каждым тестом декоратор @allure.id(<ID>) и добавить импорт
⚡️ Итерация 1: Быстрый старт на регулярках
Сначала с помощью LLM (GPT) набросил решение на регулярных выражениях
⚠️ Выскочили проблемы:
🔵 Регулярка ловила строки внутри комментариев
🔵 Импорт вставлялся некорректно
🌳 Итерация 2: Надёжное решение через AST
Переписал скрипт на основе AST — теперь он устойчив к любым краевым случаям!
✨ Выводы
💡 LLM отлично помогают прототипировать решения
🔄 Но идеальный код они не всегда выдадут с первого захода
🕒 Написание такого скрипта вручную заняло бы полный рабочий день
🎓 Если вы ещё учитесь — не используйте GPT для списывания домашних, учите основы программирования и базовую теорию разработки ПО
#automation #tools #ai
Post #259
1.51K
- 🔥 10
- 👍 4