Non-functional testing
Agile in der QS Bewährte Methoden Testmanagement
20 min lesen
April 14, 2025

Nicht-Funktionales Testen: Bedeutung, Arten und Best Practices

Qualitätstests prüfen nicht nur, ob deine Software das tut, was sie soll. Natürlich muss dieser Button das Formular absenden – aber wie schnell passiert das? Kann dein System 10.000 Nutzer verkraften, die gleichzeitig diesen Button drücken? Ist es sicher genug, um die Daten deiner Nutzer zu schützen? Hier kommt nicht-funktionales Testen ins Spiel.

photo
photo
Paul Elsner
Nurlan Suleymanov

Heutzutage erwarten Nutzer Anwendungen, die nicht nur funktionieren, sondern gut funktionieren – Systeme, die schnell, sicher und benutzerfreundlich sind. Nicht-funktionales Testen hat sich von einer „netten Ergänzung“ zu einer kritischen Komponente im Software-Entwicklungszyklus entwickelt, besonders weil die Nutzererwartungen stetig steigen.

In diesem Leitfaden erklären wir, was nicht-funktionales Testen wirklich bedeutet, warum es für dein QA-Team wichtig ist und wie du es effektiv umsetzen kannst. Betrachte dies als deinen Backstage-Pass für die Entwicklung von Software, die nicht nur funktioniert – sondern gedeiht.

Was ist Nicht-Funktionales Testen?

Nicht-funktionales Testen bewertet die Qualitäten eines Systems über seine grundlegenden Funktionen hinaus – es testet, wie ein System funktioniert, nicht ob es seine beabsichtigten Aufgaben erfüllt. Während funktionales Testen bestätigt, ob dein Login-Button Nutzer tatsächlich einloggt, prüft nicht-funktionales Testen, ob dieser Login schnell, sicher und zuverlässig erfolgt.

Stell es dir so vor: Funktionales Testen prüft, ob dein Auto startet, die Bremsen funktionieren und die Scheinwerfer angehen. Nicht-funktionales Testen untersucht Kraftstoffeffizienz, Handling auf nassen Straßen und Komfort während einer sechsstündigen Fahrt.

Nicht-funktionales Testen bewertet Aspekte wie:

  • Performance und Geschwindigkeit unter verschiedenen Bedingungen
  • Sicherheit gegen potenzielle Bedrohungen
  • Benutzerfreundlichkeit und User Experience
  • Zuverlässigkeit und Stabilität über Zeit
  • Kompatibilität auf verschiedenen Plattformen
  • Skalierbarkeit bei wachsenden Nutzerzahlen

Diese Art von Tests liefert kritische Erkenntnisse, die direkt die Nutzerzufriedenheit und den Geschäftserfolg beeinflussen. Eine funktionsreiche Anwendung, die unter hoher Last abstürzt oder sensible Daten preisgibt, wird keine Fans gewinnen, egal wie gut sie auf dem Papier funktioniert.

Kernziele des Nicht-Funktionalen Testens

Nicht-funktionales Testen geht über die Prüfung von Features hinaus – es stellt sicher, dass deine Software die Erwartungen erfüllt, die Nutzer nicht explizit äußern, aber absolut erwarten. Hier ist, was es erreichen soll:

  • Verbesserung der User Experience: Nutzer erwarten schnelle, intuitive und zuverlässige Systeme. Nicht-funktionales Testen stellt sicher, dass sich deine Software so gut anfühlt, wie sie funktioniert.
  • Verifizierung der Systemzuverlässigkeit: Wenn dein System mit unerwarteten Situationen konfrontiert wird – starker Traffic, Serverprobleme oder ungewöhnliches Nutzerverhalten – hilft nicht-funktionales Testen, Stabilität zu gewährleisten.
  • Behebung von Sicherheitslücken: Bevor Hacker Schwachstellen finden, identifiziert nicht-funktionales Testen Sicherheitslücken und stellt sicher, dass sensible Daten geschützt bleiben.
  • Optimierung der Performance: Durch Messung von Antwortzeiten und Ressourcennutzung identifiziert nicht-funktionales Testen Engpässe und Optimierungsmöglichkeiten.
  • Sicherstellung der Compliance: Viele Branchen haben strenge regulatorische Anforderungen für Sicherheit, Zugänglichkeit und Datenhandhabung. Nicht-funktionales Testen hilft zu überprüfen, ob deine Software diese Standards erfüllt.

