14. November 2022

Warum automatisierte Tests für Ihr LMS und Plugins so wichtig sind

Davo Smith

Davo Smith

Senior Entwickler

Auch wenn Sie kein Entwickler sind, sollten Sie sich für Testautomatisierung interessieren

Wenn wir ein LMS aufbauen, wollen wir nie einfach so weitermachen wie bisher... vielleicht mit einer bemerkenswerten Ausnahme. Der Testautomatisierung.

Wie der Name schon sagt, handelt es sich bei der Testautomatisierung um das Testen Ihres LMS mit automatischen Mitteln. In unserem Fall wird dies von den Entwicklern genutzt, um ihren Code bei der Entwicklung von Moodle- und Totara-Code zu überprüfen. Dabei handelt es sich um ein unverzichtbares Werkzeug, um die Qualität aufrechtzuerhalten und potenzielle Bugs und Fehler früh zu erkennen.

Das automatisierte Testen findet statt, bevor der Code überhaupt geschrieben wird. Indem Sie zunächst Tests schreiben, die alle Aspekte des zu entwickelnden Codes abdecken, können Sie anschließend einen Code entwickeln, der alle Tests ohne Lücken besteht. Der Testprozess wird bei neuen Plattformversionen, Upgrades, Aktualisierungen und allen anderen Änderungen am Code fortgesetzt. 

Warum ist Testautomatisierung so wichtig?

Wann immer jemand an Ihrem LMS arbeitet, kann etwas schief gehen. Menschliches Versagen, fehlerhafter Code und inkompatible Versionen stellen allesamt ein Risiko dar. Bei der Erstentwicklung, bei Upgrades, beim Hinzufügen neuer Funktionen und beim Kombinieren verschiedener benutzerdefinierter Codes können sich Bugs und Fehler einschleichen.

Testautomatisierung unterstützt Sie dabei, viele dieser Probleme sofort und mit minimalen Auswirkungen auf Ihr Budget und Ihre Ressourcen zu beseitigen.

Bestehen Sie auf Testautomatisierung

Wenn Sie eine benutzerdefinierte Entwicklung für Ihr LMS in Auftrag geben, empfehlen wir Ihnen dringend, darauf zu bestehen, dass Testautomatisierung Teil des Entwicklungsprozesses ist. Wir würden sogar so weit gehen zu sagen, dass es ein Warnsignal ist, wenn der Entwickler nicht darauf besteht, dass dies Teil des Entwicklungsprozesses ist.

Arten von automatisierten Tests

Es gibt zwei Hauptarten von automatisierten Tests:

  1. Unit-Tests 
  2. Benutzerakzeptanztests

In beiden Fällen sind die Testschritte folgende:

  • Ein Szenario zum Testen einrichten
  • Tätigkeit ausführen
  • Ergebnisse überprüfen

Unit-Tests

Unit-Tests in Moodle werden immer mit PHPUnit durchgeführt (für andere Systeme gibt es andere Unit-Testsysteme). Damit wird der Code und die Funktion aller internen Details eines Plugins getestet.

Benutzerakzeptanztests

Für Benutzerakzeptanztests auf Moodle LMS und Totara Learnverwenden wir Behat, ein quelloffenes verhaltensgesteuertes Entwicklungsframework für PHP. 

Dies ermöglicht das automatisierte Testen von sehr spezifischen Prozessen und Verhaltensweisen innerhalb Ihres LMS oder Plugins. Es ist ein bisschen so, als hätten Sie Ihren eigenen Roboter-Assistenten, der sich durch jede Seite einer Test-Site klickt, um sicherzustellen, dass alles wie erwartet funktioniert.

Sie erstellen einfach Szenarien, in denen Sie das Gegebene (die Vorbedingungen des Szenarios), das Wenn (die Aktionen, die dieses Szenario auslösen) und das Dann (die Ergebnisse, die vom Szenario erwartet werden) festlegen.

Mit Behat können Sie schnell testen, ob die tatsächlichen Ergebnisse mit den beabsichtigten Ergebnissen übereinstimmen.

Tests als Bewertung

Wir alle im Bereich Learning & Development sind mit der Idee von Tests als Form der Beurteilung vertraut. Hier geht es um eine leichte Abwandlung dieses Konzepts. Das Ausmaß der automatisierten Tests und anderer Formen von Tests, die ein Entwickler durchgeführt hat, sollte bei der Bewertung von Plugins von Drittanbietern für Ihr LMS eine wichtige Rolle spielen. Dieses Assessment ist sehr einfach zu erreichen...

Überprüfen Sie den Ordner „Tests“

Wenn Sie das nächste Mal ein Plugin für Ihr LMS installieren wollen, werfen Sie zunächst einen Blick in den Ordner „Tests“. Dort sehen Sie genau, welche Schritte der Entwickler unternommen hat, um sicherzustellen, dass das Plugin wie vorgesehen funktioniert.

Dies gibt Ihnen entweder Gewissheit oder Anlass zur Sorge – beides ist hilfreich, bevor Sie das Plugin installieren.

Automatisierte Tests sind nicht die Lösung für alles

Wie wir bereits erwähnt haben, sind automatisierte Tests fantastisch, um Fehler im Code zu finden. Allerdings können sie nicht alles aufdecken. Geprüft werden kann nur, was Sie vorgegeben haben. Wenn Sie etwas übersehen haben, wird es auch von den automatisierten Tests übersehen.

Ebenso werden einige offensichtliche Fehler übersehen. Wenn der Code besagt, dass Ihr LMS schwarz mit dunkelgrauem Text sein soll, dann ist es unwahrscheinlich, dass automatisierte Tests das Problem erkennen, solange der Code gut geschrieben ist.

An dieser Stelle kommt der Mensch ins Spiel. Wir führen umfangreiche Qualitätssicherungsprozesse durch, die diese offensichtlichen Fehler aufspüren und Dinge erkennen können, die bei den automatisierten Tests möglicherweise nicht berücksichtigt wurden.

Deshalb ist Testautomatisierung so wichtig

Es ist zwar kein Allheilmittel, aber Testautomatisierung ist ein erschwinglicher und schneller Weg, um die Qualität und Zuverlässigkeit des Codes sicherzustellen, die Qualität und Eignung von Plugins von Drittanbietern zu bewerten und Ihr Unternehmen zu schützen, wenn Sie für kundenspezifischen Code bezahlen.

Wenn Sie darüber sprechen möchten, wie Testautomatisierung Ihnen dabei helfen kann, all diese Dinge und noch mehr zu erreichen, füllen Sie einfach das untenstehende Formular aus und wir melden uns bei Ihnen.

Tags

Teilen

Wir melden uns bei Ihnen!

Ganz gleich, ob Sie Ihre derzeitige Plattform aufrüsten, mit einem LMS Ihrer Wahl von Grund auf neu beginnen oder eine Anleitung benötigen, wo Sie beginnen sollen – wir helfen Ihnen gerne!

Newsletter

Lerntipps direkt in Ihrem Posteingang

Bleiben Sie auf dem Laufenden über die neuesten Lerntechnologien, E-Learning-Einblicke und Ratschläge, wie Sie die die besten Ergebnisse für Ihre Lernenden und Ihre Plattformen zu erzielen. Melden Sie sich an, um regelmäßige E-Mail-Updates zu erhalten.