hello this is a Categorized question with a lot of good modules to use. In addition you can also use the function is_deeply from the core module Test::More.
HtH L*
There are no rules, there are no thumbs..
Reinvent the wheel, then learn The Wheel; may be one day you reinvent one of THE WHEELS.