Die Schönheit des effektiven nicht-funktionalen Testens liegt in seiner präventiven Natur – es erkennt Probleme, bevor sie echte Nutzer beeinträchtigen, und erspart deinem Team Notfallreparaturen und Reputationsschäden.

Für effektives nicht-funktionales Testen brauchst du ein robustes Testmanagementsystem, das dir und deinen Testbemühungen das Leben erleichtert. Ein Paradebeispiel für dieses TMS ist aqua cloud, eine KI-gestützte Lösung mit wertvollen Features, die zu deinen Testanforderungen passen.

Aqua cloud geht über funktionales Testen hinaus und unterstützt kritische nicht-funktionale Testbemühungen – wie Performance-, Usability- und Sicherheitsvalidierung. Mit nativen Integrationen zu Lösungen wie JMeter und nahtloser Unterstützung für exploratives und sitzungsbasiertes Testen kannst du reale Last simulieren, UX-Engpässe aufdecken und unvorhersehbares Verhalten dokumentieren. Aquas KI-gestützte Features verkürzen die Testeinrichtungszeit drastisch durch Generierung von Testfällen, Testdaten und Anforderungen in Sekunden. Durch die Zentralisierung des Testmanagements, die Verknüpfung von Tests mit Anforderungen und die Bereitstellung nachvollziehbarer Echtzeit-Berichte stellt aqua sicher, dass Probleme wie Performanceeinbrüche, verwirrende Abläufe oder Sicherheitsanomalien frühzeitig erkannt werden – bevor sie Nutzer beeinträchtigen.

Geh über funktionales Testen hinaus mit 100% KI-gestützter Lösung

Probiere aqua cloud kostenlos aus

Arten des Nicht-Funktionalen Testens

Performance-Testing

Performance-Testing untersucht, wie sich dein System unter verschiedenen Lastbedingungen verhält. Es ist der Unterschied zwischen einer Anwendung, die den Black-Friday-Traffic elegant bewältigt, und einer, die abstürzt, wenn sie in einem populären Blog erwähnt wird.

Arten von Performance-Tests umfassen:

  • Load Testing: Verifiziert das Systemverhalten unter erwarteten Lastbedingungen
  • Stress Testing: Treibt Systeme über die normale Betriebskapazität hinaus, um Bruchpunkte zu finden
  • Endurance Testing: Überwacht das Systemverhalten während anhaltender Perioden erwarteter Last
  • Spike Testing: Untersucht die Systemreaktion auf plötzliche, signifikante Lastanstiege

Wichtige Metriken im Performance-Testing umfassen:

  • Antwortzeit
  • Durchsatz
  • Ressourcennutzung
  • Maximale gleichzeitige Nutzer
  • Stabilität unter Last

Ein guter Performance-Test zeigt nicht nur, ob dein System langsamer wird, sondern genau wo die Engpässe auftreten – ob in Datenbankabfragen, Speichernutzung oder Netzwerkbeschränkungen.

Usability Testing

Usability Testing bewertet, wie intuitiv und benutzerfreundlich deine Anwendung ist. Es untersucht, ob Nutzer ihre Ziele effizient und zufriedenstellend erreichen können.

Schlüsselaspekte des Usability Testing umfassen:

  • Navigationsfluss und Intuitivität
  • Effektivität von visuellem Design und Layout
  • Klarheit der Fehlerbehandlung und Messaging
  • Zugänglichkeit für Nutzer mit Behinderungen
  • Allgemeine Nutzerzufriedenheit

