Sponsoring The Perl Toolchain Summit 2025: Help make this important event another success Learn more

NAME

Test::HTML::Differences - Compare two html structures and show differences if it is not same

SYNOPSIS

use Test::Base -Base;
plan tests => 1 * blocks;
run {
my ($block) = @_;
eq_or_diff_html(
$block->input,
$block->expected,
$block->name
);
};
__END__
=== test
--- input
<div class="section">foo <a href="/">foo</a></div>
--- expected
<div class="section">
foo <a href="/">foo</a>
</div>

DESCRIPTION

Test::HTML::Differences is test utility that compares two strings as HTML and show differences with Test::Differences.

Supplied HTML strings are normalized to data structure and show pretty formatted as it is shown.

This module does not test all HTML node strictly, leading/trailing white-space characters are removed by the normalize function, but do test whole structures of the HTML.

For example:

<span> foo</span>

is called equal to following:

<span>foo</span>

You must test these case by other methods, for example, old-school like or is function in Test::More as you want to test it.

With Test::Differences::Color

Test::HTML::Differences supports Test::Differences::Color as following:

AUTHOR

cho45 <cho45@lowreal.net>

SEE ALSO

Test::Differences, Test::Differences::Color

LICENSE

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.