Automatisiertes Testen von in Browsern Rendering
Frage
Kann Selen oder andere automatisierte Werkzeugprüfung für die richtige Positionierung von Elementen auf einer Webseite?
Zum Beispiel, wenn Sie auf OnStartups.com in IE aussehen 6, der Hauptinhalt, die angeblich auf der rechten Seite des Menüs sein, ist es unten statt und Sie müssen nach unten scrollen, um es zu lesen. Können Sie die Koordinaten des div abfragen und erhalten, wie sie tatsächlich angezeigt werden, und können Sie die Koordinaten des Ansichtsfenster, um zu überprüfen zu erhalten, dass die obere linke Ecke tatsächlich innerhalb des sichtbaren Bereichs ist?
Lösung
Ich denke, Screenshots zu vergleichen das Beste ist, Sie tun können, und ich fürchte, es gibt keine robuste Werkzeuge für das noch nicht.
Wenn ich Sie wäre, würde ich ein Skript erstellen, das durch jede Seite der Website navigiert ein Bild auf jeder Erfassung und dann würde ich einen Ordner mit allen Ergebnissen öffnen und es wäre wahrscheinlich weniger eingenommen haben, als ein paar Minuten zu 20 zu überprüfen oder 30 von ihnen. Klinge wirklich dumm, aber manchmal ist die einfachere Alternative endet die Beste zu sein ...
Andere Tipps
Ich fürchte, das Beste, was Sie tun könnten einen Standard-Browser auswählen und als mit der Referenz man Screenshots von anderem Browser vergleichen.
Ich kann die spezifischen erinnern, aber einige Tools wie Araxis merge konnten Screenshots in eine ziemlich intelligenten Art und Weise vergleichen.
Selen hat Behauptungen die Position eines Elements zu überprüfen und Größe:
- assertElementHeight (Locator, Muster)
- assertElementWidth (Locator, Muster)
- assertElementPositionLeft (Locator, Muster)
- assertElementPositionTop (Locator, Muster)
Ein einfacher Test die Wiedergabe im OPs Beispiel könnte sein, schreiben zu überprüfen
assertElementPositionTop(//*[@id='main_content'],0)
also zu prüfen, ob #main_content an der Spitze gemacht wird, oder irgendwo anders.