use warnings; use strict; use Test::More tests=>2; use Test::NoWarnings; use Test::Warn; sub Foo::get_member_id_by_name { warn "foo than bar" }; my $obj = bless {}, 'Foo'; warning_like ( sub { $obj->get_member_id_by_name('smith'); }, qr/than/, 'warns when more than one name returned' ); __END__ 1..2 ok 1 - warns when more than one name returned ok 2 - no warnings