[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Proposed policy amendment: test suites



On Tue, 19 Jul 2011 11:34:33 +0200, gregor herrmann wrote:

> > perhaps it may be good to mention that the maintainers should (or may ?) if
> > possible run the tests that need internet on their local computer before
> > uploading.
> Good idea, thanks.
> I've added a sentence to my local version (will mail a new diff after
> consolidating the changes).

No further comments here on the list, on IRC jawnsy said he's fine
with the version, after casting his native-speaker eyes on it
(thanks!), so below is the current version (with the only change
being in the "internet tests" sentence as proposed by carnil).

If there are no objections, I'll commit it in the next days.
Thanks to all who read/commented/improved so far!

Cheers,
gregor


#v+
Index: policy.pod
===================================================================
--- policy.pod	(revision 77734)
+++ policy.pod	(working copy)
@@ -254,6 +256,58 @@
 
 =back
 
+=head1 Test suites
+
+CPAN distributions typically come with a test suite that is run at build time.
+As a general rule, we want to run as many tests as possible in order to catch errors.
+Some details need to be taken into account:
+
+=over 4
+
+=item *
+
+We can't run tests that need internet access.
+If they are run by default they must be disabled (if not controlled by a
+specific environment variable, a patch is required).
+                                                
+=item *
+
+We don't enable tests that are explicitly declared as upstream/author/release tests by the author
+(typically via an environment variable as I<RELEASE_TESTING>, I<AUTHOR_TESTING, >or I<TEST_AUTHOR>).
+
+Test designed to be run in automatic builds/installs (usually enabled by setting
+I<AUTOMATED_TESTING>) are fine.
+
+=item *
+
+Some tests are, even if not declared explicitly as release tests, a bit fragile and tend
+to break with new releases of the test modules, or test style and not functionality
+(Test::Perl::Critic, Test::Spelling, Test::Kwalitee, ...). It might be helpful to avoid running them.
+
+=item *
+
+Tests that are disabled or not enabled (like the ones needing internet
+access) should be run manually by the person preparing the package on their
+local machine before uploading.
+
+=item *
+
+Tests that need display access usually work with B<xvfb>:
+
+    debian/control:
+    Build-Depends(-Indep): ..., xvfb, xauth, ...
+
+    debian/rules:
+    override_dh_auto_test:
+        xvfb-run -a dh_auto_test
+
+=item *
+
+Some tests need versioned build dependencies for dual-lifed modules (e.g. B<Test::More>),
+cf. L<Build and runtime dependencies|/"Build and runtime dependencies">.
+
+=back
+
 =head1 Debian Maintainers practice
 
 The Debian project has adopted the Debian Maintainers (DM) concept (cf.
#v- 
-- 
 .''`.   Homepage: http://info.comodo.priv.at/ - PGP/GPG key ID: 0x8649AA06
 : :' :  Debian GNU/Linux user, admin, & developer - http://www.debian.org/
 `. `'   Member of VIBE!AT & SPI, fellow of Free Software Foundation Europe
   `-    BOFH excuse #331:  those damn raccoons! 

Attachment: signature.asc
Description: Digital signature


Reply to: