Хобрук: Ваш путь к мастерству в программировании

Настройте Leiningen для интеграционного тестирования

Интересно, как я могу сделать следующие вещи в Лейнингене (если это идиоматический способ решить эту проблему):

  1. Я хочу переместить свои интеграционные тесты из модульных тестов, расположенных в папке test, в другую папку, скажем, integration-test. Я предполагаю, что это означает, что мне нужно настроить Leiningen, чтобы добавить integration-test к «тестовому пути к классам».
  2. Я хочу создать новую задачу, которая выполняет только интеграционные тесты.
  3. Я хотел бы подключить новую задачу интеграционного тестирования к задаче установки

Я использую Midje в качестве тестовой библиотеки (если это имеет значение).

04.09.2014

Ответы:


1

После некоторого расследования мне удалось найти решение, которым я доволен. Во-первых, все Midje предоставляют фильтры, которые позволяют вам помечать факт с ключевым словом. Затем вы можете запускать помеченные факты следующим образом:

lein midje :filters it

При этом будут запускаться факты, помеченные ключевым словом :it.

Далее мы можем добавить новую папку для наших интеграционных тестов в Лейнингене:

:test-paths ["test" "itest"]

Папка itest теперь будет выбрана Лейнингеном и добавлена ​​в путь к классам.

Если нам трудно не забывать писать lein midje :filters it каждый раз, когда мы запускаем наши интеграционные тесты, мы можем добавить псевдоним для Leiningen:

:aliases {"itest" ["midje" ":filters" "it"]}

Я также написал блог об этом с некоторыми подробностями, если кому интересно.

09.09.2014
Новые материалы

Учебные заметки JavaScript Object Oriented Labs
Вот моя седьмая неделя обучения программированию. После ruby ​​и его фреймворка rails я начал изучать самый популярный язык интерфейса — javascript. В отличие от ruby, javascript — это более..

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

Предсказание моей следующей любимой книги 📚 Благодаря данным Goodreads и машинному обучению 👨‍💻
«Если вы не любите читать, значит, вы не нашли нужную книгу». - J.K. Роулинг Эта статья сильно отличается от тех, к которым вы, возможно, привыкли . Мне очень понравилось поработать над..

Основы принципов S.O.L.I.D, Javascript, Git и NoSQL
каковы принципы S.O.L.I.D? Принципы SOLID призваны помочь разработчикам создавать надежные, удобные в сопровождении приложения. мы видим пять ключевых принципов. Принципы SOLID были разработаны..

Как настроить Selenium в проекте Angular
Угловой | Селен Как настроить Selenium в проекте Angular Держите свое приложение Angular и тесты Selenium в одной рабочей области и запускайте их с помощью Mocha. В этой статье мы..

Аргументы прогрессивного улучшения почти всегда упускают суть
В наши дни в кругах веб-разработчиков много болтают о Progressive Enhancement — PE, но на самом деле почти все аргументы с обеих сторон упускают самую фундаментальную причину, по которой PE..

Введение в Джанго Фреймворк
Схема «работать умно, а не усердно» В этой и последующих статьях я познакомлю вас с тем, что такое фреймворк Django и как создать свое первое приложение с помощью простых и понятных шагов, а..