Протокол Test Anything - Test Anything Protocol

В Протокол Test Anything (КРАН) - это протокол, обеспечивающий связь между модульные тесты и испытательная привязь. Это позволяет отдельным тестам (производителям TAP) передавать результаты тестирования тестовой системе в не зависящий от языка путь. Первоначально разработан для модульного тестирования Perl Интерпретатор в 1987 году, производители и парсеры теперь доступны для многих платформ разработки.

История

TAP был создан для первой версии Язык программирования Perl (выпущен в 1987 году), как часть основной тестовой программы Perl (т / ТЕСТ). В Тест :: Жгут модуль был написан Тим Банс и Андреас Кёниг чтобы позволить авторам модулей Perl использовать TAP. Это стало де-факто стандарт для тестирования Perl.[1][2][3]

Разработка TAP, включая стандартизацию протокола, написание производителей и потребителей тестов и распространение языка, координируется на веб-сайте TestAnything.[4]

Будучи протоколом, который не зависит от языка программирования, библиотеки модульного тестирования TAP расширились за пределы своих корней Perl и были разработаны для различных языков и систем, таких как PostgreSQL[5], MySQL[6], JavaScript[7] и другие реализации, перечисленные на сайте проекта.[4] Библиотека TAP C включена как часть FreeBSD Дистрибутив Unix и используется в наборе регрессионных тестов системы.[8]

Технические характеристики

Формальная спецификация для этого протокола существует в TAP :: Spec :: Parser и TAP :: Parser :: Grammar модули. Поведение Тест :: Жгут модуль де-факто стандартная реализация TAP, вместе с описанием спецификации на http://testanything.org.

Проект по производству IETF стандарт для TAP был инициирован в августе 2008 г. YAPC:: Европа 2008.[4]

Примеры использования

Вот пример общего формата TAP:

1..48Ok 1 Описание # Директива# Диагностика....Ok 47 ОписаниеOk 48 Описание

Например, результат тестового файла может выглядеть так:

1..4Ok 1 - Входной файл открытне в порядке 2 - Первая строка ввода действительна. Дополнительные результаты теста 2. Для любого вывода может быть произвольное количество строк, если в начале строки есть хотя бы какие-то пробелы.Ok 3 - Прочитать оставшуюся часть файла#TAP метаинформацияне в порядке 4 - Резюмировано правильно # СДЕЛАТЬ: еще не написано

Смотрите также

Рекомендации

  1. ^ «Набор инструментов Perl для регрессионных тестов: инструменты тестирования». Nnc3.com. Получено 27 октября 2017.
  2. ^ Шилли, Майк. «Печать как печатная упаковка» Linux Magazine ». Журнал Linux. Получено 27 октября 2017.
  3. ^ Сабо, Габор. "TAP - Test Anything Protocol". Perl Maven. Получено 2019-08-07.
  4. ^ а б c "Веб-сайт Test Anything Protocol". Testanything.org. Получено 4 сентября, 2008.
  5. ^ МакКлайв, Саймон (2017-09-21). «Модульное тестирование Postgres с помощью pgTAP». Средний (веб-сайт). Получено 2019-08-07.
  6. ^ Гравелл, Роб (13.08.2012). «Тестирование хранимых процедур MySQL с помощью MyTAP». Журнал базы данных. Получено 2019-08-07.
  7. ^ «Узел Tap». Узел Tap. Получено 2019-08-07.
  8. ^ "Страница руководства TAP (3)". FreeBSD. Получено 2019-08-07.

внешняя ссылка