Commit | Line | Data |
---|---|---|
a266333a RGS |
1 | This is the perl test library. To run the test suite, just type './TEST' |
2 | or 'make test' from the build directory above t/. See also the section | |
3 | "Special Make Test Targets" in pod/perlhack.pod to learn about other | |
4 | specific test commands. | |
8d063cd8 LW |
5 | |
6 | To add new tests, just look at the current tests and do likewise. | |
a266333a RGS |
7 | The library t/test.pl provides some utility functions that you can use |
8 | in most tests, except in the most basic ones. | |
8d063cd8 LW |
9 | |
10 | If a test fails, run it by itself to see if it prints any informative | |
11 | diagnostics. If not, modify the test to print informative diagnostics. | |
12 | If you put out extra lines with a '#' character on the front, you don't | |
13 | have to worry about removing the extra print statements later since TEST | |
14 | ignores lines beginning with '#'. | |
15 | ||
774d564b | 16 | If you know that Perl is basically working but expect that some tests |
17 | will fail, you may want to use Test::Harness thusly: | |
bd87065d | 18 | cd t |
785aa5e3 | 19 | ./perl harness |
774d564b | 20 | This method pinpoints failed tests automatically. |
bbad3607 | 21 | |
e22791c4 | 22 | If you come up with new tests, please send them to perlbug@perl.org. |
b25e12d2 | 23 | |
bd87065d | 24 | Tests in the t/base/ directory ought to be runnable with plain miniperl. |
b25e12d2 AD |
25 | That is, they should not require Config.pm nor should they require any |
26 | extensions to have been built. TEST will abort if any tests in the | |
bd87065d PP |
27 | t/base/ directory fail. |
28 | ||
244d9cb7 RGS |
29 | Tests in the t/comp/, t/cmd/, t/run/, t/io/, t/op/ and t/uni/ directories |
30 | should also be runnable by miniperl and not require Config.pm, but | |
31 | failures to comply will not cause TEST to abort like for t/base/. |