IE8 und die Performance – Wie baue ich mir einen Testsieger

IE8 und die Performance – Wie baue ich mir einen Testsieger

Microsoft will in den nächsten Tagen den IE8 final releasen. Und geht offensiv an die Öffentlichkeit mit der Aussage:
Wir sind die schnellsten, und wir können es beweisen, weil wir den einzig wahren und realistischen Browsertest durchgeführt haben.

Der Testablauf (mit Anleitung zum Selbermachen) befindet sich hier.

Ich habe mir das Dokument einmal heruntergeladen und das Testverfahren analysiert:

Zuerst wird korrekt festgestellt, dass ein Webbrowser vermutlich das am häufigsten verwendete Stück Software auf einem PC ist und von daher
gut, stabil und schnell funktionieren sollte.
Es dient als Interface zwischen dem User und dem Anbieter von Informationen – keine Frage, dass hier Performance wichtig ist.

Weiter beschreibt Microsoft warum Benchmarking wichtig ist und wie schwer es tatsächlich ist Webseiten (wie weiter unten beschrieben) zu messen bzw. Browserperformance über Webseiten zu messen.
Erwähnt werden hier die Schwierigkeitsfaktoren:

  • Netzwerk Latenz
  • Netzwerk Überlastung
  • Webseiten Belastung

um nun die „echte“ Performance eines Webbrowsers festzustellen wird gesagt, dass User auf Ihrem PC (also normale einfache Konsumenten wie du und ich) keine Test durchführen können – jedenfalls sind die gängigen nicht realistisch, da Sie nur einzelne Komponenten abtesten aber keine ganze „normale“ Webseite. Das Testszenario für normale Ladezeitentests sei zu unkontrolliert.

Unterschiedliche PCs und unterschiedliche Bandbreitenanbindung an das Internet, wird zwischen den Zeilen angemerkt, machen die Tests unzuverlässig. Nur ein Benchmark, der den Browser in gänze und die Webseite komplett lädt kann eine realistische Testgrundlage bilden.

Ich finde den „ganzheitlichen Ansatz nicht schlecht“, obgleich solche Tests nur durchgeführt werden können, wenn man sich in einem isolierten latenzfreiem Raum durchgeführt werden. Zu Stark sind die Einflüsse durch die o. g. Internetparameter, die Bandbreite der Internetanbindung und die Power der Maschine auf der der Browser rennt. Ob also Tests auf Komponenten, die erst ausgeführt werden, wenn sie vollständig auf dem PC des Anwenders geladen sind, tatsächlich so unrealistisch sind, stelle ich hier schon einmal in Frage.

Microsoft behauptet nun also, dass eben solche Mircotests nicht der Realität entsprechen und nur die gesamte Ladezeit einer Webseite betrachtet werden darf (diese ist aber ja abhängig von den o. g. Faktoren).

In der Testbeschreibung folgt ein kurzer Ausflug durch die gängigen bekannten Testtools. Insbesondere, wird erwähnt, dass einige von ihnen einen Benchmark über Funktionen prozessieren, die viele populäre Webseiten verwenden (aha!‘). Zudem könnte auch Caching diese Test beeinflussen und so ungerechtfertigter Weise einen Browser als besseren da stehen lassen (nämlich, wenn mit dem einen Webbrowser schon einmal die Webseite aufgerufen würde, dann könnte der zweite Webbrowser vom Caching partizipieren).

