Mir geht es nur um den Vergleich der tatsächlichen HTML-Struktur. Ich verwende „assertEquals(), aber die tatsächlichen Zeichenfolgen sind aufgrund verschiedener Leerzeichen möglicherweise nicht genau identisch.
Code: Select all
public function testHtmlIsIdentical()
{
$expectedReport = file_get_contents('expected.html');
$this->report->setupSomeData('test data');
$actualReport = $this->report->generateHtml();
$this->assertEquals($expectedReport, $actualReport);
}
Lösung:
PHPUnit verfügt über Behauptungen zum Vergleichen von XML:
Code: Select all
assertXmlFileEqualsXmlFile()Code: Select all
assertXmlStringEqualsXmlFile()Code: Select all
assertXmlStringEqualsXmlString()
Code: Select all
public function testHtmlIsIdentical()
{
$this->report->setupSomeData('test data');
$this->assertXmlStringEqualsXmlFile('expected.html', $this->report->generateHtml());
}
Mobile version