1TestML1(3)            User Contributed Perl Documentation           TestML1(3)
2
3
4

NAME

6       TestML1 - DEPRECATED Generic Software Testing Meta Language
7

VERSION

9       This document describes TestML1 version 0.57.
10

STATUS

12       TestML1 is DEPRECATED.
13
14       Actually TestML1 is the old 2009-2018 version of TestML, in case you
15       still need it. Check out the new TestML.
16

SYNOPSIS

18           # file t/testml/encode.tml
19           %TestML 0.1.0
20
21           Title = 'Tests for AcmeEncode'
22           Plan = 3
23
24           *text.apply_rot13 == *rot13
25           *text.apply_md5   == *md5
26
27           === Encode some poetry
28           --- text
29           There once was a fellow named Ingy,
30           Combining languages twas his Thingy.
31           --- rot13
32           Gurer bapr jnf n sryybj anzrq Vatl,
33           Pbzovavat ynathntrf gjnf uvf Guvatl.
34           --- md5: 7a1538ff9fc8edf8ea55d02d0b0658be
35
36           === Encode a password
37           --- text: soopersekrit
38           --- md5: 64002c26dcc62c1d6d0f1cb908de1435
39
40       This TestML document defines 2 assertions, and defines 2 data blocks.
41       The first block has 3 data points, but the second one has only 2.
42       Therefore the rot13 assertion applies only to the first block, while
43       the the md5 assertion applies to both. This results in a total of 3
44       tests, which is specified in the meta Plan statement in the document.
45
46       To run this test you would have a normal test file that looks like
47       this:
48
49           use TestML1;
50           use t::Bridge;
51
52           TestML1->new(
53               testml => 'testml/encode.tml',
54               bridge => 't::Bridge',
55           )->run;
56
57       The apply_* functions are defined in the bridge class that is specified
58       outside this test ("t/Bridge.pm").
59

DESCRIPTION

61       TestML is a generic, programming language agnostic, meta language for
62       writing unit tests. The idea is that you can use the same test files in
63       multiple implementations of a given programming idea. Then you can be
64       more certain that your application written in, say, Python matches your
65       Perl implementation.
66
67       In a nutshell you write a bunch of data tests that have inputs and
68       expected results. Using a simple syntax, you specify what functions the
69       data must pass through to produce the expected results. You use a
70       bridge class to write the data functions that pass the data through
71       your application.
72
73       In Perl 5, TestML is the evolution of the Test::Base module. It has a
74       superset of Test:Base's goals. The data markup syntax is currently
75       exactly the same as Test::Base.
76

SEE ALSO

78       •   <http://www.testml.org/>
79
80       •   <irc://irc.freenode.net#testml>
81

AUTHOR

83       Ingy döt Net <ingy@cpan.org>
84
86       Copyright 2009-2018. Ingy döt Net.
87
88       This program is free software; you can redistribute it and/or modify it
89       under the same terms as Perl itself.
90
91       See <http://www.perl.com/perl/misc/Artistic.html>
92
93
94
95perl v5.38.0                      2023-07-21                        TestML1(3)
Impressum