Jump to content

Тестируйте любой протокол

Протокол Test Anything ( TAP ) — это протокол для связи между тестовой логикой, называемой производителем TAP, и тестовым оборудованием независимо от языка . Первоначально разработанные для модульного тестирования интерпретатора Perl в 1987 году, производители и анализаторы теперь доступны для многих платформ разработки.

TAP был создан для первой версии языка программирования Perl (выпущенной в 1987 году) как часть основного пакета тестирования Perl ( t/TEST). Test::Harness Модуль был написан Тимом Бансом и Андреасом Кёнигом, чтобы позволить авторам модулей 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 модули. Поведение Test::Harness Модуль де-факто является стандартной реализацией TAP вместе с описанием спецификации на https://testanything.org .

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

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

1..48
ok 1 Description # Directive
# Diagnostic
....
ok 47 Description
ok 48 Description

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

1..4
ok 1 - Input file opened
not ok 2 - First line of the input valid.
    More output from test 2. There can be
    arbitrary number of lines for any output
    so long as there is at least some kind
    of whitespace at beginning of line.
ok 3 - Read the rest of the file
#TAP meta information
not ok 4 - Summarized correctly # TODO: not written yet

См. также

[ редактировать ]
  • xUnit — класс аналогичных фреймворков модульного тестирования.
  1. ^ «Набор инструментов Perl для регрессионного тестирования: Инструменты тестирования» . Nnc3.com . Проверено 27 октября 2017 г.
  2. ^ Шилли, Майк. «Печать как печать » Журнал Linux» . Журнал Линукс . Проверено 27 октября 2017 г.
  3. ^ Сабо, Габор. «TAP — протестируйте любой протокол» . Перл Мейвен . Проверено 7 августа 2019 г.
  4. ^ Перейти обратно: а б с «Веб-сайт Test Anything Protocol» . Testanything.org . Проверено 4 сентября 2008 г.
  5. ^ МакКлайв, Саймон (21 сентября 2017 г.). «Модульное тестирование Postgres с помощью pgTAP» . Середина . Проверено 7 августа 2019 г.
  6. ^ Гравелл, Роб (13 августа 2012 г.). «Тестирование хранимых процедур MySQL с помощью MyTAP» . Журнал базы данных . Проверено 7 августа 2019 г.
  7. ^ «Узловой кран» . Узел Нажмите . Проверено 7 августа 2019 г.
  8. ^ «Страница руководства TAP(3)» . FreeBSD . Проверено 7 августа 2019 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 5974178d4ca0f921d8b42e2363da1c71__1717414800
URL1:https://arc.ask3.ru/arc/aa/59/71/5974178d4ca0f921d8b42e2363da1c71.html
Заголовок, (Title) документа по адресу, URL1:
Test Anything Protocol - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)