Рубріки: Новости

Универсальное модульное тестирование по комментариям

Богдан Мирченко

На dev.to разработчик из Камеруна опубликовал библиотеку, которая работает как CLI и позволяет производить модульное тестирование скриптовых языков программирования. Он назвал ее Testa и проверил на PHP, JavaScript, Python и Ruby.

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

С помощью получившейся структуры, выполненной для Python, можно упорядочить список проведенных тестов, а чтобы провести те же тесты, например, в JavaScript, достаточно заменить знак комментария с «#» на «//».

# For a Simple assertion:

# ::import_start::
# --- Your imports here, if your methods need them ---
# ::import_end::

# ::testa_start::
# ::case_start::
# >> testa.isEqual(2, 2)
# << true
# ::case_end::
# ::testa_end::

#
# ::doc_start::
#  .
#  Here a small description of the function  that will be generate on the documentation
#  .
# ::doc_end::
#

# With methods :

# ::testa_start::
# ::case_start::
# >> addition(2, 2)
# << 4
# ::case_end::
# ::code_start::
def addition(a, b):
    return a+b
# ::code_end::
# ::testa_end::

В конце автор производит стандартизацию теста с помощью только одной командной строки. Для этого он использует модель конфигурационного файла, похожую на package.json. Она описывает, какой каталог, проект или файл тестировать, с какого языка, и какой интерпретатор использовать.

Исходный код Testa есть на GitHub.

Останні статті

Что такое прокси-сервер: пояснение простыми словами, зачем нужны прокси

Прокси (proxy), или прокси-сервер — это программа-посредник, которая обеспечивает соединение между пользователем и интернет-ресурсом. Принцип…

21.11.2024

Что такое PWA приложение? Зачем необходимо прогрессивное веб-приложение

Согласитесь, было бы неплохо соединить в одно сайт и приложение для смартфона. Если вы еще…

19.11.2024

Как создать игру на телефоне: программирование с помощью конструктора

Повсеместное распространение смартфонов привело к огромному спросу на мобильные игры и приложения. Миллиарды пользователей гаджетов…

17.11.2024

Google Bard: эффективный аналог ChatGPT

В перечне популярных чат-ботов с искусственным интеллектом Google Bard (Gemini) еще не пользуется такой популярностью…

14.11.2024

Скрипт и программирование: что это такое простыми словами

Скрипт (англ. — сценарий), — это небольшая программа, как правило, для веб-интерфейса, выполняющая определенную задачу.…

12.11.2024

Дедлайн в разработке: что это такое простыми словами

Дедлайн (от англ. deadline — «крайний срок») — это конечная дата стачи проекта или задачи…

11.11.2024