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

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

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

На 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.

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

Обучение Power BI – какие онлайн курсы аналитики выбрать

Сегодня мы поговорим о том, как выбрать лучшие курсы Power BI в Украине, особенно для…

13.01.2024

Work.ua назвал самые конкурентные вакансии в IТ за 2023 год

В 2023 году во всех крупнейших регионах конкуренция за вакансию выросла на 5–12%. Не исключением…

08.12.2023

Украинская IT-рекрутерка создала бесплатный трекер поиска работы

Unicorn Hunter/Talent Manager Лина Калиш создала бесплатный трекер поиска работы в Notion, систематизирующий все этапы…

07.12.2023

Mate academy отправит работников в 10-дневный оплачиваемый отпуск

Edtech-стартап Mate academy принял решение отправить своих работников в десятидневный отпуск – с 25 декабря…

07.12.2023

Переписки, фото, история браузера: киевский программист зарабатывал на шпионаже

Служба безопасности Украины задержала в Киеве 46-летнего программиста, который за деньги устанавливал шпионские программы и…

07.12.2023

Как вырасти до сеньйора? Девелопер создал популярную подборку на Github

IT-специалист Джордан Катлер создал и выложил на Github подборку разнообразных ресурсов, которые помогут достичь уровня…

07.12.2023