Рубрика «tdd»

Речь пойдет о тестировании. О культуре, которая меняет качество продукта.

В этом материале обсуждается:

  • Как превратить автотесты в живую документацию(как техническую, так и аналитическую).

  • Как сделать так, чтобы они рассказывали о предметной области.

  • И в конце концов, проверяли, что все это работает.

Введение. Как появился данный материал

Я решил поделиться с коллегами некоторыми фишками, которыми пользуюсь при разработке тестов в проекте.
Первый черновик статьи мне не понравился. Никак не мог найти причину почему делюсь этим. И в один вечер, наконец, понял... Читать полностью »

Привет!

Данная статья посвящена описанию реализации учебного проекта. Проект является С++ реализацией сервиса по распределению позиций заказов внутри партий. Исходная реализация данного сервиса представлена на Python в книге «Паттерны разработки на Python: TDD, DDD и событийно-ориентированная архитектура».

Читателю рекомендуется ознакомиться с оригиналом проекта и книгой «Паттерны разработки на Python: TDD, DDD и событийно-ориентированная архитектура».

Содержание

  1. Читать полностью »

Есть небольшая книжка, написанная более 20 лет назад, переведенная на русский как «Экстремальное программирование». При обсуждении этой книжки с коллегами я часто встречал мнение, что она только про то, что надо сначала тесты писать, а потом код и больше в ней нет ничего полезного. Когда у самого добрались руки до нее, я понял, что видимо читают выжимки из статей на Хабре или просто статьи википедии, потому что там есть и паттерны проектирования, и правила написания тестов и практические примеры. А все запоминают только мантру «Утром тесты — вечером стулья код».

Читать полностью »

Любой проект начинается с идеи. Первый шаг - проработка идеи через общение с LLM используя веб интерфейс. Вы можете использовать Claude Opus 4, если вам нужен более чёткий и профессиональный тон. Выбирайте GPT 4.5 если вам подходит более расслабленный, креативный стиль общения. Но в любом случае, общий принцип такой: высказать модели идею, развить её, попросить задавать уточняющие вопросы, попросить составить структурированный документ описывающий проект целиком.

Читать полностью »

В микросервисной архитектуре есть множество зависимостей от других сервисов и инфраструктуры. В результате чего возникают проблемы, которые съедают большое количество сил и времени. Приходит, например, тестировщик с описанием воспроизведения бага — а чтобы его воспроизвести, надо долго готовить данные, а потом еще дольше поднимать фронт… После N-й итерации повторять такое вы, конечно, не будете это, мягко говоря, утомляет. Так интеграционные тесты становятся определенным оверхедом вместо того, чтобы упрощать жизнь разработчикам.

Читать полностью »

AI-driven TDD — используем Code-LLM на максимум - 1

С момента своего появления и по сей день подход Test-Driven Development (TDD) вызывает оживленные дискуссии в сообществе разработчиков, и до сих пор нет единого мнения о ее эффективности.

Но что будет, если совместить TDD и AI-генерацию кода? В статье я покажу:

  • Как соединить TDD и AI;

  • Как AI-driven TDD улучшает процесс разработки;

  • Как TDD влияет на качество сгенерированного AI кода.

Читать полностью »

Пример создания Full Stack проекта, используя функциональное тестирование как инструмент дизайна - 1

Введение

Привет!

Меня зовут Даниэль, и я разработчик автоматического тестирования.

В этой статье я постараюсь показать на простом примере, как планировать тестирование Full Stack проекта вместе с разработкой самого проекта и какие выгоды это дает.Читать полностью »

Это список вопросов на которые должен уметь ответить тот кто программирует микроконтроллеры и заниматься разработкой электроники. Вопросы в частности взяты из технических собеседований при устройстве на работу в разные компании. Постарался отобрать только самые приближенные к практике вопросы, которые можно выделить после 10 лет InSider(ского) опыта. Тут не будет моветонных вопросов из серии "как инвертировать связанный список". Тут всё исключительно только по делу.

По коду

--Зачем static?

--Зачем ключевое слово volatile C

--Всё ли в порядке с кодом?

int square(volatile int *ptr) {
    return *ptr * *ptr;
}Читать полностью »

Эта статья является переводом материала «TDD: What went wrong or did it?».

В сфере разработки программного обеспечения уже давно хвалят Test Driven Development (TDD, разработка через тестирование). Однако в последнее время было сказано много резких слов в адрес TDD, поскольку его обвиняют в плохом проектировании программного обеспечения и невыполнении многих своих обещаний. Кульминацией этой тенденции стал пост Дэвида Хайнемайера Ханссона «TDD is dead. Long live testing.» (TDD мертв. Да здравствует тестирование).

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js