RU

Тест проходит даже с багом: что показал эксперимент Дэна Лу

Агент проверял разворот на палиндроме, а порядок четырех потоков - на четырех одинаковых входах. Тесты проходили и с ошибкой. В эксперименте Дэна Лу…

кодовые агентытестированиеTDDproperty-based testingформальные методыClaude CodeCodexspec-driven development
Habr
RU

Нейросеть написала PR, тесты зелёные, а поведение изменилось. Как я научил CI это ловить

Модель «упрощает» валидацию. Линтер молчит, тесты проходят, ревьюер видит аккуратный дифф в одну строку и жмёт Approve. Через неделю выясн…

pythonproperty-based testinghypothesisdifferential testingcode reviewgithub actionsllmollamaai-генерированный кодci-cd
Habr
RU

«По будням в 9:30» → 30 9 * * 1–5: парсер расписаний на русском, который отказывается угадывать

Библиотека называется cronsense. Она переводит расписание, записанное обычными словами на русском или английском, в cron‑выражение и…

cronпарсерnatural languageTypeScriptJavaScriptopen sourceрасписаниеJSRMCPproperty-based testing
Habr
RU

Hypothesis: тесты, которые сами ищут контрпримеры к вашему коду

Обычные тесты находят только ожидаемые ошибки. В статье разберём, как Hypothesis сам ищет контрпримеры и сокращает их до минимального…

Hypothesisproperty-based testingтестирование свойствPythonавтоматизация тестированиягенерация данныхконтрпримерыshrinkingstateful-тестированиеpytest
Habr
RU

Property-based тестирование: как находить баги, которые вы не придумали

Классический unit-тест — это «вход X → ожидаю Y». Вы придумали кейс, зафиксировали ожидание, поехали. Проблема в том, что баги обычно живут не в кей…

property-based testingHypothesisтестированиеQAавтотестыPythonshrinkingfast-check
Habr
RU

Аудит алгоритмов: как реализация Boyer-Moore с 190K звёзд на GitHub оказалась brute-force

Проверил реализацию Boyer-Moore в TheAlgorithms/Python (190K+ звёзд). Оказалось, что сдвиг bad character записывается в переменную for-цикла, что в…

алгоритмыBoyer-MoorePythonтестированиебагиopen sourceproperty-based testingстроковый поиск
Habr
RU

Property-based testing на практике: как находить баги, о которых вы не подумали

Тридцать зелёных юнит‑тестов ещё не означают, что код готов к продакшену. Баги часто прячутся в данных, которые никто не до…

property-based testingHypothesisавтоматизация тестированиягенерация тестовых данныхPythonинвариантыконтрпримерыstateful-тестированиестратегии Hypothesisпоиск багов
Habr
RU

[Перевод] Claude против краевых случаев: как LLM-агент нашёл баги в NumPy и других Python-библиотеках

Исследователи Anthropic собрали LLM-агента, который читает код Python-библиотек, сам формулирует свойства, пишет property-based тесты на Hypothesis…

property-based testingтестирование на основе свойствClaudeLLM-агентыhypothesisавтоматизация тестированияпоиск баговpython-библиотекиNumPy