package X; use base qw(Test::Class); use Test::More; use Test::MockClass; sub setup : Test(setup) { my ($self) = @_; my $mockClass = Test::MockClass->new('DateTime'); $mockClass->addMethod('now', sub {'XXXX'}); } sub test : Test { my ($self) = @_; ok(DateTime->now); diag(DateTime->now); } 1; package Y; use base qw(Test::Class); use Test::More; use DateTime; sub test : Test { my ($self) = @_; ok(DateTime->now); diag(DateTime->now); } 1; package Z; use Test::Class; Test::Class->runtests; 1;