Feature-Testing
Feature-Testing prüft, ob eine Softwarefunktion wie spezifiziert arbeitet, vom Normalfall bis zu Fehleingaben, Rechten und Last. Ablauf und Fehler.
Was ist Feature-Testing?
Feature-Testing bedeutet, eine bestimmte Funktion eines Softwareprodukts, etwa Suche, Checkout oder einen neuen Export-Button, daraufhin zu prüfen, ob sie ihre Anforderungen erfüllt, und zwar vom Anfang bis zum Ende, vor und nach der Veröffentlichung. Es umfasst den Idealfall, ungültige Eingaben, Berechtigungen und das Zusammenspiel mit dem Rest des Produkts. Es ist enger gefasst als ein Test der gesamten Anwendung und breiter als ein Unit-Test.
So funktioniert Feature-Testing
- Halten Sie fest, was die Funktion leisten muss: Akzeptanzkriterien, Eingaben, Ausgaben, berechtigte Rollen.
- Leiten Sie Testfälle ab: Normalbetrieb, Grenzwerte, fehlerhafte Eingaben, fehlende Rechte, abgebrochene Aktionen.
- Führen Sie sie gegen einen Build in einer Testumgebung aus, zuerst manuell, dann automatisiert, wo sie sich wiederholen.
- Prüfen Sie die Nachbarn: andere Funktionen, die Daten oder Screens teilen.
- Beheben, erneut testen und die nützlichen Fälle als automatisierte Suite behalten.
Was ein Feature-Test abdeckt
- Funktion: Sie verhält sich wie spezifiziert, einschließlich Fehlermeldungen und leerer Zustände.
- Integration: Sie arbeitet mit Datenbank, Zahlungsanbieter oder anderen aufgerufenen Diensten zusammen. Für HTTP-Schnittstellen siehe API-Tests.
- Usability und Barrierefreiheit: Menschen können sie nutzen, auch mit Tastatur und assistiven Technologien. Siehe automatisierte Barrierefreiheitstests und manuelle Tests für Barrierefreiheit.
- Performance: Sie bleibt unter realistischer Last akzeptabel. Eine Funktion, die fachlich besteht, kann für viele gleichzeitige Nutzer trotzdem zu langsam sein.
- Sicherheitsgrundlagen: Autorisierungsprüfungen und Eingabeverarbeitung für diese Funktion.
Ein einfaches Beispiel
Ein Team ergänzt "Ergebnisse als CSV exportieren". Die Feature-Tests prüfen, ob die Datei mit den richtigen Spalten öffnet, ob ein leeres Ergebnis eine klare Meldung liefert, ob ein Nutzer mit Leserolle nichts exportieren kann, was er nicht sehen darf, ob Sonderzeichen erhalten bleiben und ob ein Export mit 100.000 Zeilen durchläuft statt in ein Timeout zu laufen. Danach wird der Export bei jeder Änderung der Ergebnisseite erneut getestet, das ist Regressionstesting.
Feature-Testing, Release und Produktion
Teams liefern eine Funktion oft hinter einem Schalter aus, um sie sicher mit echtem Traffic zu testen: siehe Feature Flags und Feature Rollout. Nach dem Release beobachten automatisierte Checks sie weiter. API-Monitoring von LoadFocus kann die Endpunkte der Funktion nach Zeitplan aufrufen und bei Fehlern alarmieren, Lasttests zeigen das Verhalten bei vielen gleichzeitigen Nutzern. Ein Beispiel dafür, eine Verlangsamung zwischen Releases zu entdecken, finden Sie im Beitrag Performance-Regression mit automatisierten Tests erkennen (auf Englisch).
Häufige Fehler
- Nur den Idealfall testen.
- Keine Akzeptanzkriterien schreiben, sodass niemand sagen kann, was "funktioniert" heißt.
- Die Funktion isoliert testen und übersehen, was sie anderswo kaputt macht.
- Performance und Barrierefreiheit erst nach dem Launch prüfen.
- Sich auf manuelle Wiederholungstests verlassen, obwohl sich die Funktion mit jedem Release ändert.
Häufige Fragen
Was ist der Unterschied zwischen Feature-Testing und Funktionstests?
Funktionstests prüfen, ob die Software tut, was die Anforderungen sagen. Feature-Testing wendet das auf jeweils eine benannte Funktion an. In der Praxis überschneiden sich die Begriffe stark.
Ist Feature-Testing dasselbe wie Regressionstesting?
Nein. Feature-Testing prüft, ob eine Funktion wie spezifiziert arbeitet. Regressionstesting wiederholt nach einer Änderung bestehende Tests, um sicherzustellen, dass nichts Funktionierendes kaputtgegangen ist.
Sollten Feature-Tests manuell oder automatisiert sein?
Beides. Erkunden Sie manuell, solange die Funktion neu und unklar ist, und automatisieren Sie dann die Fälle, die Sie bei jedem Release wiederholen.
Wer schreibt Feature-Tests?
Das ist unterschiedlich: Entwickler schreiben Unit- und Integrationstests, QA-Engineers End-to-End-Fälle, Product Owner liefern die Akzeptanzkriterien. Wichtig ist, dass die Kriterien vor dem Test existieren.
Ist Feature-Testing dasselbe wie A/B-Testing?
Nein. Feature-Testing prüft, ob eine Funktion funktioniert. A/B-Testing vergleicht zwei Varianten mit echten Nutzern, um zu sehen, welche bei einer Kennzahl besser abschneidet.
Verwandte Begriffe
- Was ist eine Abfragesprache?
- Rollenbasierte Zugriffskontrolle (RBAC)
- Was ist SAML (Security Assertion Markup Language)?
- Was ist Single Sign-On (SSO)?
- Was ist eine Customer Data Platform (CDP)?
- Edge Content Delivery: So funktioniert es
- Ende-zu-Ende-Verschlüsselung (E2EE)
- Was sind Feature Flags? Definition, Einsatzfälle, Fallstricke
Verwandte LoadFocus-Tools
Setze dieses Konzept mit LoadFocus in die Praxis um, derselben Plattform, die alles antreibt, was du gerade gelesen hast.