Haben Sie Angst, dass vor einer Implementierung etwas schiefgehen wird?
Änderungen an einer Website einzuführen, ist der Moment, in dem die Website des Kunden am anfälligsten für Fehler ist. Viele Witze unter Entwicklern beziehen sich auf Implementierungen, die vor wichtigen Terminen vorgenommen wurden. Bei Droptica haben wir ein System entwickelt, das es uns ermöglicht, keine Angst vor Implementierungen zu haben - sogar an Freitagen ;)
Problem bei der Implementierung von Änderungen
Warum macht es eine funktionierende Website anfälliger für Fehler, wenn Änderungen implementiert werden?
Angenommen, Sie haben eine fertige Website, die täglich Hunderte von Kunden bedient. Alle ihre Elemente wurden gründlich getestet und funktionieren gut zusammen. Eine solche Website herunterzufahren, um neue Funktionen in Ruhe zu testen, ist keine Option, da dies für den Website-Besitzer Verluste bedeuten würde. Gleichzeitig bedeutet das Hinzufügen eines Elements, das zuvor nicht im System war, das Risiko, dass dessen Betrieb die bestehenden Teile blockieren könnte. Die Situation kann gefährlich werden, besonders wenn der Fehler nicht rechtzeitig bemerkt wird, weil die Implementierung kurz vor dem Wochenende oder Feiertagen stattfindet. Im Internet kursieren viele Geschichten über solche Fälle – sowie unzählige Memes.
Bei der Implementierung müssen Sie sicherstellen, dass alles überprüft und getestet wurde und es keine Probleme mit der „Live“-Version einer Website geben wird. Es ist ein bisschen wie der Versuch, Waggons an einen fahrenden Zug anzukoppeln... Wie ist es also möglich, dass das Wartungs- und Support-Team von Droptica regelmäßig neue Funktionen zu bereits bestehenden Websites hinzufügt, ohne sie zu zerstören?
Website-Testing
CodeCeption
CodeCeption ist ein populäres Framework, das die Erstellung automatisierter Softwaretests ermöglicht. Mit CodeCeption können Sie unter anderem folgende Tests erstellen:
- Unit Tests
- Akzeptanztests
- Funktionstests
Gründliches Testen – manchmal mehrmals wiederholt – jedes Codes vor seiner Einführung in die Produktionsversion einer Website ermöglicht es Ihnen, Fehler sehr frühzeitig zu erkennen und Verzögerungen zu vermeiden. Dadurch spart das Team Zeit, da es nicht jedes Stück Code manuell testen muss und sich auf die Bereitstellung der nächsten Funktionalitäten konzentrieren kann, die der Kunde wünscht.
VisualCeption
VisualCeption ist ein Tool, das wir für grafische Tests aller Websites verwenden. Bei der ersten Ausführung erstellt das Programm einen Screenshot, der die Basis für Vergleiche bildet. Nachfolgende Tests erstellen eine Reihe von Screenshots, die mit dem Original verglichen werden. Auf deren Grundlage erhalten Sie Informationen über den Prozentsatz an Änderungen im Vergleich zum Original. So wissen Sie beispielsweise, ob nach der Einführung von Änderungen die richtigen Proportionen eines Bildes oder die Größe und Schriftart beibehalten wurden. Dies ist besonders wichtig für Websites, deren Erscheinungsbild prioritär ist.
Mehr über VisualCeption zur Automatisierung von Tests für Ihre Projekte können Sie in unserem Blog lesen.
Mit CodeCeption und VisualCeption können Sie zu 100% sicher sein, dass Sie nichts auf Ihrer Website zerstört haben :) In den verlinkten Beiträgen bieten wir mehr Informationen über die Möglichkeiten dieser nützlichen Tools.
Versionskontrollsystem und Beibehaltung der Code-Änderungen
Das Einführen neuer Funktionen, die Verbesserung der alten oder das Entfernen unnötiger oder falscher Elemente sind natürliche Teile des Lebenszyklus jeder Website. Websites ändern und entwickeln sich. Ihr Code muss daher auch Änderungen unterliegen. Es ist wichtig, diese Änderungen nachverfolgen und im Falle von Problemen schnell die richtige Version wiederherstellen zu können.
Das Wiederherstellen der vollständigen Version einer Website aus einem Backup, während nur ein kleines Element Korrekturen benötigt, kann mühsam und zeitaufwendig sein. Stattdessen nutzen wir das Versionskontrollsystem (GIT) und halten alle Änderungen in den entsprechenden Zweigen des Codes. Dies hat viele Vorteile:
- Es ermöglicht uns, Änderungen in allen Versionen des Codes nachzuverfolgen.
- Es ermöglicht mehreren Entwicklern, unabhängig voneinander an der Website zu arbeiten.
- Es bietet eine leicht zu modifizierende Website-Sicherung.
- Es hält den gesamten Code an einem Ort - es gibt keine zusätzlichen Skripte, die per E-Mail oder auf andere Weise gesendet werden.
- Es ermöglicht die schnelle Erstellung von Testversionen.
Ein-Klick-Deployment
Die Automatisierung des Softwareentwicklungs- und Testprozesses hat es uns zudem ermöglicht, die Implementierung von Code auf die Produktionsversion einer Website zu automatisieren. Manchmal erfolgt der Aufruf zur Implementierung neuer Änderungen in die Produktion buchstäblich „durch Drücken eines Knopfes“ oder das Ausführen eines Skripts. Das Team kann so mehr kleine Änderungen vornehmen, selbst täglich. Tritt ein Fehler auf, ist es statt vieler Zeilen Code zu durchsuchen, um den „Schuldigen“ zu finden, viel einfacher, die Ursache des Problems zu identifizieren. Der Kunde erhält die Funktion schneller und kann sicher sein, dass sie korrekt mit dem Rest der Website funktioniert.
Schlussgedanken
Der von uns entwickelte Prozess macht nicht nur die Einführung von Änderungen sicher, sondern gewährleistet auch die Stabilität der Website, selbst wenn sie häufig geändert wird. Der richtige Ansatz ermöglicht es uns auch, schnell Änderungen einzuführen, was wiederum Zeit und Geld unserer Kunden spart. Dadurch sind sowohl der Kunde als auch das Team mit der Zusammenarbeit und der Projektentwicklung zufriedener. Die Kunden-Website kann sich an die Bedürfnisse ihres Unternehmens anpassen und mit jeder Implementierung Erfolg erzielen.