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.

Stellenmarkt
  1. Senior / Lead Engineer Netzwerk & Security (w/m/d)
    Bechtle Hosting & Operations GmbH & Co. KG, Bochum, Friedrichshafen, Dortmund, Neckarsulm
  2. Senior Architekt ServiceNow (m/w/d)
    operational services GmbH & Co. KG, Frankfurt am Main
Detailsuche

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.

 

Golem Karrierewelt
  1. AZ-104 Microsoft Azure Administrator: virtueller Vier-Tage-Workshop
    19.-22.09.2022, virtuell
  2. Automatisierung (RPA) mit Python: virtueller Zwei-Tage-Workshop
    03./04.11.2022, Virtuell
Weitere IT-Trainings

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
Nuklearer Anschlag
Russland soll Sprengung von AKW Saporischschja vorbereiten

Die Ukraine meldet, Russland habe das Kernkraftwerk Saporischschja mit Sprengstoff bestückt. Eine Sprengung könnte eine Katastrophe auslösen.

Nuklearer Anschlag: Russland soll Sprengung von AKW Saporischschja vorbereiten
Artikel
  1. Sparmaßnahmen: Komplettes Chaos nach Entlassungen bei Oracle
    Sparmaßnahmen
    "Komplettes Chaos" nach Entlassungen bei Oracle

    Auch Oracle hat einen massiven Stellenabbau begonnen. Das Unternehmen will eine Milliarde US-Dollar an Kosten einsparen.

  2. Klimawandel: SSDs sind klimaschädlicher als mechanische Festplatten
    Klimawandel
    SSDs sind klimaschädlicher als mechanische Festplatten

    Während ihrer Lebensdauer verursacht eine SSD fast doppelt so hohe CO2-Emissionen wie eine mechanische HDD.

  3. China: Elektroautos von Ora und Wey kommen nach Deutschland
    China
    Elektroautos von Ora und Wey kommen nach Deutschland

    Die Autohandelsgruppe Emil Frey will chinesische Elektroautos der Great-Wall-Gruppe nach Europa bringen. Es geht um die Marken Ora und Wey.

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 • MindStar (Gainward RTX 3070 559€, ASRock RX 6800 639€) • WD Black 2TB m. Kühlkörper (PS5) 219,90€ • Gigabyte Deals • Alternate (DeepCool Wakü 114,90€) • Apple Week bei Media Markt • be quiet! Deals • SSV bei Saturn (u. a. WD_BLACK SN850 1TB 119€) • Gamesplant Summer Sale [Werbung]
    •  /