Die wertvollsten Usability-Tests beinhalten oft die Beobachtung echter Nutzer beim Erledigen von Aufgaben, während qualitatives Feedback gesammelt wird. Dieses Testen zeigt, ob deine perfekt funktionierende Software Nutzer in der Praxis frustrieren wird.

Security Testing

Security Testing ist zunehmend wichtiger geworden, da Cyber-Bedrohungen sich weiterentwickeln. Es identifiziert Schwachstellen, die die Integrität, Vertraulichkeit oder Verfügbarkeit deines Systems kompromittieren könnten.

Security Testing umfasst typischerweise:

  • Vulnerability Scanning: Identifizierung bekannter Sicherheitslücken
  • Penetration Testing: Simulation von Angriffen, um Schwachstellen aufzudecken
  • Security Scanning: Analyse von Netzwerk- und Systemschwachstellen
  • Risk Assessment: Analyse von Sicherheitsrisiken und deren potenziellen Auswirkungen

Effektives Security Testing findet nicht nur Schwachstellen – es priorisiert sie basierend auf potentieller Auswirkung und Ausnutzungswahrscheinlichkeit und hilft Teams, ihre Behebungsbemühungen dort zu konzentrieren, wo sie am wichtigsten sind.

Scalability Testing

Scalability Testing bestimmt, ob deine Anwendung effektiv „hochskalieren“ kann, um Wachstum bei Nutzern, Datenvolumen oder Transaktionsraten zu bewältigen.

Diese Tests untersuchen:

  • Performance unter erhöhter Nutzerlast
  • Datenbankperformance mit wachsenden Datenmengen
  • Systemverhalten beim Hinzufügen weiterer Ressourcen
  • Identifikation von Skalierungsengpässen

Scalability Testing hilft, die unangenehme Situation zu vermeiden, in der dein wachsendes Unternehmen zum Opfer seines eigenen Erfolgs wird – unfähig, neue Kunden zu bedienen, weil Systeme das Wachstum nicht bewältigen können.

Reliability Testing

Reliability Testing stellt sicher, dass dein System unter bestimmten Bedingungen über einen definierten Zeitraum konsistent ohne Ausfall funktioniert.

Wichtige Bereiche des Reliability Testing umfassen:

  • Recovery Testing: Wie gut erholt sich das System von Ausfällen
  • Failover Testing: Testen von Backup-Systemen, wenn Primärsysteme ausfallen
  • Availability Testing: Messung der Systemverfügbarkeit und Zugänglichkeit

Dieses Testen ist kritisch für Anwendungen, bei denen Ausfallzeiten verlorene Einnahmen, Reputationsschäden oder sogar Sicherheitsrisiken bedeuten.

Compatibility Testing

Compatibility Testing verifiziert, dass deine Anwendung ordnungsgemäß auf verschiedenen Plattformen funktioniert:

  • Browser und Browser-Versionen
  • Betriebssysteme
  • Geräte (Desktop, Tablet, Mobilgeräte)
  • Netzwerkumgebungen
  • Datenbanksysteme

Dieses Testen verhindert, dass das „Auf meinem Rechner funktioniert es“-Syndrom deine Endnutzer beeinträchtigt, und stellt konsistente Erfahrungen unabhängig von deren Technologie-Setup sicher.

"Beginne damit, etwas über nicht-funktionale Anforderungen zu lernen. Diese Details werden dich zu einem angemessenen Testplan für deinen speziellen Fall führen. Du musst Verkehrsvolumen, Raten, Datendimensionierung und Beobachtbarkeit definieren."

Anonym Posted in Reddit

Parameter für Nicht-Funktionales Testen

Bei der Planung nicht-funktionaler Tests musst du klare Parameter festlegen, um den Erfolg zu messen. Hier ist eine Aufschlüsselung der wichtigsten zu berücksichtigenden Parameter:

