PHPUnit behauptet unabhängig von Leerzeichen eine identische HTML-StrukturHTML

HTML-Programmierer
Anonymous
 PHPUnit behauptet unabhängig von Leerzeichen eine identische HTML-Struktur

Post by Anonymous »

Ich habe ein Befehlszeilenskript, das HTML generiert, das ich mit PHPUnit einem Unit-Test unterziehen möchte. Beachten Sie, dass dieser HTML-Code von einem Browser nicht gesehen wird, sodass Selenium hierfür nicht die richtige Lösung ist.
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);
}
Was kann ich tun, um die Struktur (die Knoten) des HTML anstelle der HTML-Strings zu vergleichen? Gibt es eine Funktion von PHPUnit, die dies ermöglicht? Gibt es eine eigenständige Bibliothek zum Vergleichen von HTML?
Lösung:
PHPUnit verfügt über Behauptungen zum Vergleichen von XML: AssertXmlStringEqualsXmlFile funktioniert in diesem Szenario perfekt:

Code: Select all

public function testHtmlIsIdentical()
{
$this->report->setupSomeData('test data');
$this->assertXmlStringEqualsXmlFile('expected.html', $this->report->generateHtml());
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post