diff --git a/swig/perl/t/AttributeList.t b/swig/perl/t/AttributeList.t
index ae247f206b1d9493115a63e9cb79de0c694693f3..75d7ca9ab06fc99f4d5f72377bcd3373a4b06f12 100644
--- a/swig/perl/t/AttributeList.t
+++ b/swig/perl/t/AttributeList.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 use blib;
@@ -18,7 +18,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/Attributes.t b/swig/perl/t/Attributes.t
index 45f9be4797109e7f16b5513dfaab4ff631f8d0bd..b0791230925e3055fa6136b24309d57c5cab227d 100644
--- a/swig/perl/t/Attributes.t
+++ b/swig/perl/t/Attributes.t
@@ -7,7 +7,7 @@
 # Change 1..1 below to 1..last_test_to_print .
 # (It may become useful if the test is moved to ./t subdirectory.)
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 use blib;
@@ -22,7 +22,7 @@ use strict;
 
 $loaded = 1;
 $i = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/DOMAttr.t b/swig/perl/t/DOMAttr.t
index 6eaf7e87b1b6b20751ea1c998c2674dcf1bcea66..48755b20fc7b9141af96f208258691f30b257e19 100644
--- a/swig/perl/t/DOMAttr.t
+++ b/swig/perl/t/DOMAttr.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -18,7 +18,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/DOMCount.t b/swig/perl/t/DOMCount.t
index 2ede37e1c28cfd2c202cdd9ab8b963c8854abff3..655f483c579400d96a038c368395e39027b1c497 100644
--- a/swig/perl/t/DOMCount.t
+++ b/swig/perl/t/DOMCount.t
@@ -7,7 +7,7 @@
 # Change 1..1 below to 1..last_test_to_print .
 # (It may become useful if the test is moved to ./t subdirectory.)
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -21,7 +21,7 @@ use vars qw($loaded $file);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/DOMCreate.t b/swig/perl/t/DOMCreate.t
index 0ccdf1b561d80038b0ec6806ac282cf45d17ea4c..ae58693cdcdf5ed6ccff41089121ebd85fa0c578 100644
--- a/swig/perl/t/DOMCreate.t
+++ b/swig/perl/t/DOMCreate.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -18,7 +18,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
@@ -48,9 +48,8 @@ my $document = q[<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
 my $perl = $Config{startperl};
 $perl =~ s/^\#!//;
 my $cmd = "$perl -Mblib $SAMPLE_DIR/DOMCreate.pl 2>/dev/null";
-# print STDERR "Running: $cmd\n";
+print STDERR "Running: $cmd\n";
 my $output = `$cmd`;
 
-ok($document eq $output, 'document eq output');
-diag("Found output\n[$output]")
-  if $document ne $output;
+is($document, $output,
+   'document eq output') or diag("Found output\n[$output]");
diff --git a/swig/perl/t/DOMDocument.t b/swig/perl/t/DOMDocument.t
index 134dc7765adb17921eec918415e762933f021957..316f826a9443896c0c1ea4c6c885c55b2ddc3dbb 100644
--- a/swig/perl/t/DOMDocument.t
+++ b/swig/perl/t/DOMDocument.t
@@ -7,7 +7,7 @@
 # Change 1..1 below to 1..last_test_to_print .
 # (It may become useful if the test is moved to ./t subdirectory.)
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 
@@ -22,7 +22,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/DOMEntity.t b/swig/perl/t/DOMEntity.t
index b1796e1f9911d432e70e0bc326f41cf0dbe5ab44..868aee4fa1b5f9aa438748f1079112fc596e2709 100644
--- a/swig/perl/t/DOMEntity.t
+++ b/swig/perl/t/DOMEntity.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -17,7 +17,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/DOMException.t b/swig/perl/t/DOMException.t
index 465cacd6c6dd07f8bbe4201f403e3997fa48f5b5..acd7ab8431ce5e70e6e822c882018e1476d7651f 100644
--- a/swig/perl/t/DOMException.t
+++ b/swig/perl/t/DOMException.t
@@ -7,7 +7,7 @@
 # Change 1..1 below to 1..last_test_to_print .
 # (It may become useful if the test is moved to ./t subdirectory.)
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -20,7 +20,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/DOMNamedNodeMap.t b/swig/perl/t/DOMNamedNodeMap.t
index fcb7ef9124cb50c93e38026739a8c89a834ed006..da4a898b2bed70b8129036853f34f1298e7080f1 100644
--- a/swig/perl/t/DOMNamedNodeMap.t
+++ b/swig/perl/t/DOMNamedNodeMap.t
@@ -7,7 +7,7 @@
 # Change 1..1 below to 1..last_test_to_print .
 # (It may become useful if the test is moved to ./t subdirectory.)
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 use XML::Xerces;
@@ -19,7 +19,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/DOMNode.t b/swig/perl/t/DOMNode.t
index 3f6e7a6ec7dad593d7a47865cd20c6916c17cfcd..5b042dd54b6ac91a5cb101090c8c7f74a4d1b7c1 100644
--- a/swig/perl/t/DOMNode.t
+++ b/swig/perl/t/DOMNode.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 
@@ -17,7 +17,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/DOMNodeIterator.t b/swig/perl/t/DOMNodeIterator.t
index bf84711acf21d2ffd744c62f146d04a8f1065734..b071c61220194f1656fa31bd94b1b56de75fae25 100644
--- a/swig/perl/t/DOMNodeIterator.t
+++ b/swig/perl/t/DOMNodeIterator.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 
@@ -17,7 +17,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 package MyNodeFilter;
 use strict;
diff --git a/swig/perl/t/DOMNodeList.t b/swig/perl/t/DOMNodeList.t
index 1eb5cf31991791011321b0fa6192bd75636da453..476ec71515e71f56b661b600f1376f87f5a59fa4 100644
--- a/swig/perl/t/DOMNodeList.t
+++ b/swig/perl/t/DOMNodeList.t
@@ -3,7 +3,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 use Cwd;
@@ -17,7 +17,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/DOMParser.t b/swig/perl/t/DOMParser.t
index 560ad9bd90bb8229b8f5e894b42cfe52db58cbfd..1514807fa4067e17eec0b28e46852f8c20840348 100644
--- a/swig/perl/t/DOMParser.t
+++ b/swig/perl/t/DOMParser.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -18,7 +18,7 @@ use vars qw($loaded $error);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/DOMPrint.t b/swig/perl/t/DOMPrint.t
index eb28c3fdd3cb907b065654927cfeb7b4b4973618..4de12b6db59dffb5691b104bcba4bb2e45bf386b 100644
--- a/swig/perl/t/DOMPrint.t
+++ b/swig/perl/t/DOMPrint.t
@@ -7,7 +7,7 @@
 # Change 1..1 below to 1..last_test_to_print .
 # (It may become useful if the test is moved to ./t subdirectory.)
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -21,7 +21,7 @@ use vars qw($loaded $file);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/DOMTreeWalker.t b/swig/perl/t/DOMTreeWalker.t
index 0880eb5f842f0b7b1ce146adc21287d31ed59b41..f9b92666393ad7de6adb0d07201141780087285f 100644
--- a/swig/perl/t/DOMTreeWalker.t
+++ b/swig/perl/t/DOMTreeWalker.t
@@ -7,7 +7,7 @@
 # Change 1..1 below to 1..last_test_to_print .
 # (It may become useful if the test is moved to ./t subdirectory.)
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -20,7 +20,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 package MyNodeFilter;
 use strict;
diff --git a/swig/perl/t/EntityResolver.t b/swig/perl/t/EntityResolver.t
index 99ec998fab29088365edcdf11f8bd235f84cc058..2d836d55005728b85333d19c28bae9fbfe29f9da 100644
--- a/swig/perl/t/EntityResolver.t
+++ b/swig/perl/t/EntityResolver.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
diff --git a/swig/perl/t/Grammar.t b/swig/perl/t/Grammar.t
index 33b10d205e903b0ebd7bbcca50c8334ac859c651..37446441a118317cf68f4ff7c36c2a94f0734f88 100644
--- a/swig/perl/t/Grammar.t
+++ b/swig/perl/t/Grammar.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -17,7 +17,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/InputSource.t b/swig/perl/t/InputSource.t
index b4fcf0de3c1f3e89007ae3320b9afe549319b853..48fe535548a0f8a21a1fd7a7e9128b3b858f2b2d 100644
--- a/swig/perl/t/InputSource.t
+++ b/swig/perl/t/InputSource.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -17,7 +17,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/LocalFileInputSource.t b/swig/perl/t/LocalFileInputSource.t
index dde214f4093e8105e4cc27d5185a29c7cd8b2f69..4f05cfce1321b45387ab08a068e1f1a783202007 100644
--- a/swig/perl/t/LocalFileInputSource.t
+++ b/swig/perl/t/LocalFileInputSource.t
@@ -5,7 +5,7 @@
 ######################### We start with some black magic to print on failure.
 
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -19,7 +19,7 @@ use vars qw($loaded $error);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/MemBufInputSource.t b/swig/perl/t/MemBufInputSource.t
index 977ce089533cbe8d694bdcf24bd0c046f0a99500..d569b7edadb8a8f66e6b29e6e7ade258c6a694b2 100644
--- a/swig/perl/t/MemBufInputSource.t
+++ b/swig/perl/t/MemBufInputSource.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -17,7 +17,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/PerlErrorHandler.t b/swig/perl/t/PerlErrorHandler.t
index 3c9e5840c60d932ccbb5c259873f9d910512d0da..e5065d869be673486d1ed6e82332700c7ce1b9e9 100644
--- a/swig/perl/t/PerlErrorHandler.t
+++ b/swig/perl/t/PerlErrorHandler.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 
@@ -18,7 +18,7 @@ use subs qw(warning error fatal_error);
 use vars qw($error $loaded);
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/SAX2Count.t b/swig/perl/t/SAX2Count.t
index 56a08a94622aa7ddb2edd9b69b00806c74bf6941..b5f448ec1b81e8f1e12294d5df1aa3be904606c5 100644
--- a/swig/perl/t/SAX2Count.t
+++ b/swig/perl/t/SAX2Count.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -18,7 +18,7 @@ use vars qw($loaded $file);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/SAX2XMLReader.t b/swig/perl/t/SAX2XMLReader.t
index 002d83816782232fc32aa780cdb498129f79580a..113eb67641f46dfe6c66c1d13b8113e54ff91e55 100644
--- a/swig/perl/t/SAX2XMLReader.t
+++ b/swig/perl/t/SAX2XMLReader.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -18,7 +18,7 @@ use vars qw($loaded $error);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/SAXCount.t b/swig/perl/t/SAXCount.t
index fc9a96546933ed0e51c604602a4f0cc2fb083a28..7af97a6beb7e98ed93443468483b4c24b899ceaa 100644
--- a/swig/perl/t/SAXCount.t
+++ b/swig/perl/t/SAXCount.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -18,7 +18,7 @@ use vars qw($loaded $file);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/SAXException.t b/swig/perl/t/SAXException.t
index a7e1fe967df259eba8799ada8072a4a22dbc6081..43137a11d5c5a87ad46004f40cc329274c518a09 100644
--- a/swig/perl/t/SAXException.t
+++ b/swig/perl/t/SAXException.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 
@@ -19,7 +19,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
@@ -28,68 +28,47 @@ my $parser = XML::Xerces::XMLReaderFactory::createXMLReader();
 isa_ok($parser,"XML::Xerces::SAX2XMLReader");
 
 my $feature = "http://xml.org/sax/features/foospaces";
-eval {
-  $parser->setFeature($feature, 0);
-};
-my $error = $@;
-my $skip = 0;
-unless (ok($error,"setFeature: $feature")) {
-  $skip = 1;
-}
+my $error;
+
+SKIP: {
+  eval {$parser->setFeature($feature, 0)};
+  $error = $@;
+  ok($error,"setFeature: $feature");
 
-TODO: {
-  todo_skip "setFeature didn't raise an exception", 2, if $skip;
+  skip "setFeature didn't raise an exception", 2, if not $error;
 
   isa_ok($error,'XML::Xerces::SAXNotRecognizedException');
   ok($error->getMessage(),"message");
 }
 
-$skip = 0;
-
-eval {
-  $parser->getFeature($feature);
-};
-$error = $@;
-unless (ok($error,"getFeature: $feature")){
-  $skip = 1;
-}
+SKSIP: {
+  eval {$parser->getFeature($feature)};
+  $error = $@;
+  ok($error,"getFeature: $feature");
 
-TODO: {
-  todo_skip "setFeature didn't raise an exception", 2, if $skip;
+  skip "setFeature didn't raise an exception", 2, if not $error;
 
   isa_ok($error,'XML::Xerces::SAXNotRecognizedException');
   ok($error->getMessage(),"message");
 }
 
-$skip = 0;
-
-eval {
-  $parser->getProperty($feature);
-};
-$error = $@;
-unless (ok($error,"getProperty: $feature")) {
-  $skip = 1;
-}
+SKIP: {
+  eval {$parser->getProperty($feature)};
+  $error = $@;
+  ok($error,"getProperty: $feature");
 
-TODO: {
-  todo_skip "setFeature didn't raise an exception", 2, if $skip;
+  skip "setFeature didn't raise an exception", 2, if not $@;
 
   isa_ok($error,'XML::Xerces::SAXNotRecognizedException');
   ok($error->getMessage(),"message");
 }
 
-$skip = 0;
+SKIP: {
+  eval {$parser->setProperty($feature, $parser)};
+  $error = $@;
+  ok($@,"setProperty: $feature");
 
-eval {
-  $parser->setProperty($feature, $parser);
-};
-$error = $@;
-unless (ok($error,"setProperty: $feature")){
-  $skip = 1;
-}
-
-TODO: {
-  todo_skip "setFeature didn't raise an exception", 2, if $skip;
+  skip "setFeature didn't raise an exception", 2, if not $error;
 
   isa_ok($error,'XML::Xerces::SAXNotRecognizedException');
   ok($error->getMessage(),"message");
@@ -114,17 +93,18 @@ sub ignorable_whitespace {
 
 package main;
 my $handler = MyHandler->new();
+
+# we must reset this - because $parser has been stringified by an earlier test
+$parser = XML::Xerces::XMLReaderFactory::createXMLReader();
 $parser->setContentHandler($handler);
-eval {
-  $parser->parse(XML::Xerces::LocalFileInputSource->new($PERSONAL_FILE_NAME));
-};
-$error = $@;
-unless (ok($error,"setting a feature during parse")) {
-  $skip = 1;
-}
 
-TODO: {
-  todo_skip "modifying a feature during a parse didn't raise a not supported exception", 2, if $skip;
+SKIP: {
+  eval {$parser->parse(XML::Xerces::LocalFileInputSource->new($PERSONAL_FILE_NAME))};
+  $error = $@;
+  ok($error,"setting a feature during parse");
+
+  skip "modifying a feature during a parse didn't raise a not supported exception", 2,
+    if not $error;
 
   isa_ok($error,'XML::Xerces::SAXNotSupportedException');
   ok($error->getMessage(),"message");
diff --git a/swig/perl/t/SAXParser.t b/swig/perl/t/SAXParser.t
index f3a86e0c81b09d7ffc66da5780251652a9eb75ca..594c5dbaf094e65b0d16bc3ecfef0316b8dff80e 100644
--- a/swig/perl/t/SAXParser.t
+++ b/swig/perl/t/SAXParser.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 use blib;
@@ -18,7 +18,7 @@ use vars qw($loaded $error);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/Schema.t b/swig/perl/t/Schema.t
index 6a192acebf977ed7936eb5917821c439e39d0f9d..a5f6ace3aac144fd978ccbb7eeb6ee2d9bd7999a 100644
--- a/swig/perl/t/Schema.t
+++ b/swig/perl/t/Schema.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -17,7 +17,7 @@ use vars qw($loaded $file);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/StdInInputSource.t b/swig/perl/t/StdInInputSource.t
index d0b0ce3db691753d68e689b09ac974b645abf2c1..3957b90e024cb84342ea46373453fc896221732c 100644
--- a/swig/perl/t/StdInInputSource.t
+++ b/swig/perl/t/StdInInputSource.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -19,7 +19,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/URLInputSource.t b/swig/perl/t/URLInputSource.t
index 815c417da1828fcc604c74b55c6b33bf984c7231..8de5ac55d2204563b9082893576a419e5c14d9c1 100644
--- a/swig/perl/t/URLInputSource.t
+++ b/swig/perl/t/URLInputSource.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -15,7 +15,7 @@ use vars qw($loaded $error);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/UTF8.t b/swig/perl/t/UTF8.t
index d0bdc10c049c63238a0ac82e86558616539063b6..451444bf537dd738c95397ac5a4fec681ae175bd 100644
--- a/swig/perl/t/UTF8.t
+++ b/swig/perl/t/UTF8.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 
@@ -19,7 +19,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/XMLException.t b/swig/perl/t/XMLException.t
index 8ce543028d24b186759de9a71363ba0ac5d6b6ca..4ab80cb77990c4e2bc4c32f5932676d1d28e3072 100644
--- a/swig/perl/t/XMLException.t
+++ b/swig/perl/t/XMLException.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 
@@ -19,7 +19,7 @@ use vars qw($loaded $error);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/XMLURL.t b/swig/perl/t/XMLURL.t
index 653cd76278185d00df5817e4ae5c7d28a5e2af31..e4184abdf15daf167f97cfb3250092305f75f1b2 100644
--- a/swig/perl/t/XMLURL.t
+++ b/swig/perl/t/XMLURL.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -18,7 +18,7 @@ use vars qw($loaded $error);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/XMLUri.t b/swig/perl/t/XMLUri.t
index 8560aee121e66458a130fb80d3f9892b55f2d25d..60b2ab6d7b9510455ab34e9192fef355bcd7ba74 100644
--- a/swig/perl/t/XMLUri.t
+++ b/swig/perl/t/XMLUri.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -17,7 +17,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
 ######################### End of black magic.
 
diff --git a/swig/perl/t/XercesDOMParser.t b/swig/perl/t/XercesDOMParser.t
index 1cbb8aeda2eb19816b7c7b261ee0a040be59aac6..c4f38e6ca27e67d903bdddc7939eea6c3352cc5a 100644
--- a/swig/perl/t/XercesDOMParser.t
+++ b/swig/perl/t/XercesDOMParser.t
@@ -4,7 +4,7 @@
 
 ######################### We start with some black magic to print on failure.
 
-END {ok(0) unless $loaded;}
+END {fail() unless $loaded;}
 
 use Carp;
 # use blib;
@@ -17,7 +17,7 @@ use vars qw($loaded);
 use strict;
 
 $loaded = 1;
-ok($loaded, "module loaded");
+pass("module loaded");
 
   # NOTICE: We must now explicitly call XMLPlatformUtils::Initialize()
   #   when the module is loaded. Xerces.pm no longer does this.