TestSwarm - automatische Javascript-Tests in vielen Browsern

Continuous-Integration-Workflow für Javascript-Entwickler

Mozilla Labs arbeitet mit TestSwarm an einer Plattform für verteilte Javascript-Tests. Mit Hilfe einer Vielzahl von Nutzern sollen sich damit Javascript-Applikationen und Bibliotheken automatisiert in möglichst allen Browsern und Browserversionen testen lassen.

Artikel veröffentlicht am ,

TestSwarm wurde von Mozilla-Entwickler John Resig als jQuery-Projekt ins Leben gerufen, ist derzeit aber auf dem Weg, ein offizielles Mozilla-Lab-Projekt zu werden. Noch steckt TestSwarm im Alphastadium.

TestSwarm soll das zeitaufwendige Testen von Javascript in einer Vielzahl von Browsern und Browserversionen vereinfachen. Dazu stellt TestSwarm die notwendigen Werkzeuge für einen Continuous-Integration-Workflow von Javascript-Projekten bereit. Nach jedem Commit werden entsprechende Tests angestoßen. Am Ende steht eine Tabelle, die Aufschluss darüber gibt, in welchen Browsern eine neue Entwicklerversion funktioniert und in welchen es Probleme gibt - vorausgesetzt, das jeweilige Projekt verfügt über eine entsprechende Testsuite.

TestSwarm.com als Dienst und Open Source

Das System wird derzeit unter TestSwarm.com für ausgewählte Projekte als Dienst angeboten, darunter die freien Javascript-Bibliotheken jQuery, YUI, Dojo, MooTools und Prototype. Der Code von TestSwarm steht allerdings als Open Source zur Verfügung. Wer also sein eigenes Projekt damit testen will, kann dies mit einer eigenen Infrastruktur tun. Unterstützt werden derzeit die Testframeworks QUnit (jQuery), UnitTestJS (Prototype), JSSpec (MooTools), JSUnit, Selenium und Dojo Objective Harness. TestSwarm kann aber um eigene Testframeworks erweitert werden.

Server verteilt Aufgaben, sammelt und korrigiert Ergebnisse

Kern von TestSwarm ist ein zentraler Server, geschrieben in PHP und MySQL, mit dem sich alle Clients verbinden. Sie erhalten hier Aufgaben und liefern Ergebnisse zurück. Auf den Clients läuft der TestSwarm-Test-Runner, eine einfache Javascript-Applikation, die im Browser ausgeführt wird. Sie frage alle 30 Sekunden beim Server an, ob dieser neue Testsuiten anzubieten hat. Wird eine geliefert, führt der Testrunner sie aus und sendet die Ergebnisse zurück an den Server. Auf welchem Browser eine Testsuite ausgeführt werden soll, kann dabei eingeschränkt werden. Zudem lassen sich mehrere Testdurchläufe erzwingen.

 

Typische Fehler, die in einem solchen Szenario auftreten, soll TestSwarm automatisch korrigieren, denn Browser liefern durchaus inkonsistente Ergebnisse, haben Bugs oder verlieren ihre Netzwerkverbindung. Entsprechende Ergebnisse werden gelöscht, die Tests im Zweifel wiederholt.

Nutzer können sich an TestSwarm beteiligen, indem sie ihre Rechner und Browser für Tests zur Verfügung stellen. Dazu muss zuvor ein TestSwarm-Account eingerichtet werden.

Anders als beispielsweise Selenium oder JSTestDriver ist TestSwarm darauf ausgelegt, unterschiedliche Testsuiten zu unterstützen, arbeitet stärker dezentral, korrigiert problematische Ergebnisse automatisch und kommt ohne Browsererweiterungen aus.

Eine Projektseite zu TestSwarm findet sich derzeit bei GitHub, ebenso der Code des Projekts.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
20 Jahre Far Cry
Das deutsche Grafikwunder

Mit Far Cry feierte der deutsche Entwickler Crytek 2004 ein viel beachtetes Debüt. Kann der Südsee-Shooter auch 20 Jahre später noch beeindrucken?
Von Benedikt Plass-Fleßenkämper

20 Jahre Far Cry: Das deutsche Grafikwunder
Artikel
  1. Softwareentwicklung: Events und APIs mit DDD entwerfen
    Softwareentwicklung
    Events und APIs mit DDD entwerfen

    Anforderungen an Software ändern sich schneller als je zuvor. Damit Entwickler da mitkommen, sollten sie Domain-driven Design nutzen. Wie das geht, zeigen wir an einem Beispiel.
    Von Annegret Junker

  2. KI-PCs: Microsoft erwartet von NPUs mindestens 40 TOPS
    KI-PCs
    Microsoft erwartet von NPUs mindestens 40 TOPS

    Der in Windows integrierte Copilot soll wesentliche KI-Funktionen künftig lokal auf der NPU und nicht mehr in der Cloud ausführen.

  3. Elektromobilität: Warum der Elektroauto-Hype erst anfängt
    Elektromobilität
    Warum der Elektroauto-Hype erst anfängt

    In den vergangenen Wochen konnte man den Eindruck gewinnen, als sei das Elektroauto schon abgeschrieben. Doch das scheint eine typisch deutsche Debatte zu sein.
    Eine Analyse von Friedhelm Greis

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    • Daily Deals • Super Sale bei Alternate • MindStar: AMD Ryzen 9 7900 339€, MSI RTX 4080 Super Ventus 3X OC 1.099€ • Alternate: DeepCool LS520 76,89€, Corsair RM850x 2021 124,90€ und 750x 109,90€, ADATA 64-GB-Kit DDR5-6000 206,89€ • Gratis-Zugaben PS5 Slim & Nintendo Switch OLED beim TV-Kauf [Werbung]
    •  /