# Test::VirtualModule Perl virtual modules mechanism for unit testing. For example, you have some perl module with complex dependencies, which can't be satisfied without a lot of manipulation. But for your unit tests you need to use this module. So, you can do that: See example: # load virtual module use Test::VirtualModule qw/BlahBlahBlah::FooBar/; # import mocked module, it's ok use BlahBlahBlah::FooBar; # Mock constructor Test::VirtualModule->mock_sub('BlahBlahBlah::FooBar', new => sub { my $self = {}; bless $self, 'BlahBlahBlah::FooBar'; return $self; } ); # create object my $object = BlahBlahBlah::FooBar->new();