Wir sind mit TESTIFY.TEAM, seit Sommer 2021, als Agentur für automatisiertes Webseite Testing am Markt. Aktuell gehen wir wieder viel auf Network-Veranstaltungen und Konferenzen, die nicht immer nur Developer als Zielgruppe haben. Gerade Marketing und Startup-Events sind hier sehr wichtig für uns. Hier klären wir, vor allem über die schnelle und zuverlässige Art des Software Testings auf. Wir sehen uns ganz klar als Bug Hunter. Durch unsere E2E Tests simulieren wir echte User mit echten Browsern gegen Staging und Live Systeme. Unsere Tests finden dabei ganz unterschiedliche Arten von Bugs. Sie decken die eigene Applikation, Fremdanbieter und auch die gesamte Infrastruktur ab. Wenn unsere Tests grün sind, dann gibt das viel Sicherheit und vor allem Zeit. Die Tests decken in 5 Minuten das ab, was manuelle Tester in 90 Minuten schaffen. Das entlastet die eigenen Ressourcen erheblich und gibt der Entwicklungsabteilung sehr schnelles und wertvolles Feedback. Aber eine Frage wundert uns dann bei den ganzen Profis doch sehr stark. Darüber wollen wir einmal aufklären.
Warum kann TESTIFY keine Bugs beheben und wo kommen diese eigentlich her?
Für E2E Tests – End to End Tests – wird ein 100%iges Userverhalten mit einem echten Browser simuliert. Scrollen, klicken, Formulare ausfüllen, E-Mails empfangen und damit ggf. interagieren. Es ist das exakt gleiche als würde uns jemand darum bitten eine Internetseite manuell mit Maus und Tastatur zu testen. Das bedeutet, wir tun das von außen als externer Dienstleister. Deshalb sind wir auch nur in der Lage ein System zu testen. Wir haben darauf keinen Zugriff. Das macht es auf der anderen Seite unseren Onboarding sehr effizient, da wir sofort Tests gegen bestehenden Internetseiten laufen lassen können. Wir können innerhalb Sekunden ein Setup an Basistests für jede Internetseite bereitstellen. Eine Internetseite stellt Daten über einen Webserver dem Internet zur Verfügung. Das ist in den meisten Fällen ein Content Management System, wie WordPress oder TYPO3. Es kann aber auch eine Shoplösung, wie Shopify, Shopware oder etwas anderes sein. An der Stelle kann man sagen, dass wirklich sehr kompliziert wird. Wenn man das mit einem Auto vergleicht, kann man jetzt auch ganz viele Fehlerquellen finden, die dafür sorgen das ein Auto gar nicht oder nur eingeschränkt läuft. Hier kann beispielsweise vom Benzin bis zum Lenkrad alles fehlen. Und auch, wenn man auf den ersten Blick denkt der Vergleich passt nicht. Manchmal sind ganz elementare Dinge, wie eine komplette Datenbank einfach weg. Neue Features und Updates sind auch mögliche Fehlerquellen, daher werden die auch nur sehr selten gemacht und sind mit hohen Kosten verbunden, wenn man keine automatisierten Tests einsetzt. Aber auch CMS Redakteure oder falsche Pixel vom Online Marketing sind hier auch Quellen, die keinen technischen Hintergrund haben und trotzdem schnell eine ganze Internetseite kaputt machen können.
Was hilft mir das als Betreiber oder Agentur wenn jemand automatisiert Bugs findet?
Einfache Antwort – es spart Zeit, Geld, Nerven und der Bug richtet keinen weiteren Schaden mehr an, wenn er behoben und in Zukunft abgedeckt ist. Ganz ohne Tests bleibt in Wahrheit nur die Hoffnung. Das bezieht sich zumindest auf Live Systeme. Also, wenn vor einer Stunde alles funktioniert hat, dann ist das auch so lange so, bis jemand was macht. Das stimmt so leider nicht und wird später ausgeführt. Und es wird ja auch ständig etwas gemacht. Unsere Tests helfen vor allem beim Prozess neue Software auf Staging Umgebungen zu überprüfen und Live-Systeme zu überwachen. E2E Tests für Monitoring einzusetzen kann man zwar leider nicht als unsere Idee verkaufen, aber wir haben ihr großes Potential erkannt und darauf ein eigenes Startup gegründet. Im Entwicklungsprozess ermöglichen unsere Tests alle Umgebung innerhalb von Minuten vollständig zu testen. Vom lokalen Entwicklungssytem über alle Preview Instanzen bis hin zu Livesystemen. Dafür stehen im Regelfall keine personellen und manuellen Ressourcen zur Verfügung. Wenn es Testing-Teams gibt, dann sind die mehrköpfig und testen eine einzelne Umgebung zumindest im Stundenaufwand tagelang. Also ermöglichen automatisierte Tests überhaupt erst Tests als Werkzeug für die Entwicklung aktiv wahrzunehmen. Dazu kommt das Monitoring von Live Systemen. Innerhalb weniger Wochen sind Engpässe gefunden und können gezielt angegangen werden. So werden Fehler, die sonst kritisch geworden oder gar nicht erst aufgefallen wären bereits im Vorfeld erkannt. Ein Katastrophe kann man so elegant umschiffen und muß nicht immer voll reinknallen, wenn es schon viel zu spät ist.
Redakteure brauchen bitte auch die Sicherheit Fehler machen zu dürfen
Ein Produkt im Shop ist mehr als nur eine Artikelnummer. Die einzelnen Seiten sind technologisch anspruchsvoll. Bilder, Videos, Preise, Verfügbarkeiten, weiterführende Links und das Tracking erfordern auch aufwendige redaktionelle Arbeit für die Internetredaktion. Auch hier werden die Systeme nicht einfacher und man kann nicht mehr alle Einstellungen überblicken. Wie schnell ist eine kleine Checkbox abgewählt und möchte man für eine kleine Änderung als Mitarbeiter die gesamte Verantwortung für den wichtigsten digitalen Vertriebsweg übernehmen. Wir sind gegen ein schwarzer Peter Prinzip. Automatisierte Tests von TESTIFY können viel mehr als nur klicken. Einzelne Seiten können komplett validiert werden. Dabei auch wichtige Einstellungen, wie die Sichtbarkeit für SEO, Meta Tags, Tracking Pixel und natürlich auch die Funktionalität aller Elemente wie Bildergalerien, FAQ und allem anderen. Alle Elemente werden in Content Management Features durch Menschen eingestellt. Falsche Einstellungen hier können die Funktionalität einer Webseite zerstören, ohne das ein technischer aus der Programmierung Fehler vorliegt. Man stelle sich einmal vor jemand würde bei WordPress einfach die Base URL ändern. Alle Seiten wären sofort down.
Es können Dinge ausfallen von internen und externen Services, die niemand falsch Programmiert hat
Neben allen menschlichen Fehlerquellen gibt es auch eine Vielzahl von technischen Komponenten, die gar nicht oder nur eingeschränkt funktionieren können. Dazu einmal einige Dinge, die uns im letzten Jahr bei Kunden und uns selber aufgefallen sind. Hier hatten wir unseren zweiten Kunden und der Projektmanager war unheimlich glücklich auf seinem PC einfach unsere Tests durchführen zu können. Eine komplette Buchung für einen Kinofilm. Mit und ohne Gutschein, einzelnen Menues, Parkschein und noch vielen weiteren Features. Und da haben wir unser erstes Test Monitoring eingerichtet und die Tests alle 2 Stunden automatisch in unserer GitLab Pipeline fahren lassen und das Ergebnis in einem Slack Kanal zur Verfügung gestellt. Alles grün alle glücklich. Und auf einmal am Sonntagmorgen um 9:00 Uhr – Rot. Mit den Handy kann man sich sofort einen Screenshot vom Bug und ein Video mit allen technischen relevanten Requests anschauen. Hier hat sich herausgestellt, dass ein externer Cookie Consistent Dienst über 30 Sekunden für die Verarbeitung der Daten gebraucht hat. Ein anderer Fehler ist bei uns passiert. Bei einem Kunden wird bei jedem Durchlauf ein neuer dynamischer E-Mail User erstellt, gibt einen Validierungscode auf der Webseite ein. Danach wird das Passwort via E-Mail neu gesetzt, der automtisierte User loggt sich neu ein und löscht sich dann. Dabei sind wir in ein Mail Limit gelaufen und die Tests waren rot. Das kann natürlich auch bei anderen Limits von externen Anbietern passieren. Bei uns wurde das dann direkt entdeckt und angepasst. Hier kommen wir auch ganz schnell zur Nadel im Heuhaufen und müssen nicht mühselig rausfinden, was es nicht tut.
Den Fehler mit dem Cookie Banner wird man nicht nachstellen können und das kann einen wahnsinnig machen
Die Videos unserer automatischen Website Tests sind ein klarer und eindeutiger technischer Beleg mit vielen Informationen zu dem gefunden Bug oder auch für die richtige Funktionalität. Wir behalten auch die Videos der positiven grünen Durchläufe. Das hat sich in der Praxis sehr gut bewährt und belegt nicht viel Speicherplatz. Wenn man den Fehler des externen Dienstes Reporten und gelöst haben möchte bekommt man allerdings schnell ein sehr großes Problem. Der Fehler lässt sich manuell gar nicht nachstellen, weil er viel zu temporär auftritt. Am Ende ca. 23 mal in der Woche. Also 23 Kunden, die erstmal nicht buchen können. Aber was wäre ohne automatisierte Tests und Videos passiert, wenn einer engagierten Mitarbeiterin vom Marketing dieser Umstand aufgefallen wäre. Bleibt erst mal festzuhalten, mit einem einfachen Reload hat sich das Problem auch erledigt. Damit werden es technische Ansprechpartner auf die lokale Internetverbindung schieben. Oder es sogar komplett abstreiten. Und das kann die mentale Gesundheit stark strapazieren, wenn man weiß das etwas nicht richtig klappt und man einfach von der Technik nicht erst genommen wird. Der Projektmanager konnte dem externen Dienstleister jedenfalls gut gelaunt ein Ticket mit Video und der Bitte zur Behebung mit freundlichen Grüßen von TESTIFY einreichen. Und der Dienstleister hat sich am Ende auch gefreut, konnte er doch auch sein Produkt verbessern und zuverlässiger machen.
TESTIFY macht Pandoras Box nicht auf, Never Code Alone schon und hilft
Bugs finden und Teams damit alleine lassen, wie passt das denn zusammen? Erstmal bleibt festzuhalten, dass man durch eine gute Testabdeckung und schnelle Tests Fehler deutlich schneller findet. Auf Staging Umgebungen bevor Entwickler in eine andere Aufgabe gehen. So werden sie aus dem aktuellen Task nicht mehr rausgerissen und unterbrochen. Das entlastet Teams und gibt Sicherheit. Denn bekannte Fehler werden hier behoben und neu abgedackt. Damit kommen die schon mal nicht wieder. Trotzdem bleibt die Frage offen, wie kann TESTIFY ganz konkret dabei helfen Software zu verbessern und Projekte zu stärken? TESTIFY kann das nicht. Aber Never Code Alone tut genau das seit vielen Jahren. Mit Software Consulting in PHP Projekten mit Symfony und TYPO3. Das PHP Consulting Team hinter Roland Golla hat sich genau darauf spezialisiert. Hier wird Softwarequalität groß geschrieben. Durch Testing und Refactoring, Workshops und ganz neu wöchtentliche Remote Consultings.