This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Update documentation, readmes, comments, and utilities to reference the GitHub issue...
[perl5.git] / t / README
CommitLineData
a266333a
RGS
1This is the perl test library. To run the test suite, just type './TEST'
2or '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
4specific test commands.
8d063cd8
LW
5
6To add new tests, just look at the current tests and do likewise.
a266333a
RGS
7The library t/test.pl provides some utility functions that you can use
8in most tests, except in the most basic ones.
8d063cd8
LW
9
10If a test fails, run it by itself to see if it prints any informative
11diagnostics. If not, modify the test to print informative diagnostics.
12If you put out extra lines with a '#' character on the front, you don't
13have to worry about removing the extra print statements later since TEST
14ignores lines beginning with '#'.
15
774d564b 16If you know that Perl is basically working but expect that some tests
17will fail, you may want to use Test::Harness thusly:
bd87065d 18 cd t
785aa5e3 19 ./perl harness
774d564b 20This method pinpoints failed tests automatically.
bbad3607 21
8166b4e0
DB
22If you come up with new tests, please submit them to
23https://github.com/Perl/perl5/issues.
b25e12d2 24
bd87065d 25Tests in the t/base/ directory ought to be runnable with plain miniperl.
b25e12d2
AD
26That is, they should not require Config.pm nor should they require any
27extensions to have been built. TEST will abort if any tests in the
bd87065d
PP
28t/base/ directory fail.
29
244d9cb7
RGS
30Tests in the t/comp/, t/cmd/, t/run/, t/io/, t/op/ and t/uni/ directories
31should also be runnable by miniperl and not require Config.pm, but
32failures to comply will not cause TEST to abort like for t/base/.
c7f294b6
DM
33
34Tests in t/perf/ are designed to test performance and optimisations,
35and also contain additional tools and files designed to run outside
36of the test suite