Diese Parameter sollten mit spezifischen, messbaren Zielen definiert werden, die für deinen Geschäftskontext relevant sind. Anstatt einfach zu sagen „das System sollte schnell sein“, spezifiziere „der Checkout-Prozess muss für 95% der Nutzer unter Spitzenlast in weniger als 3 Sekunden abgeschlossen sein.“

Für jeden Parameter solltest du folgendes berücksichtigen:

  • Basiserwartungen (minimal akzeptables Niveau)
  • Zielwerte (gewünschtes Performancelevel)
  • Messmethoden und -werkzeuge
  • Testumgebungen, die die Produktionsumgebung genau widerspiegeln

Denk daran, dass diese Parameter oft interagieren – wenn du die Performance zu stark optimierst, könnte das die Zuverlässigkeit beeinträchtigen, und übermäßige Sicherheitsmaßnahmen könnten die Benutzerfreundlichkeit beeinflussen. Die richtige Balance zu finden ist entscheidend.

Vorteile des Nicht-Funktionalen Testens

Die Implementierung gründlicher nicht-funktionaler Tests bringt zahlreiche Vorteile für deinen Entwicklungsprozess und dein Endprodukt:

  • Verbesserte Nutzerzufriedenheit: Nutzer beschweren sich selten darüber, dass Funktionen wie erwartet arbeiten – aber sie bemerken definitiv langsame Seiten, häufige Abstürze oder verwirrende Oberflächen. Nicht-funktionales Testen adressiert direkt die Faktoren, die Zufriedenheit fördern.
  • Reduzierte Produktionsvorfälle: Das Finden und Beheben von Performance-Engpässen, Sicherheitslücken und Zuverlässigkeitsproblemen vor dem Deployment reduziert dramatisch Notfallreparaturen und ungeplante Ausfälle.
  • Bessere Ressourcenplanung: Das Verständnis, wie dein System unter verschiedenen Bedingungen performt, hilft dir bei der Planung der Infrastrukturbedürfnisse und verhindert sowohl verschwenderische Überversorgung als auch riskante Unterversorgung.
  • Wettbewerbsvorteil: Anwendungen, die schneller, zuverlässiger und benutzerfreundlicher sind als die der Konkurrenz, gewinnen Marktanteile – selbst wenn die Funktionsumfänge ähnlich sind.
  • Regulatorische Compliance: Viele Branchen haben strenge Anforderungen an Sicherheit, Zugänglichkeit und Zuverlässigkeit. Nicht-funktionales Testen hilft, die Einhaltung sicherzustellen und teure Strafen und rechtliche Probleme zu vermeiden.
  • Kosteneinsparungen: Probleme früh in der Entwicklung zu finden, kostet erheblich weniger als sie nach dem Deployment zu beheben. Eine Studie ergab, dass die Behebung eines Defekts in der Produktion 30-mal mehr kosten kann als während der Designphase.

Der ROI des nicht-funktionalen Testens wird besonders deutlich, wenn man die geschäftlichen Auswirkungen der Alternativen betrachtet – wie Kunden, die langsame Checkout-Prozesse abbrechen, oder Reputationsschäden durch Sicherheitsverletzungen.

Du kannst diesen ROI noch weiter steigern, indem du ein robustes TMS verwendest, um deine Testbemühungen zu verstärken.

Aqua cloud erweitert seine Fähigkeiten über funktionales Testen hinaus, um nicht-funktionale Testbereiche wie Performance, Usability und Sicherheit robust zu unterstützen. Mit nativen Integrationen zu Tools wie JMeter ermöglicht aqua realistische Last- und Stresstests, die sicherstellen, dass deine Anwendung unter verschiedenen Bedingungen optimal performt. Seine KI-gestützten Features beschleunigen die Generierung von Testfällen, Anforderungen und Testdaten erheblich und reduzieren so die Einrichtungszeit. Durch die Zentralisierung sowohl manueller als auch automatisierter Tests bietet aqua umfassende Rückverfolgbarkeit und Echtzeit-Berichterstattung, wodurch Teams Performance-Engpässe, Usability-Herausforderungen oder Sicherheitslücken frühzeitig im Entwicklungszyklus identifizieren und adressieren können.

