Movatterモバイル変換


[0]ホーム

URL:


Test Anything Protocol


TAP History

The protocol has been around since 1988.

TAP Namespace Nonproliferation Treaty

TAP has roots from the Perl programming language. Due to conficting namespacesin that language, many Perl TAP authors signed a “nonproliferation treaty”with the intent to reduce namespace conflicts.

The vast range of programming languages makes the treaty difficult toenforce across the TAP ecosystem. Theoriginal treaty pageis included on this history page for posterity.

Historical Versions

Pulling apart the historical revisions of TAP is difficult both because there was no standard and because t/TEST in the perl core and Test::Harness parse slightly different dialects of TAP. Here’s the best we can piece together right now. This information comes from Sam Villan’s historical Perl GIT repository.

Version 1

TAP as understood by Perl 1.0’s t/TEST. It understands the basic 1..M header, “ok #” and “not ok #”. No blank lines, directive, garbage lines or anything else is understood.This is implemented by t/TEST as part of Perl 1.

commit 840163baa12f7970131f7841c479bccf5be40ba9Author: Larry Wall <[email protected]>Date:   Sat Jan 30 23:00:00 1988 +0000

Version 2

Checks the wait/exit status of each test.

Implemented by Test::Harness in Perl 5.002beta3

commit 4bce96efdcaa480e392138e10166c92c5fc5f22cAuthor: Perl 5 Porters <[email protected]>Date:   Fri Feb 2 18:52:27 1996 -0800

Version 3

Comment lines beginning with # are ignored.

Implemented by Test::Harness in Perl 5.002beta3commit 4bce96efdcaa480e392138e10166c92c5fc5f22cAuthor: Perl 5 Porters <[email protected]>Date:   Fri Feb 2 18:52:27 1996 -0800

Version 4

Adds the “1..0” header for skipping the entire test. Previously it was considered a passing test.

This is first implemented by t/TEST as part of Perl 5.003_01 followed ten minutes later by Test::Harness.

commit 845b835a0bd51ac2f83e2e81f4088986d97114ffAuthor: Perl 5 Porters <[email protected]>Date:   Mon Jul 8 23:11:22 1996 +0000

Version 5

All non-TAP lines are ignored.Implemented by Test::Harness in Perl 5.003_01.

commit ae85fcb6e790acc2343e92002216642e766aa196Author: Perl 5 Porters <[email protected]>Date:   Mon Jul 8 23:22:00 1996 +0000

Version 6

Support for the skip directive.Added in Test::Harness and allow (but ignored) in t/TEST in Perl 5.004_55.

Change 318: Output skipped test information in test suite:            Subject: 5.004_55: Making test harness platform_aware            Date: Wed, 26 Nov 1997 17:16:55 -0500 (EST)            Date: Wed, 26 Nov 1997 17:16:55 -0500 (EST)

Version 7

In-header “todo” syntax added to Test::Harness in Perl 5.004_59.

Change 539: Subject: [PATCH 5.004_59] allow the Test::Harness to grok TODO-type tests docs    Date: Sat, 14 Feb 1998 17:58:01 -0500    From: Joshua Pritikin <[email protected]>

Version 8

A reason is added to the skip directive.Added in Test::Harness in Perl 5.005_53.

Change 3389: From: Ilya Zakharevich <[email protected]>            Date: Mon, 10 May 1999 02:07:01 -0400 (EDT)            Message-Id: <[email protected]>            Subject: [PATCH 5.005_53] Explanations by Test::Harness

Version 9

A reason is added to the skip all header.

Change 3399: more testsuite smarts (many of them courtesy Ilya)

Version 10

Added “Bail Out!”

Change 8028: Introduce macros for UTF8 decoding.

Version 11

Added TODO directive.

Change 8824: Subject: [PATCH t/TEST lib/Test/Harness.pm] Adding todo tests    From:[email protected]    Date: Sun, 18 Feb 2001 01:48:50 -0500    Message-ID: <[email protected]>

Version 12

Allowed header at end.

Implemented inTest::Harness 1.21.

Version 13

Understands TAP version syntax.

Implemented inTAP::Parser 0.52.

Version 14 (Current version)

Adds subtest test syntax.

More precise specification of harness behavior across language runtimes.

github.com/testanything


[8]ページ先頭

©2009-2025 Movatter.jp