CPAN Testers is only made possible with the support of our sponsors.
For more information on sponsoring, please visit the I CPAN Testers website.

Upgrade Notice

The CPAN Testers Wiki site has been upgraded since you last accessed the site. Please press the F5 key or CTRL-R to refresh your browser cache to use the latest javascript and CSS files.


The easiest way to contribute to CPAN Testers is by setting up your system so that whenever you install a CPAN module, the test results will be automatically submitted.

Setup is slightly different depending whether you use or CPANPLUS to install modules. Note that at present the cpanminus client does not support CPAN Testers.

From the CPAN shell, install the following modules:

  • CPAN::Reporter
  • Test::Reporter::Transport::Metabase
  • Crypt::SSLeay or IO::Socket::SSL

Quit and restart the shell, then enter the following command to configure your system:

o conf init test_report

Here you then be asked a series of questions:

 Email test reports if CPAN::Reporter is installed (yes/no)? [no] yes
 email_from? []
 smtp_server? [] <enter>
 edit_report? [default:ask/no pass/na:no] <enter>
 send_report? [default:ask/yes pass/na:yes] <enter>

Answering 'yes' to the first question turns on the ability to generate test reports. The SMTP server question is no longer applicable and can be ignored.

The remaining two questions allow you to decide in which case you want to edit and submit test reports. The defaults suggestion are best for users who are intending to submit reports as they are installing them.

Once you've answered all the questions, type

o conf commit

to save your settings.

Exit from the CPAN shell, then add the following line to the ~/.cpanreporter/config.ini file:

transport = Metabase uri id_file ~/.cpantesters/metabase_id.json

Finally you need to create a CPAN Testers profile with the 'metabase-profile' tool.

$ metabase-profile

Answer the prompts and copy or move the resulting metabase_id.json file to a ".cpantesters" directory under your home directory. The JSON file can actually be placed anywhere, just change the "id_file" parameter of the "transport" key in the configuration file; see below for details.

$ mkdir ~/.cpantesters
$ mv metabase_id.json ~/.cpantesters/
$ chmod 400 ~/.cpantesters/metabase_id.json

Congratulations, you are now a CPAN Tester!

From now on, test results will be sent whenever you install a module using

If you watch carefully as you install modules you are likely to see something like this,

CPAN::Reporter: Test result is 'pass', 'make test' no errors.
CPAN::Reporter: preparing a CPAN Testers report for XML-Parser-2.40
CPAN::Reporter: sending test report with 'pass' via Metabase

You'll also be able to see your submission on the CPAN Testers logfile at