Gib dich mit Exzellenz zufrieden – mit 100% KI-gestütztem, umfassendem TMS

Probiere aqua cloud kostenlos aus

Herausforderungen beim Nicht-Funktionalen Testen

Trotz seiner Wichtigkeit bringt die Implementierung effektiven nicht-funktionalen Testens mehrere Herausforderungen mit sich:

  • Ressourcenintensität: Viele Arten des nicht-funktionalen Testens erfordern spezialisierte Umgebungen, Tools und Expertise. Besonders ressourcenintensiv kann die Einrichtung einer Performance-Testinfrastruktur sein, die die Produktion genau nachahmt.
  • Umgebungsreplikation: Testumgebungen zu schaffen, die Produktionsbedingungen wirklich widerspiegeln, ist schwierig, besonders für Performance- und Skalierbarkeits-Tests. Ohne dies könnten Ergebnisse das Verhalten in der realen Welt nicht korrekt vorhersagen.
  • Expertise-Lücken: Für Security-Tests benötigte Fähigkeiten unterscheiden sich erheblich von denen für Usability- oder Performance-Tests. Teammitglieder mit funktionsübergreifender Expertise zu finden oder zu entwickeln kann herausfordernd sein.
  • Toolauswahl: Der Markt bietet unzählige Tools für verschiedene Arten nicht-funktionaler Tests, was die Toolauswahl und -integration komplex macht.
  • Ausbalancieren der Testabdeckung: Mit begrenzter Zeit und Ressourcen erfordert die Bestimmung, welche nicht-funktionalen Aspekte die meiste Testaufmerksamkeit verdienen, sorgfältige Priorisierung.
  • Bewegliche Ziele: Anforderungen an Performance, Sicherheit und andere nicht-funktionale Aspekte entwickeln sich oft während der Entwicklung weiter, was kontinuierliche Updates der Teststrategien erfordert.

6 Herausforderungen beim nicht-funktionalen Testen

Wenn Teams unter Zeitdruck stehen, ist nicht-funktionales Testen oft das erste Opfer – geopfert, um Liefertermine einzuhalten, trotz der langfristigen Risiken, die dies schafft.

"Funktionales Testen validiert, dass ein in einem System entwickelter Geschäftsprozess funktioniert. Nicht-funktionale Tests sind Dinge wie Performance-Tests, Disaster-Recovery-Tests usw. Dinge, die funktionieren müssen, um das System am Laufen zu halten, aber keine Funktionalität dieses Systems darstellen."

Alexsuzs Posted in Reddit

Best Practices für Nicht-Funktionales Testen

Um die Effektivität deiner nicht-funktionalen Testbemühungen zu maximieren, berücksichtige diese Best Practices:

  • Früh beginnen: Integriere nicht-funktionales Testen von Anfang an in den Entwicklungsprozess. Ein Performance-Problem während des Designs zu finden, ist viel günstiger als es in der Produktion zu entdecken.
  • Klare Anforderungen definieren: Etabliere spezifische, messbare nicht-funktionale Anforderungen. Statt „das System sollte sicher sein“ spezifiziere „das System muss SQL-Injection-Angriffe verhindern und alle persönlich identifizierbaren Informationen verschlüsseln.“
  • Wo möglich automatisieren: Viele Aspekte von Performance-, Sicherheits- und Kompatibilitätstests können automatisiert werden, was häufigeres Testen mit weniger manuellen Aufwand ermöglicht.
  • In produktionsähnlichen Umgebungen testen: Stelle sicher, dass deine Testumgebungen der Produktion in Bezug auf Datenvolumen, Netzwerkkonfiguration und Infrastruktur ähneln.
  • Baselines etablieren: Erstelle Basismessungen für Schlüsselmetriken, damit du Performance-Verschlechterungen oder -Verbesserungen im Laufe der Zeit identifizieren kannst.
  • Mit CI/CD integrieren: Integriere automatisierte nicht-funktionale Tests in deine Continuous-Integration-Pipeline, um Probleme früh zu erkennen.
  • Cloud-Ressourcen nutzen: Verwende cloudbasierte Testing-Plattformen, um realistische Last- und Traffic-Muster zu simulieren, ohne teure Testinfrastruktur unterhalten zu müssen.
  • Mit realen Nutzer-Datenmustern testen: Basiere deine Performance-Testszenarien auf tatsächlichem Nutzerverhalten anstatt auf theoretischen Nutzungsmustern.
  • Ergebnisse dokumentieren und verfolgen: Führe eine Historie von nicht-funktionalen Testergebnissen, um Trends zu identifizieren und Verbesserungen im Laufe der Zeit zu demonstrieren.
  • Nicht-funktionales Testen in Definition of Done einschließen: Mache das Bestehen nicht-funktionaler Tests zu einer Voraussetzung für den Abschluss von Arbeiten, nicht zu einer optionalen Ergänzung.

