Rev 78076 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed
There is a hierarchy of check targets:make checkfor all builders. If this works one can be reasonably happy R is workingand do `make install' (or the equivalent).make check-develfor people changing the code: this runs things like the demos andno-segfault which might be broken by code changes, and checks on thedocumentation (effectively R CMD check on each of the base packages).This needs recommended packages installed.make check-allruns all the checks, those in check-devel plus tests of the recommendedpackages.Note that for complete testing you will need a number of otherpackages installed and available, so if you have a CRAN installation,set R_LIBS (perhaps in ~/.R/check.Renviron) to include it beforerunning these tests. For example, some of the tests on 'nlme' dependon 'Hmisc', and there are a number of cross references from help pagesto CRAN packages.If a check fails there will almost always be a .Rout.fail file withthe problematic output, so looking at the tail of that file shouldhelp pinpoint the problem.The \dontest sections of the examples can be run bymake check TEST_DONTTEST=TRUE(but expect some differences from the reference ouput). This requiresfunctional Tcl/Tk, e.g. for X11-based versions DISPLAY must be set toa usable X server.---------- Historical Information -----------In this directory, various tests on R are run automatically.This is the recommended way to check if R has been built successfully onyour architecture.make checkdoesmake test-Examplesruns all the examples from the help files (*.Rd) of all core packages(base, ctest, ..., ts) -- which can take quite long (a few minutes,depending on your environment).make test-SpecificThe "fast" part of the tests is `test-Specific' which runs the *.Rfiles in this (./tests) directory (tolerantly) compares the result*.Rout file with the prespecified *.Rout.save (if that exists).make test-Regruns regression tests, that is tests that ensure that things which have beenchanged (perhaps as a result of bug reports) stay fixed.make test-Internetmake test-Internet2runs tests which need access to the Internet and/or sockets and so maynot run on every machine. You will see some differences in theoutput, but no test should fail if you do have sockets and Internetaccess. test-Internet2 is part of 'make check-devel' and checks lesscommonly-used options.Further tests are run by the target `make check-devel', includingmake test-Demoruns all the demos in packages base and stats (but not tcltk), exceptdemo(lm.glm) which is run by example(demo) and so not run again.make test-Randomruns a series of tests on the distribution of random variates generatedby the rxxxx() functions. The test is a large deviation bound on theKolmogorov statistic, so also provides a test of the cumulative distributionfunctions pxxxx(). Because rare events do happen, this test suitewill be failed in about 1 in 50 runs.make test-Segfaultruns a test abusing all the functions in the base packages viano-segfault.R, and that can be quite slow (a minute or more).A target not run by anything else ismake test-Systemwhich checks options in system[2]() calls.A rarely-used target ismake test-Gctruns a subset of the specific tests with gctorture turned on. This is slow,taking an hour or two.Martin Maechler for the R Core Team.