use Test::More "no_plan"; use Devel::Size "total_size"; my $key = "aa"; my $val = "a00"; my %hash1; my %hash2; while (length($key) == 2) { $hash1{$key} = $val; "$key$val" =~ /(..)(...)/ and $hash2{$1} = $2; ++$key; ++$val; } is(keys(%hash1), keys(%hash2), "same number of keys"); is_deeply(\%hash1, \%hash2, "is_deeply same"); is(total_size(\%hash1), total_size(\%hash2)); __END__ ok 1 - same number of keys ok 2 - is_deeply same not ok 3 # Failed test (sizer.pl at line 18) # got: '39316' # expected: '58244' 1..3 # Looks like you failed 1 test of 3.