Indem du nicht-funktionales Testen zu einem erstklassigen Bestandteil deines Entwicklungsprozesses machst, vermeidest du die übliche Falle, Performance, Sicherheit und Usability als Nachgedanken zu behandeln.

Fazit

Nicht-funktionales Testen steht vielleicht nicht so oft im Rampenlicht wie sein funktionales Pendant, aber es macht den Unterschied zwischen guter und großartiger Software aus. Während funktionales Testen bestätigt, dass deine Anwendung tut, was sie soll, stellt nicht-funktionales Testen sicher, dass sie es gut tut – effizient, sicher und auf eine Weise, die Nutzer wirklich genießen.

Da digitale Erfahrungen sich weiterentwickeln, waren die Nutzererwartungen an Performance, Sicherheit und Benutzerfreundlichkeit nie höher. Organisationen, die nicht-funktionales Testen als Kernbestandteil ihres Entwicklungsprozesses behandeln – und nicht als optionale Ergänzung – werden überlegene Produkte liefern, die sich in überfüllten Märkten abheben.

Auf dieser Seite:
Sehen Sie mehr
Beschleunigen Sie Ihre Releases x2 mit aqua
Gratis starten
step
FAQ
Was ist ein Beispiel für nicht-funktionales Testen?

Performance-Testing ist ein klassisches Beispiel für nicht-funktionales Testen. Es misst, wie schnell deine Anwendung unter verschiedenen Bedingungen reagiert – wie ein Test, wie eine E-Commerce-Seite 10.000 gleichzeitige Nutzer während eines Flash-Sales bewältigt. Andere Beispiele umfassen Security-Testing zur Identifikation von Schwachstellen, Usability-Testing zur Bewertung der User Experience und Compatibility-Testing, um sicherzustellen, dass deine App auf verschiedenen Browsern und Geräten funktioniert.

Was ist funktionales versus nicht-funktionales Testen?

Funktionales Testen verifiziert, was das System tut – es überprüft, ob Features gemäß den Spezifikationen funktionieren. Zum Beispiel bestätigt es, dass ein Klick auf „In den Warenkorb“ tatsächlich Produkte zum Warenkorb hinzufügt. Nicht-funktionales Testen untersucht, wie gut das System diese Funktionen ausführt – es testet Aspekte wie Geschwindigkeit, Sicherheit und Benutzerfreundlichkeit. Es beantwortet Fragen wie: „Wie schnell erscheint der Artikel im Warenkorb?“ und „Kann das System 1.000 Nutzer bewältigen, die gleichzeitig Artikel hinzufügen?“

Ist API-Testing nicht-funktional?