Im folgenden übersetze ich den Aufbau des Microsoft Test-Labs und kommentiere die einzelnen Punkte. Besonderen Wert lege ich dabei auf die Umsetzung eine „realistischen“ Szenarios.
In Kurzform:

  • Alle cachebaren Dateien sind schon auf dem Rechner, weil die Webseiten einmal vorgeladen werden
    • Wie lange dauert das gesamte laden einer Webseite – die Frage bleibt unbeantwortet. Die Bewertung folgt also hier nach dem Wert wie lange es dauert den Cache auszulesen (im Zusammenhang mit dem Punkt „Fertig geladen – Definition“
  • Alle unbenötigten Services des Browsers und des Betriebssystems (für diesen Test) werden ausgeschaltet
    • Wir schaffen uns ein unrealistisches Szenario – kein User der tagtäglich und häufig einen Browser verwendet stellt alles aus
  • Verwendung von DTAP (ja was ist denn das ?) um das Grundrauschen (Latenzen) zu minimieren und die Verbindung zum Webserver „etwas zu verbessern“.
    • (Wow – sehr realistisch – also der gemeine User….hat DTAP). Für die Reproduktion des Testszenarios geht das natürlich nichtt, weswegen man zumindest versuchen sollte alles zur gleichen Zeit zu machen. Mit anderen Worten das Mircosoftergebnis wird nicht nachvollziehbar
  • Die Messung wird häufiger durchgeführt, um einen objektiven Durchnitt zu erhalten – um Netzwerklatenzen zu egalisieren.
    • Ein objektiver Durchschnitt sollte Grundlage eines guten Benchmarks sein.
  • Die Liste der zum Test herangezogenen Webseiten wurde wie folgt erstellt: Nur Webseiten gleichen Typs wurden gemessen. Um nicht Apples mit Oranges zu vergleichen.
    • Ein Schelm, wer hier denkt, dass solche aussortiert wurden, die deutlich langsamer im IE8 performen. Auch hier: Wenn schon auf ein reales Testszenario insistiert wird, dann gehören da auch Seiten unterschiedlichen Typs dazu.
  • Benutzt wurde immer ein und dieselbe Maschinenkonfiguration. Frei von jeglichem Ballast, was zum Browsen nicht benötigt wird.
    • Welche Windows Einstellungen wurden verwendet?
    • Ist ein ballastarmes System für User realistisch ?
  • Verwendung von Safe Mode und Standard Plugins
    • Jeder verwendet Safe Mode zum browsen oder ?
  • Bestimmung des Status „Fertig geladen“. Anhand von Objekten, die auf der Webseite erscheinen (Ajax lädt ja manchmal noch was nach..und da ist es ja schwer den Status Fertig geladen zu definieren)
    • Schwammig formuliert. Ist Ajax beeinhaltet oder nicht? Ajax ist oft komplexes Javascript – was andere Webbrowser in Funktionstests schneller ausführen als IE7 oder IE8.
    • Sagt Mircosoft darum: „Die Webseite ist fertig geladen, wenn wir es meinen.“?
  • Videoaufzeichnung des Screens zur Zeitmessung
    • Warum wurde der Traffic nicht direkt an der Netzwerkkarte isoliert und ausgewertet, dann hätten wir hier sicher gute nachvollziehbare „objektive“ Ergebnisse. So aber wohl nur, was im Video zu sehen ist.
    • Wir wird der im Browser nicht sichtbare Bereich erfasst ? (beyond the fold)

Dann folgen noch Infos wie realistisch der realistische Test durchgeführt wurde.

Ich will nicht auf die Durchführung eingehen, denn ein absolut unrealistisches Testszenario – wo schwammig „Fertig geladen“ wird, Webseiten die alle gleich sind getestet werden, mit Video anstatt mit echtem physikalischem Datendurchsatz gearbeitet wird, wo Browsereinstellung und Browsermodi verwendet werden, die KEIN normaler User verwendet – ist leider nicht ernst zu nehmen.

Microsoft hat sich hier eine so spezielle Testumgebung geschaffen, dass das Ergebnis fern jeglicher Realität und das Ergebnis nicht reproduzierbar macht. Dieses Ergebnis kann nicht ernst genommen werden.

Um sich vor Reproduktion zu sichern wird nicht vergessen zu erwähnen, dass sich Content auf Webseiten ändert und es daher schwierig wird. Dass sich Inhalte teilweise aber in Abhängigkeit vom verwendeten Browser unterscheiden, wird nicht angesprochen.

Meiner Meinung nach kann ein Benchmark also immer nur vergleichend sein, wenn tatsächlich einzelne Funktionen der Webbrowser getestet werden, die auch jeder Browser zur Verfügung stellt.

Fazit: Microsoft schafft sich ein unrealistisches Szenario um zu glänzen. Der Test ist nicht reproduzierbar und bedient sich amateurhafter Metriken (wenn etwas erscheint ist die Seite fertig geladen) und Ladezeiten (1/30 weil ja das Video 30 Frames pro Sekunde aufzeichnet).

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.