API-Testing kann sowohl funktional als auch nicht-funktional sein. Funktionales API-Testing verifiziert, dass APIs für gegebene Eingaben die korrekten Antworten zurückgeben. Nicht-funktionales API-Testing untersucht Qualitäten wie Antwortzeit, Durchsatzkapazität, Fehlerbehandlung und Sicherheit. Zum Beispiel ist das Testen, wie viele API-Aufrufe pro Sekunde dein System bewältigen kann, bevor die Performance nachlässt, nicht-funktionales API-Testing.

Ist UAT nicht-funktionales Testen?

User Acceptance Testing (UAT) konzentriert sich primär auf funktionales Testen – die Validierung, dass das System die Geschäftsanforderungen aus Endnutzersicht erfüllt. UAT kann jedoch einige nicht-funktionale Aspekte umfassen, wenn Nutzer Benutzerfreundlichkeit, Performance unter normalen Bedingungen und allgemeine Zufriedenheit mit dem System bewerten. Generell geht spezialisiertes nicht-funktionales Testen jedoch über das hinaus, was typischerweise in UAT abgedeckt wird.

Was sind Beispiele für nicht-funktionales Testen?

Beispiele für nicht-funktionales Testen umfassen:

  • Performance-Testing (Last-, Stress-, Ausdauertests)
  • Security-Testing (Schwachstellenscans, Penetrationstests)
  • Usability-Testing (Bewertung der User Experience)
  • Compatibility-Testing (Cross-Browser-, Cross-Device-Tests)
  • Reliability-Testing (Failover-, Recovery-Tests)
  • Scalability-Testing (Kapazitätsbewertung)
  • Accessibility-Testing (Einhaltung von Zugänglichkeitsstandards) Jeder Typ untersucht verschiedene Qualitäten des Systems jenseits der Basisfunktionalität.
Was ist eine Nicht-Funktion mit Beispiel?

Eine nicht-funktionale Anforderung beschreibt, wie sich ein System verhalten sollte, nicht was es tun sollte. Zum Beispiel könnte eine funktionale Anforderung sein „Nutzer können ihr Passwort zurücksetzen“, während zugehörige nicht-funktionale Anforderungen wären „Passwort-Reset-E-Mails müssen innerhalb von 30 Sekunden zugestellt werden“ (Performance) und „Passwörter müssen mit bcrypt-Hashing gespeichert werden“ (Sicherheit).

Was ist funktional und nicht-funktional im QA?

Im QA verifiziert funktionales Testen, dass Features korrekt gemäß den Spezifikationen funktionieren – wie die Überprüfung, ob eine Suchfunktion relevante Ergebnisse liefert. Nicht-funktionales Testen bewertet Qualitätsattribute wie Performance, Zuverlässigkeit und Sicherheit – wie die Messung, wie schnell Suchergebnisse erscheinen oder wie sich die Suchfunktion unter hoher Last verhält. Beide sind essenziell für umfassende Qualitätssicherung.

Was sind die vier Arten von nicht-funktionalen Anforderungen?

Obwohl es viele Arten nicht-funktionaler Anforderungen gibt, sind vier grundlegende Kategorien:

  • Performance-Anforderungen (Geschwindigkeit, Effizienz, Ressourcennutzung)
  • Sicherheitsanforderungen (Datenschutz, Authentifizierung, Autorisierung)
  • Usability-Anforderungen (Benutzeroberfläche, Zugänglichkeit, Nutzererfahrung)
  • Zuverlässigkeitsanforderungen (Verfügbarkeit, Fehlertoleranz, Wiederherstellbarkeit) Diese Kategorien bilden die Grundlage umfassender nicht-funktionaler Teststrategien.
Welches der folgenden ist nicht-funktionales Testen?

Load-Testing ist ein klassisches Beispiel für nicht-funktionales Testen. Es bewertet, wie das System unter erwarteten Lastbedingungen performt, indem es mehrere Nutzer simuliert, die gleichzeitig auf die Anwendung zugreifen. Andere nicht-funktionale Testtypen umfassen Stress-Testing, Security-Testing, Usability-Testing und Compatibility-Testing – alle untersuchen Qualitäten jenseits der Basisfunktionalität.