Wir verwenden Cookies und Dienste von Drittanbietern, die Informationen auf dem Endgerät unserer Besucher speichern oder abrufen. Diese Daten werden verarbeitet und genutzt, um unsere Website zu optimieren und kontinuierlich zu verbessern. Für die Speicherung, den Abruf und die Verarbeitung dieser Daten benötigen wir Ihre Zustimmung. Sie können Ihre Zustimmung jederzeit widerrufen, indem Sie auf einen Link im unteren Bereich unserer Website klicken. Datenschutzrichtlinie
Einstellungen für die Zustimmung anpassen
Wir verwenden Cookies, damit Sie effizient navigieren und bestimmte Funktionen ausführen können. Detaillierte Informationen zu allen Cookies finden Sie unten unter jeder Einwilligungskategorie.
Die als „notwendig" kategorisierten Cookies werden in Ihrem Browser gespeichert, da sie für die Aktivierung der grundlegenden Funktionalitäten der Website unerlässlich sind....
Immer aktiv
Notwendige Cookies sind für die Grundfunktionen der Website von entscheidender Bedeutung. Ohne sie kann die Website nicht in der vorgesehenen Weise funktionieren.Diese Cookies speichern keine personenbezogenen Daten.
Cookie
gf_email_otp_seed_3
Dauer
2 Stunden
Beschreibung
Description is currently not available.
Cookie
gf_email_otp_seed_12
Dauer
2 Stunden
Beschreibung
Description is currently not available.
Cookie
gf_email_otp_seed_6
Dauer
2 Stunden
Beschreibung
Description is currently not available.
Cookie
gf_email_otp_seed_1
Dauer
2 Stunden
Beschreibung
Description is currently not available.
Cookie
gf_email_otp_seed_4
Dauer
2 Stunden
Beschreibung
Description is currently not available.
Cookie
gf_email_otp_seed_10
Dauer
2 Stunden
Beschreibung
Description is currently not available.
Cookie
gf_email_otp_seed_5
Dauer
2 Stunden
Beschreibung
Description is currently not available.
Cookie
VISITOR_PRIVACY_METADATA
Dauer
6 Monate
Beschreibung
YouTube sets this cookie to store the user's cookie consent state for the current domain.
Cookie
GAESA
Dauer
1 Monat
Beschreibung
Description is currently not available.
Cookie
aquaSessionId2
Dauer
2 Tage
Beschreibung
Description is currently not available.
Cookie
aquaXAuthId2
Dauer
2 Tage
Beschreibung
Description is currently not available.
Cookie
rc::a
Dauer
Läuft nie ab
Beschreibung
This cookie is set by the Google recaptcha service to identify bots to protect the website against malicious spam attacks.
Cookie
rc::c
Dauer
Sitzung
Beschreibung
This cookie is set by the Google recaptcha service to identify bots to protect the website against malicious spam attacks.
Cookie
__Secure-ENID
Dauer
1 Jahr 1 Monat
Beschreibung
The __Secure-ENID cookie is a type of secure cookie used for authentication and to ensure the security of user sessions.
Cookie
LS_CSRF_TOKEN
Dauer
Sitzung
Beschreibung
Cloudflare sets this cookie to track users’ activities across multiple websites. It expires once the browser is closed.
Cookie
zalb_*
Dauer
Sitzung
Beschreibung
Zoho sets this cookie for load balancing and session stickiness. It ensures that user requests are consistently directed to the same server during a session, helping maintain session integrity and improving website performance.
Cookie
GCLB
Dauer
Sitzung
Beschreibung
This cookie is known as Google Cloud Load Balancer set by the provider Google. This cookie is used for external HTTPS load balancing of the cloud infrastructure with Google.
Cookie
cookieyes-*
Dauer
1 Jahr
Beschreibung
CookieYes sets this cookie for consent solution management.
Cookie
__cf_bm
Dauer
1 Stunde
Beschreibung
Cloudflare setzt das Cookie, um Cloudflare Bot Management zu unterstützen.
Funktionale Cookies unterstützen bei der Ausführung bestimmter Funktionen, z. B. beim Teilen des Inhalts der Website auf Social Media-Plattformen, beim Sammeln von Feedbacks und anderen Funktionen von Drittanbietern.
Cookie
VISITOR_INFO1_LIVE
Dauer
6 Monate
Beschreibung
YouTube setzt dieses Cookie, um die Bandbreite zu messen und festzustellen, ob der Nutzer die neue oder die alte Player-Schnittstelle erhält.
Cookie
ytidb::LAST_RESULT_ENTRY_KEY
Dauer
Läuft nie ab
Beschreibung
The cookie ytidb::LAST_RESULT_ENTRY_KEY is used by YouTube to store the last search result entry that was clicked by the user. This information is used to improve the user experience by providing more relevant search results in the future.
Cookie
__session
Dauer
1 Jahr 1 Monat 4 Tage
Beschreibung
GitBook sets this cookie for logging in.
Cookie
uesign
Dauer
1 Monat
Beschreibung
Zoho sets this cookie for the Visitor Live Chat.
Cookie
_tldtest_*
Dauer
Sitzung
Beschreibung
Amplitude sets this cookie to determine the highest-level domain where cookies can be set. Deleted after testing.
Cookie
lidc
Dauer
1 Tag
Beschreibung
LinkedIn setzt das lidc-Cookie, um die Auswahl des Rechenzentrums zu erleichtern.
Cookie
li_gc
Dauer
6 Monate
Beschreibung
Linkedin setzt dieses Cookie, um die Zustimmung des Besuchers zur Verwendung von Cookies für nicht wesentliche Zwecke zu speichern.
Analyse-Cookies werden verwendet um zu verstehen, wie Besucher mit der Website interagieren. Diese Cookies dienen zu Aussagen über die Anzahl der Besucher, Absprungrate, Herkunft der Besucher usw.
Cookie
gf_visitor_source
Dauer
7 Tage
Beschreibung
Description is currently not available.
Cookie
gf_visitor_medium
Dauer
7 Tage
Beschreibung
Description is currently not available.
Cookie
gf_visitor_campaign
Dauer
7 Tage
Beschreibung
Description is currently not available.
Cookie
gf_visitor_content
Dauer
7 Tage
Beschreibung
Description is currently not available.
Cookie
gf_visitor_term
Dauer
7 Tage
Beschreibung
Description is currently not available.
Cookie
gf_visitor_location
Dauer
7 Tage
Beschreibung
Description is currently not available.
Cookie
ga_session_duration
Dauer
1 Stunde
Beschreibung
Description is currently not available.
Cookie
_ga_*
Dauer
1 Jahr 1 Monat 4 Tage
Beschreibung
Google Analytics sets this cookie to store and count page views.
Cookie
_ga
Dauer
1 Jahr 1 Monat 4 Tage
Beschreibung
Google Analytics setzt dieses Cookie, um Besucher-, Sitzungs- und Kampagnendaten zu berechnen und die Nutzung der Website für den Analysebericht der Website zu verfolgen. Das Cookie speichert Informationen anonym und weist eine zufällig generierte Nummer zu, um einzelne Besucher zu erkennen.
Cookie
amp_*
Dauer
1 Jahr
Beschreibung
Amplitude sets this cookie for session tracking for analytics purposes.
Cookie
YSC
Dauer
Sitzung
Beschreibung
Youtube setzt dieses Cookie, um die Aufrufe von eingebetteten Videos auf Youtube-Seiten zu verfolgen.
Cookie
amplitude_device_id
Dauer
Sitzung
Beschreibung
No description available.
Cookie
loom_anon_comment
Dauer
1 Jahr
Beschreibung
No description available.
Cookie
loom_referral_video
Dauer
Sitzung
Beschreibung
Description is currently not available.
Cookie
__Host-psifi.analyticsTrace
Dauer
6 Stunden
Beschreibung
Description is currently not available.
Cookie
__Host-psifi.analyticsTraceV2
Dauer
6 Stunden
Beschreibung
Description is currently not available.
Cookie
_cs_id
Dauer
1 Jahr 1 Monat
Beschreibung
This cookie is used to store the ContentSquare's user identifier ID. This is a persistent cookie and expires after 13 months.
Cookie
_cs_s
Dauer
1 Stunde
Beschreibung
This cookie is used to store the number of page's viewed by a visitor within the session for ContentSquare's solution.
Cookie
ai_session
Dauer
1 Stunde
Beschreibung
This is a unique anonymous session identifier cookie set by Microsoft Application Insights software to gather statistical usage and telemetry data for apps built on the Azure cloud platform.
Cookie
_hjSessionUser_*
Dauer
1 Jahr
Beschreibung
Hotjar sets this cookie to ensure data from subsequent visits to the same site is attributed to the same user ID, which persists in the Hotjar User ID, which is unique to that site.
Cookie
_hjSession_*
Dauer
1 Stunde
Beschreibung
Hotjar sets this cookie to ensure data from subsequent visits to the same site is attributed to the same user ID, which persists in the Hotjar User ID, which is unique to that site.
Cookie
ajs_anonymous_id
Dauer
1 Jahr
Beschreibung
This cookie is set by Segment to count the number of people who visit a certain site by tracking if they have visited before.
Cookie
_cs_c
Dauer
1 Jahr 1 Monat
Beschreibung
The cookie is used by Content Square to save the user consent to be tracked.
Cookie
utm_medium
Dauer
7 Tage
Beschreibung
This cookie is used to record from where the visitor came to the website orginally. This information is used by the website operator to know the efficiency of their marketing.
Cookie
utm_source
Dauer
7 Tage
Beschreibung
This cookie is used to record from where the visitor came to the website orginally. This information is used by the website operator to know the efficiency of their marketing.
Cookie
utm_campaign
Dauer
7 Tage
Beschreibung
Google Ad Services sets this cookie to store session campaign value if present.
Cookie
utm_content
Dauer
7 Tage
Beschreibung
This cookie is used for storing the session content value if present.
Cookie
utm_term
Dauer
7 Tage
Beschreibung
This cookie is used to record from where the visitor came to the website orginally. This information is used by the website operator to know the efficiency of their marketing.
Cookie
amp_cookie_test*
Dauer
Sitzung
Beschreibung
Amplitude sets this cookie to test if cookies are enabled in the user’s browser. It is used during SDK initialisation and is automatically removed after the check.
Cookie
utsdb
Dauer
Sitzung
Beschreibung
Zoho SalesIQ sets this cookie to register data on visitor's website behaviour.
Leistungs-Cookies werden verwendet, um die wichtigsten Leistungsindizes der Website zu verstehen und zu analysieren. Dies trägt dazu bei, den Besuchern ein besseres Nutzererlebnis zu bieten.
Cookie
_uetsid
Dauer
1 Tag
Beschreibung
Bing Ads setzt dieses Cookie, um mit einem Nutzer in Kontakt zu treten, der zuvor die Website besucht hat.
Cookie
_uetvid
Dauer
1 Jahr 24 Tage
Beschreibung
Bing Ads setzt dieses Cookie, um mit einem Nutzer in Kontakt zu treten, der die Website bereits besucht hat.
Werbe-Cookies werden verwendet, um Besuchern auf der Grundlage der von ihnen zuvor besuchten Seiten maßgeschneiderte Werbung zu liefern und die Wirksamkeit von Werbekampagne nzu analysieren.
Cookie
_gcl_au
Dauer
3 Monate
Beschreibung
Google Tag Manager setzt das Cookie, um die Werbeeffizienz von Websites zu testen, die seine Dienste nutzen.
Cookie
__Secure-ROLLOUT_TOKEN
Dauer
6 Monate
Beschreibung
YouTube sets this cookie to manage feature rollout and experimentation. It helps Google control which new features or interface changes are shown to users as part of testing and staged rollouts, ensuring consistent experience for a given user during an experiment.
Cookie
__Secure-YEC
Dauer
vergangene
Beschreibung
Description is currently not available.
Cookie
__Secure-YNID
Dauer
6 Monate
Beschreibung
YouTube cookie used to protect user security and prevent fraud, especially during the login process.
Cookie
test_cookie
Dauer
15 Minuten
Beschreibung
doubleclick.net setzt dieses Cookie, um festzustellen, ob der Browser des Nutzers Cookies unterstützt.
Cookie
MUID
Dauer
1 Jahr 24 Tage
Beschreibung
Bing setzt dieses Cookie, um einzelne Webbrowser zu erkennen, die Microsoft-Seiten besuchen. Dieses Cookie wird für Werbung, Website-Analysen und andere Vorgänge verwendet.
Cookie
ai_user
Dauer
1 Jahr
Beschreibung
Microsoft Azure sets this cookie as a unique user identifier cookie, enabling counting of the number of users accessing the application over time.
Cookie
NID
Dauer
6 Monate
Beschreibung
Google setzt das Cookie zu Werbezwecken, um die Anzahl der Anzeigen zu begrenzen, um unerwünschte Anzeigen stummzuschalten und um die Wirksamkeit von Anzeigen zu messen.
Cookie
__Host-GAPS
Dauer
2 Jahre
Beschreibung
This cookie allows the website to identify a user and provide enhanced functionality and personalisation.
Cookie
bcookie
Dauer
1 Jahr
Beschreibung
LinkedIn setzt dieses Cookie von LinkedIn-Share-Buttons und Anzeigen-Tags, um Browser-IDs zu erkennen.
Cookie
IDE
Dauer
1 Jahr 24 Tage 1 Minute
Beschreibung
„Google DoubleClick IDE“-Cookies speichern Informationen darüber, wie der Nutzer die Website nutzt, um ihm dem Nutzerprofil entsprechende Anzeigen zu präsentieren.
Cookie
guest_id_marketing
Dauer
1 Jahr 1 Monat 4 Tage
Beschreibung
Twitter sets this cookie to identify and track the website visitor.
Cookie
guest_id_ads
Dauer
1 Jahr 1 Monat 4 Tage
Beschreibung
Twitter sets this cookie to identify and track the website visitor.
Cookie
personalization_id
Dauer
1 Jahr 1 Monat 4 Tage
Beschreibung
Twitter sets this cookie to integrate and share features for social media and also store information about how the user uses the website, for tracking and targeting.
Cookie
guest_id
Dauer
1 Jahr 1 Monat 4 Tage
Beschreibung
Twitter sets this cookie to identify and track the website visitor. It registers if a user is signed in to the Twitter platform and collects information about ad preferences.
Andere nicht kategorisierte Cookies sind solche, die analysiert werden und noch nicht in eine Kategorie eingestuft wurden.
Cookie
_cs_root-domain
Dauer
Sitzung
Beschreibung
Description is currently not available.
Cookie
aquacloudio-_zldp
Dauer
1 Jahr 1 Monat 4 Tage
Beschreibung
Description is currently not available.
Cookie
aquacloudio-_zldt
Dauer
1 Jahr 1 Monat 4 Tage
Beschreibung
Description is currently not available.
Cookie
amplitude_testaqua-cloud.io
Dauer
1 Jahr
Beschreibung
Description is currently not available.
X
🤖 Neue spannende Updates sind jetzt für die aqua-Intelligenz verfügbar! 🎉
Verhaltensgesteuerte Entwicklung (BDD): Bedeutung, Prozess, Beispiele und beste Tools
Beinahe jedes Softwareprojekt umfasst sowohl technische als auch nicht-technische Personen. Wenn jedoch das Projekt komplexer wird, kann dies zu Missverständnissen und Kommunikationsproblemen zwischen diesen beiden Gruppen führen. Dies kann zu fehlerhaften Ergebnissen führen, und noch schlimmer, Ihr Team wird ohne ein gemeinsames Verständnis arbeiten. Wie gehen Sie mit diesem Chaos um? Hier kommt die verhaltensgesteuerte Entwicklung (BDD) ins Spiel. Aber wie kann ein einzelner Ansatz Ihr gesamtes Entwicklungs- und Testframework verändern? Lassen Sie es uns gemeinsam herausfinden.
BDD beschreibt Software-Verhalten in klaren, geschäftsorientierten Szenarien, damit technische und nicht-technische Teammitglieder von Anfang an auf demselben Stand sind.
Das Format „Given-When-Then“ (Gherkin-Syntax) macht Szenarien zu lebendiger Dokumentation, die Ihr Team lesen, validieren und automatisieren kann.
Der sechsstufige BDD-Prozess reicht von der Identifikation von User Stories bis zur kontinuierlichen Verfeinerung der Szenarien im Team.
BDD eignet sich am besten für komplexe Projekte mit hohem Kollaborationsbedarf. Bei engeren Deadlines und einfacherem Scope kann TDD die bessere Wahl sein.
Tools wie aqua cloud bringen KI-gestützte Szenariogenerierung, lückenlose Nachverfolgbarkeit und Automatisierungsintegrationen für BDD im Team-Maßstab.
BDD entfaltet seinen vollen Nutzen, wenn Ihr Team es als gemeinsame Sprache versteht, nicht nur als Testmethode. Das sind die wichtigsten Punkte. 👇
Was ist verhaltensgesteuerte Entwicklung?
Verhaltensgesteuerte Entwicklung (BDD), auch „Specification by Example“ genannt, ist ein kollaborativer Ansatz zur Definition des Software-Verhaltens anhand klarer, geschäftsorientierter Szenarien, die alle Stakeholder lesen und bestätigen können. Diese Methodik zielt darauf ab, das Verhalten der Software in verständlichen, geschäftlich orientierten Szenarien zu definieren, die für alle verständlich sind. Das Hauptziel der BDD ist es, ein gemeinsames Verständnis zwischen technischen und nichttechnischen Teammitgliedern zu schaffen. BDD ist Teil der agilen Methoden im Software Testing, daher kann man ohne diesen Ansatz nicht sicher sagen, dass man „agil“ ist. Kurz gesagt, BDD bietet drei Hauptvorteile:
Verbesserte Kommunikation: Durch die Nutzung klarer, verständlicher Szenarien können alle Teammitglieder – unabhängig von ihrem technischen Hintergrund – das beabsichtigte Verhalten der Software verstehen.
Bessere Ausrichtung: BDD sorgt dafür, dass alle Beteiligten auf das gleiche Ziel hinarbeiten, indem es ein gemeinsames Verständnis der Anforderungen und des Verhaltens der Software fördert.
Erweiterte Testabdeckung: Da die Szenarien gleichzeitig als Testfälle dienen, wird sichergestellt, dass alle Aspekte des gewünschten Verhaltens der Software abgedeckt werden.
Im Rahmen der BDD stößt man häufig auf die Gherkin-Sprache, ein strukturiertes Format zum Schreiben dieser Szenarien, das für alle Beteiligten verständlich ist. Die Syntax von Gherkin kombiniert einfache englische Sprache mit Schlüsselwörtern wie „Given“, „When“ und „Then“, was es zugänglich und präzise für die Beschreibung des Softwareverhaltens macht. Diese Standardisierung fördert eine bessere Kommunikation und Zusammenarbeit, wodurch das Hauptziel der BDD – ein gemeinsames Verständnis zwischen technischen und nichttechnischen Personen – erreicht wird.
Warum ist die verhaltensgesteuerte Entwicklung in agilen Projekten so entscheidend? Im nächsten Abschnitt werden wir das genauer untersuchen.
Warum ist BDD wichtig?
Wie bereits erwähnt, ist ein häufiger Vorteil der Anwendung der verhaltensgestörten Entwicklung (BDD) im Testen die verbesserte Kommunikation. Laut berichteten 90 % der Teams, die BDD eingeführt haben, von einer besseren Kommunikation unter den Teammitgliedern. Dies ist der oberflächliche Vorteil, während die nächsten Vorteile spezifischer sind:
Besseres Verständnis der Anforderungen: Da BDD klare Szenarien im Voraus definiert, hilft es Ihrem Team, von Anfang an klare Anforderungen festzulegen. Dies führt zu einem besseren Verständnis dieser Anforderungen, was für die nächsten Entwicklungsphasen entscheidend ist.
Erweiterte Testabdeckung: Da BDD die Erstellung von Szenarien betont, die das Verhalten der Benutzer widerspiegeln, führt es auch zu einer besseren Testabdeckung.
Frühere Fehlererkennung: Durch dieser Ansatz spart Zeit und Ressourcen, indem er größere Probleme später in der Entwicklung minimiert.
Lebendige Dokumentation: BDD-Szenarien und -Tests dienen als lebendige Dokumentation, die sich mit Ihrem Projekt weiterentwickelt. Dies stellt sicher, dass die Dokumentation immer aktuell ist und den aktuellen Zustand der Anwendung genau widerspiegelt.
Diese Vorteile der verhaltensgesteuerten Entwicklung klingen vielversprechend, aber wie sieht die praktische Anwendung aus? Lassen Sie uns ein Beispiel für verhaltensgesteuerte Entwicklung durch ein Szenario betrachten.
Der Prozess der verhaltensgesteuerten Entwicklung (BDD)
BDD folgt einem sechsstufigen Zyklus, der jeden Sprint an gemeinsamem, überprüfbarem Verhalten ausrichtet, auf das sich Ihr Team geeinigt hat. Um die Vorteile der Verhaltensgesteuerten Entwicklung vollständig auszuschöpfen, sollten Sie zunächst die Theorie verstehen. Lassen Sie uns die erforderlichen Schritte durchgehen:
Benutzerstories identifizieren: Arbeiten Sie mit den Stakeholdern zusammen, um Benutzerstories zu identifizieren, die beschreiben, was der Benutzer erreichen möchte.
Szenarien definieren: Definieren Sie für jede Benutzerstory klare Szenarien im Format „Given-When-Then“. Diese Szenarien beschreiben die spezifischen Verhaltensweisen, die vom System erwartet werden. Sie finden weiter unten ein Beispiel, wie das funktioniert.
Automatisierte Tests schreiben: Wandeln Sie die Szenarien in automatisierte Tests um. Diese Tests werden den Entwicklungsprozess leiten und sicherstellen, dass die Funktionalität die spezifizierten Verhaltensweisen erfüllt.ie frühzeitige Definition von Verhaltensweisen und die Einbeziehung der Stakeholder hilft BDD, potenzielle Probleme früher zu identifizieren. D
Code implementieren: Entwickler schreiben den minimalen Code, der erforderlich ist, um die Tests bestehen zu lassen. Dies stellt sicher, dass der Code direkt die erwarteten Verhaltensweisen unterstützt.
Tests ausführen und refaktorisieren: Führen Sie die automatisierten Tests kontinuierlich während der Entwicklung aus. Refaktorisieren Sie den Code nach Bedarf, um die Qualität zu verbessern, während alle Tests weiterhin bestehen.
Überprüfen und verfeinern: Überprüfen Sie regelmäßig die Szenarien und Tests mit dem gesamten Team. Verfeinern Sie sie nach Bedarf, um sicherzustellen, dass sie genau und relevant bleiben.
Diese Schritte helfen dabei, den Entwicklungsprozess auf spezifisches Verhalten auszurichten, das den Erwartungen der Benutzer entspricht, und fördern eine bessere Zusammenarbeit und ein gemeinsames Verständnis im Team.
Beispiel für verhaltensgesteuerte Entwicklung Fallstudie
Stellen Sie sich vor, Sie sind ein QA-Professional in einem Software-Entwicklungsteam, das eine Online-Shopping-Plattform entwickelt. Ihr Team umfasst Entwickler, Tester und Geschäftsinteressierte. Um sicherzustellen, dass alle auf derselben Seite sind, entscheiden Sie sich, verhaltensgesteuerte Entwicklung (Behavior-Driven Development, BDD) zu verwenden.
Szenario: Implementierung einer Warenkorb-Funktion
Ihr Product Owner arbeitet an einer Warenkorb-Funktion und bespricht die Einzelheiten mit dem Team. Sie beginnen mit der Diskussion über die Warenkorb-Funktion. Der Product Owner skizziert ein einfaches Szenario:
„Als Kunde möchte ich Artikel zu meinem Warenkorb hinzufügen, damit ich sie später kaufen kann.“
Zusammen zerlegen Sie dies in spezifische Verhaltensweisen und einigen sich auf ein konkretes Beispiel:
Gegeben sei, dass der Kunde einen Artikel ausgewählt hat,
Wenn der Kunde auf die Schaltfläche „In den Warenkorb“ klickt,
Dann sollte der Artikel im Warenkorb erscheinen.
Mit diesem klaren Szenario beginnen die Entwickler, Code zur Implementierung der Funktion zu schreiben. Sie erstellen automatisierte Tests basierend auf dem gegebenen Szenario. Diese Tests stellen sicher, dass der Artikel korrekt zum Warenkorb hinzugefügt wird.
Sie überprüfen das Szenario und die Tests. Durch das Ausführen der Tests verifizieren Sie, dass das Verhalten den erwarteten Ergebnissen entspricht. Da das Szenario in einfacher Sprache geschrieben ist, verstehen die Geschäftsinteressierten es leicht und bestätigen, dass es ihren Anforderungen entspricht.
Während des gesamten Entwicklungsprozesses beziehen Sie sich kontinuierlich auf das Szenario. Es fungiert als lebendes Dokument, das Ihre Arbeit leitet und sicherstellt, dass alle aufeinander abgestimmt sind.
Dieses Behaviour Driven Development Beispiel zeigt, wie ein einziges gut formuliertes Szenario Ihr Team ausrichtet, bevor eine einzige Zeile Code geschrieben wird. Automatisierte Tests verifizieren das Ergebnis. Die Stakeholder bestätigen die Anforderungen ohne technische Erklärung. Das Feature wird mit weniger Nacharbeit und weniger Missverständnissen geliefert.
Wie kann eine Testmanagement-Lösung wie aqua cloud bei BDD helfen?
Ein QA-Management-Tool wie aqua cloud kann den Prozess der verhaltensgesteuerten Entwicklung (BDD) erheblich optimieren und verbessern. So können die einzigartigen Funktionen helfen:
KI-gestützter Co-Pilot: Der KI-gestützte Co-Pilot in aqua cloud unterstützt beim Schreiben und Verfeinern von BDD-Szenarien und Testfällen. Er bietet intelligente Vorschläge und Verbesserungen, um sicherzustellen, dass Ihre Szenarien klar und umfassend sind. Diese Funktion verbessert die Zusammenarbeit zwischen technischen und nicht-technischen Teammitgliedern und erleichtert die Definition und das Verständnis von Verhaltensweisen.
100% Nachverfolgbarkeit: aqua cloud bietet vollständige Nachverfolgbarkeit, indem es User Stories, Szenarien, Testfälle und Defekte verknüpft. Dies stellt sicher, dass jedes Verhalten, das in Ihren BDD-Szenarien definiert ist, durch den gesamten Entwicklungslebenszyklus nachvollzogen werden kann, von den Anforderungen bis zur Veröffentlichung. Es hilft, klare Sichtbarkeit und Verantwortung zu gewährleisten und sicherzustellen, dass nichts übersehen wird.
Automatisierungs-Integrationen: Die robusten Integrationsmöglichkeiten von aqua cloud mit verschiedenen Automatisierungstools wie Ranorex und Selenium ermöglichen es Ihnen, Ihre BDD-Szenarien nahtlos zu automatisieren. Automatisierte Tests, die aus Ihren Given-When-Then-Szenarien abgeleitet sind, können leicht in aqua verwaltet und ausgeführt werden, um sicherzustellen, dass Ihr Entwicklungsprozess effizient und konsistent ist.
Bug-Reporting Partner Capture: Die Integration von aqua cloud mit Capture vereinfacht die Fehlerberichterstattung und -verwaltung. Während Sie Ihre BDD-Szenarien und -Tests ausführen, ermöglicht Ihnen Capture, Probleme schnell zu dokumentieren und zu melden. So können Sie Defekte umgehend identifizieren und beheben und die Integrität Ihres BDD-Prozesses aufrechterhalten.
Worauf warten Sie noch? Mit deutscher Qualität und einem sorgfältigen Prozess wie der Softwaretestung bietet aqua das ultimative Erlebnis. Um Ihre Testbemühungen mit BDD-Praktiken in Einklang zu bringen, werden Sie die einzigartigen Funktionen von aqua genießen, während wir Ihnen unsere 20-jährige Markterfahrung bieten. Nutzen Sie die volle Kraft der KI in Ihren Testbemühungen, identifizieren und verfolgen Sie Fehler und stellen Sie Ihrem Team eine Plattform zur Verfügung, die sicherstellt, dass alle auf derselben Seite sind.
Nutzen Sie ein KI-gestütztes QA-Management-Tool, um BDD-Praktiken zu 100 % zu verfolgen
Herausforderungen der verhaltensgesteuerten Entwicklung (BDD)
Trotz seiner Vorteile zeigt eine einfache Google-Suche Kommentare in sozialen Medien wie diesen über BDD:
Ich hasse BDD. Ich weiß nicht, ich habe das Gefühl, dass ich mehr Zeit damit verbringe, herauszufinden, was/wie ich BDD schreiben soll, als die Tests tatsächlich auszuführen. Wer hat sich das ausgedacht?
Mahdy1991
Posted in einem Quality Assurance Reddit-Thread vor 10 Monaten.
Neben dieser häufigen Frustration stellt BDD auch Herausforderungen wie die folgenden:
Zeitaufwändige anfängliche Einrichtung: Die Definition klarer Szenarien und Verhaltensweisen erfordert erheblichen Voraufwand und Zusammenarbeit.
Komplexität bei großen Projekten: Die Verwaltung und Pflege zahlreicher BDD-Szenarien kann komplex werden, insbesondere bei großen Projekten mit vielen Funktionen.
Schwierigkeit beim Schreiben guter Szenarien: Gut definierte, eindeutige Szenarien zu erstellen, die Benutzerverhalten genau erfassen, kann herausfordernd sein und erfordert Geschick.
Bedarf an kontinuierlicher Zusammenarbeit: BDD ist stark auf kontinuierliche Zusammenarbeit zwischen Entwicklern, Testern und Geschäftsinteressierten angewiesen, was schwierig aufrechtzuerhalten sein kann.
Overhead bei der Pflege lebender Dokumentation: Das Aktualisieren der BDD-Szenarien und der zugehörigen Tests, während sich das Projekt entwickelt, erfordert fortlaufenden Aufwand und kann ressourcenintensiv sein.
Widerstand gegen Veränderungen: Teams, die an traditionelle Entwicklungsprozesse gewöhnt sind, könnten sich gegen die Einführung von BDD-Praktiken sträuben, was zu Reibungen und langsamer Adoption führen kann.
Welches Fazit können wir daraus ziehen? BDD glänzt in kollaborativen Umgebungen mit komplexen Anforderungen, während einfachere Projekte mit knappen Deadlines eher von traditionellen Ansätzen wie TDD profitieren könnten.
Anstatt diese Entscheidung auf Vermutungen zu stützen und bevor wir zum Thema „BDD implementieren“ übergehen, nutzen wir Ihre tatsächlichen Projektdaten und prüfen, ob dieser Ansatz gut zu Ihnen passt. Das interaktive Tool unten analysiert Ihre Teamgröße, Komplexität, Zeitplan und Zusammenarbeitsanforderungen, um zu empfehlen, ob BDD oder TDD die bessere Wahl ist. Klicken Sie, um es zu öffnen, und erhalten Sie Ihre personalisierte Bewertung in 2 Minuten!
🎯 BDD vs TDD: Finden Sie Ihren perfekten Ansatz (Zum Öffnen klicken)
Interaktives Tool zur Bestimmung des besten Ansatzes für Ihr Projekt
▼
📊 Erzählen Sie uns von Ihrem Projekt:
EinfachMittelKomplex
1-34-89+
EntspanntMittelKnapp
MinimalRegelmäßigIntensiv
🎯 Empfehlung für Ihr Projekt:
Behaviour-Driven Development
73%
✓ Fachbereichsvertreter können BDD-Szenarien verstehen
Test-Driven Development
55%
✓ Einfache Projekte kommen mit TDDs direktem Ansatz schneller voran ✓ Kleine Teams können sich effektiv mit TDD koordinieren ✓ Knappe Deadlines begünstigen TDDs schnellere Implementierung
📈 Detaillierte Faktorenanalyse:
Wie man BDD in Ihrer Organisation implementiert
Wie oben erwähnt, gibt es verschiedene Szenarien, in denen Sie BDD implementieren können. Lassen Sie uns zwei der häufigsten betrachten:
Szenario 1: Komplexes Projekt mit hohem Bedarf an Zusammenarbeit
In diesem Szenario arbeitet Ihre Organisation an einem komplexen Softwareprojekt mit häufigen Änderungen der Anforderungen. Sie haben mehrere Teams – Entwicklung, Testing und Geschäftsinteressierte –, die in Einklang bleiben müssen.
Empfehlungen:
Beginnen Sie mit Schulungen: Bieten Sie Ihrem Team BDD-Schulungen an, um sicherzustellen, dass alle verstehen, wie man BDD-Szenarien effektiv schreibt und verwendet.
Definieren Sie klare User Stories: Arbeiten Sie eng mit den Stakeholdern zusammen, um detaillierte User Stories und Szenarien im Given-When-Then-Format zu erstellen.
Integrieren Sie Werkzeuge: Verwenden Sie BDD-kompatible Werkzeuge, um Tests zu automatisieren und Szenarien effizient zu verwalten. Werkzeuge wie aqua cloud können Automatisierung und Nachverfolgbarkeit unterstützen.
Fördern Sie Zusammenarbeit: Etablieren Sie regelmäßige Meetings, um Szenarien zu überprüfen und die Abstimmung aller Teams sicherzustellen.
Szenario 2: Einfaches Projekt mit engem Zeitrahmen
In diesem Szenario entwickelt Ihre Organisation eine einfache Anwendung mit einem engen Zeitrahmen und einem kleinen Team. Es ist nur minimale Zusammenarbeit zwischen verschiedenen Rollen erforderlich.
Empfehlungen:
Bedarf prüfen: Überlegen Sie, ob die Vorteile von BDD die anfängliche Einrichtungszeit und Komplexität für ein einfaches Projekt rechtfertigen. Traditionelle Testmethoden könnten ausreichen.
Inkrementellen Ansatz verwenden: Wenn BDD gewünscht ist, beginnen Sie mit einem kleinen, überschaubaren Teil des Projekts, um die Nutzung zu testen. Dies hilft, die Effektivität zu bewerten, ohne umfangreiche Ressourcen zu binden.
Prozesse vereinfachen: Halten Sie BDD-Szenarien einfach und fokussiert. Vermeiden Sie es, den Prozess unnötig zu komplizieren, um Fristen einzuhalten.
Durch die Anpassung Ihres Ansatzes an die Komplexität und die Bedürfnisse Ihres Projekts können Sie BDD effektiv dort implementieren, wo es den größten Wert bietet, und bei Bedarf alternative Methoden wählen.
Verhaltensgesteuerte Entwicklung (BDD) vs. Testgetriebene Entwicklung (TDD)
TDD und BDD werden oft miteinander verknüpft oder sogar vermischt, da beide darauf abzielen, die Softwarequalität durch Tests zu verbessern. Zum Beispiel kann TDD die Anzahl der Produktionsfehler um 40 % bis 80 % reduzieren, und wie oben erwähnt, hilft BDD ebenfalls, Fehler schneller und effizienter zu identifizieren. Trotz ihrer Ähnlichkeiten gibt es deutliche Unterschiede zwischen TDD und BDD:
Fokus:
TDD: Betont das Schreiben von Tests basierend auf der Funktionalität des Codes.
BDD: Konzentriert sich auf Verhaltensweisen und Benutzeranforderungen und stellt sicher, dass diese mit den Geschäftszielen übereinstimmen.
Testschreiben:
TDD: Tests werden vor dem Code geschrieben, um die Implementierung spezifischer Funktionen zu validieren.
BDD: Tests werden in einem natürlichen Sprachformat (Given-When-Then) geschrieben, um Verhalten und Benutzerinteraktionen zu beschreiben.
Zusammenarbeit:
TDD: Bezieht hauptsächlich Entwickler in den Testprozess ein.
BDD: Fördert die Zusammenarbeit zwischen Entwicklern, Testern und Geschäftsinteressierten, um sicherzustellen, dass alle Perspektiven berücksichtigt werden.
Dokumentation:
TDD: Testfälle sind oft technischer und weniger zugänglich für Nicht-Entwickler.
BDD: Test-Szenarien werden auf eine Weise geschrieben, die von nicht-technischen Stakeholdern leicht verständlich ist, und bieten eine klarere Dokumentation der Anforderungen.
Umfang:
TDD: Konzentriert sich auf die Korrektheit des Codes auf granularer Ebene (Unit-Tests).
BDD: Betrachtet das gesamte Verhalten und die Funktionalität des Systems aus einer höheren Perspektive (Integrations- und Akzeptanztests).
Hier ist eine detaillierte Vergleichstabelle von TDD vs. BDD, die Sie in wenigen Sekunden durchsehen können:
Aspekt
TDD
BDD
Fokus
Code-Funktionalität
Benutzerverhalten und Anforderungen
Testschreiben
Technisch, basierend auf spezifischen Funktionen
Natürliche Sprache, die Verhaltensweisen beschreibt (Gegeben-Wann-Dann)
Zusammenarbeit
Hauptsächlich Entwickler
Entwickler, Tester und Geschäftsinteressenten
Dokumentation
Technisch, weniger zugänglich für Nicht-Entwickler
Klar und verständlich für nicht-technische Interessenten
Umfang
Granular (Unit-Tests)
Höheres Niveau (Integrations- und Abnahmetests)
Beste Werkzeuge für die verhaltensgesteuerte Entwicklung (BDD)
Hier ist eine Liste der besten Werkzeuge für die verhaltensgesteuerte Entwicklung (BDD):
aqua cloud: aqua bietet umfassende Nachverfolgbarkeit, indem es die Beziehungen zwischen Anforderungen, Testfällen und Szenarien verfolgt und so die Ausrichtung während des gesamten Entwicklungsprozesses sicherstellt. Es hilft, den Umfang von BDD-Szenarien zu verwalten, indem es Abhängigkeiten und Hierarchien visualisiert. Der KI-gestützte Copilot unterstützt bei der Erstellung und Aktualisierung von Testfällen, wodurch die benötigte Zeit erheblich reduziert und eine umfassende Abdeckung sichergestellt wird. Darüber hinaus optimieren die automatisierungsintegrierten Testmanagement-Funktionen von aqua cloud die Ausführung und Verwaltung von BDD-Szenarien. Die anpassbaren Optionen zur Organisation und Priorisierung von Szenarien ermöglichen eine effiziente Ausführungsreihenfolge und Abhängigkeitsverwaltung.
Neben diesen Funktionen bietet aqua auch ein blitzschnelles Testfallmanagement, bei dem Fälle nur durch Sprach- oder Textaufforderungen in wenigen Sekunden erstellt werden. Die Integration mit Capture bietet die nahtloseste Erfahrung im Bug-Reporting. Als Testmanagementlösung bietet aqua ein zentrales Dashboard, das Ihnen hilft, alle Ihre Testaktivitäten für einen bestimmten Zeitraum zu sehen. Da BDD ein Teil der agilen Praktiken ist, werden Sie sich auch für aquas Agile-Management-Praktiken interessieren, bei denen Sie Testfälle zum Backlog hinzufügen und in Ihre Sprints einführen können. Insgesamt hilft aqua nicht nur bei Ihren Testbemühungen, sondern zielt darauf ab, Ihnen den gesamten Aufwand des Testens abzunehmen. Sind Sie bereit für diese Transformation?
Optimieren Sie nicht nur BDD, sondern 200 % Ihrer Testbemühungen
Cucumber: Cucumber allows you to write BDD scenarios in natural language (Gherkin), making them easy to understand and share among team members. It integrates with various testing frameworks for execution.
SpecFlow: SpecFlow is a .NET tool that enables writing and executing BDD scenarios in Gherkin syntax, integrating with NUnit and MSTest.
JBehave: JBehave is a Java BDD framework that uses narrative styles to describe behaviour. It supports writing and executing scenarios and integrates with various testing and development tools.
Behat: Behat is a PHP BDD framework for writing scenarios in a human-readable format and testing them against applications. It integrates well with other PHP testing tools.
DE Der KI-Copilot von aqua cloud hält Ihre Szenarien organisiert, nachverfolgbar und fehlerfrei.
Die Qualität Ihrer BDD-Szenarien entscheidet darüber, ob der gesamte Prozess Mehrwert bringt oder nur Aufwand erzeugt. Diese Prinzipien halten Ihre Szenarien klar und wartbar.
Ein Verhalten pro Szenario. Jedes Szenario sollte genau ein Ergebnis abdecken. Wenn Ihr When-Schritt ein „und“ benötigt, teilen Sie es in zwei separate Szenarien auf.
Aus Benutzersicht schreiben. Verwenden Sie die Fachsprache, die Ihre Stakeholder im Alltag nutzen, keine technischen Begriffe oder Implementierungsdetails.
Given-Schritte schlank halten. Fügen Sie nur den Kontext hinzu, der für das Szenario zwingend notwendig ist. Unnötige Vorbedingungen machen Szenarien fragil und aufwendig zu pflegen.
In Business-Szenarien auf UI-Sprache verzichten. „Wenn der Benutzer auf den blauen Button klickt“ koppelt das Szenario an eine bestimmte Oberfläche. Besser beschreiben, was der Benutzer erreichen will: „Wenn der Benutzer einen Artikel in den Warenkorb legt.“
Ergebnisse konkret und prüfbar formulieren. „Dann funktioniert das System korrekt“ sagt Ihrem Team nichts. Schreiben Sie etwas Testbares, wie „Dann aktualisiert sich der Warenkorbgesamtbetrag auf 49,99 €.“
Vor der Automatisierung mit Nicht-Entwicklern validieren. Wenn ein Stakeholder in Ihrem Team das Szenario nicht lesen und bestätigen kann, muss es überarbeitet werden.
Häufige BDD-Fehler und Anti-Patterns
Die meisten BDD-Probleme entstehen früh und folgen vorhersehbaren Mustern. Wer sie früh erkennt, erspart seinem Team, sechs Monate später die halbe Szenario-Bibliothek neu zu schreiben.
1. BDD als Test-Tool behandeln.
Ihr Team schreibt Gherkin-Dateien, überspringt die kollaborativen Gespräche und wundert sich, warum Stakeholder Anforderungen immer noch falsch verstehen. Der Wert von BDD entsteht in der Diskussion, die das Szenario erzeugt, nicht in der Datei selbst. Lösung: Machen Sie Szenario-Writing-Sessions zu einem festen Schritt vor dem Start der Entwicklung. Beziehen Sie mindestens einen nicht-technischen Stakeholder in jede Session ein.
„Gegeben sei, dass die API einen 200-Response zurückgibt“ ist ein verdeckter Unit-Test. BDD-Szenarien beschreiben, was der Benutzer erlebt, nicht was das System intern tut. Lösung: Prüfen Sie jedes Szenario: Würde ein Nicht-Entwickler es ohne Erklärung verstehen? Falls nicht, schreiben Sie es in klarer Geschäftssprache neu.
3. Die Szenario-Bibliothek unkontrolliert wachsen lassen.
Ohne regelmäßige Pflege entstehen Hunderte überlappender oder veralteter Szenarien. CI-Pipelines werden langsamer, neue Teammitglieder finden sich nicht mehr zurecht. Lösung: Legen Sie einen regelmäßigen Review-Rhythmus fest, z.B. einmal pro Quartal, um Szenarien zu entfernen, die das aktuelle Verhalten nicht mehr abbilden.
4. Inkonsistentes Vokabular im Team.
Wenn ein Szenario „Benutzer“ schreibt, ein anderes „Kunde“ und ein drittes „Käufer“, verliert Ihr Team die gemeinsame Sprache, auf die BDD angewiesen ist. Lösung: Pflegen Sie ein kurzes Glossar vereinbarter Begriffe und überprüfen Sie es bei Szenario-Reviews. Halten Sie es in Ihrer gemeinsamen Dokumentation fest.
5. Automatisieren, bevor sich das Team abgestimmt hat.
Wer ein Szenario automatisiert, bevor Stakeholder es bestätigt haben, verankert falsches Verhalten im Test-Suite. Die spätere Korrektur kostet mehr Zeit als die Freigabe im Voraus. Lösung: Behandeln Sie die Freigabe durch Stakeholder als Voraussetzung für die Automatisierung. Eine kurze schriftliche Bestätigung im Ticket oder Dokument reicht aus.
Abschließende Worte
In diesem Leitfaden haben Sie gelernt, dass BDD die Zusammenarbeit verbessert und sicherstellt, dass Software den Erwartungen der Nutzer entspricht, indem der Fokus auf klare, verhaltensbasierte Szenarien gelegt wird. Tools wie aqua cloud machen die Umsetzung von BDD effizienter durch Funktionen wie umfassende Rückverfolgbarkeit, KI-gestützte Testfallgenerierung und ein optimiertes Testmanagement. Während BDD vor allem in der Verbesserung der Kommunikation und Abdeckung überzeugt, ist es wichtig zu evaluieren, ob es die beste Wahl für die Anforderungen Ihres Projekts ist – oder ob ein strukturierterer Ansatz wie Test-Driven Development (TDD) besser geeignet wäre. Letztendlich hat jedes Softwareprojekt seinen eigenen Weg, um das gewünschte Ergebnis zu erreichen – die Entscheidung liegt bei Ihnen.
Verhaltensgesteuerte Entwicklung (BDD) ist ein kollaborativer Ansatz, der das Verhalten von Software durch in einfacher Sprache verfasste Szenarien definiert.
Was sind die Schritte in der verhaltensgesteuerten Entwicklung?
Die Schritte in BDD umfassen die Definition der Anforderungen, das Identifizieren von Testfällen, das Erkennen von Lücken, das Erstellen von Test-Szenarien und das Verknüpfen dieser mit den Anforderungen.
Was ist die BDD-Methodik?
Die BDD-Methodik konzentriert sich auf klare Kommunikation und Ausrichtung mit den Geschäftszielen durch Szenarien und natürliche Sprache.
Wie schreibt man BDD-Szenarien?
Agile, verhaltensgesteuerte Entwicklungsszenarien werden im Given-When-Then-Format geschrieben, um Voraussetzungen, Aktionen und erwartete Ergebnisse zu beschreiben.
Was ist besser: TDD oder BDD?
Ob TDD oder BDD besser ist, hängt von den Projektanforderungen ab. TDD konzentriert sich auf die Korrektheit des Codes, während BDD Verhalten und Zusammenarbeit mit Stakeholdern betont.
Wie detailliert sollten BDD-Szenarien sein?
Detailliert genug, um beobachtbares Verhalten klar zu beschreiben, aber nicht so spezifisch, dass Implementierungsdetails einfließen. Angestrebt werden 3 bis 5 Schritte pro Szenario in klarer Geschäftssprache. Ein Stakeholder in Ihrem Team sollte es in unter 30 Sekunden lesen und bestätigen können.
Kann BDD ohne Testautomatisierung verwendet werden?
Ja, und in frühen Projektphasen sollte es das oft. Der Kernwert von BDD ist das gemeinsame Verständnis, das Ihr Team durch das gemeinsame Schreiben von Szenarien aufbaut. Automatisierung steigert die Effizienz mit der Zeit, aber manuell validierte Szenarien sind weiterhin sinnvoll, besonders in der Entdeckungs- oder explorativen Testphase.
Was sind die häufigsten Fehler bei der Einführung von BDD?
Die häufigsten Probleme sind: die kollaborativen Gespräche überspringen und direkt Gherkin schreiben, technische Sprache verwenden, die Stakeholder ausschließt, und die Szenario-Bibliothek ohne Pflege wachsen lassen. Alle drei führen zum selben Ergebnis: Szenarien, denen Ihr Team nicht mehr vertraut.
Stefan ist ein Unternehmer, der fest an die Technologie glaubt. Mit seinem Unternehmen, der andagon Group, unterstützt er seit 2001 Unternehmen auf der ganzen Welt bei der Entwicklung besserer Software durch ihre Qualitätssicherungsdienste und -produkte.
Chief Operating Officer bei aqua, ehemaliger Tester
Als ehemaliger Qualitätssicherungs-Automatisierungsingenieur ist Kirill sehr neugierig darauf, wie Systeme funktionieren und wie sie zerschlagen werden können. Diesen Ansatz behielt er bei, als er in das Produktmanagement und später in die Geschäftsleitung von aqua wechselte. Sein größtes Interesse gilt der Automatisierung und allem, was damit…
Nurlan, ein QA-Koordinator, ist stolz darauf, nahtlose QA-Operationen zu orchestrieren. Seine Expertise in der Koordination von QA-zentrierten Projekten und der Integration von QA-Lösungen hat konsequent höchste Kundenzufriedenheit erzielt. Neben seiner Vollzeittätigkeit als QA-Koordinator beinhaltet Nurlans Rolle das Erstellen von überzeugenden Inhalten, die Nutzer über die…
Beginnen Sie Ihre Arbeit nicht mit gewöhnlichen E-Mails: Fügen Sie eine gesunde Dosis an aufschlussreichen Softwaretest-Tipps von unseren QS-Experten hinzu.
Home » Bewährte Methoden » Verhaltensgesteuerte Entwicklung (BDD): Bedeutung, Prozess, Beispiele und beste Tools
Lieben Sie das Testen genauso wie wir?
Werden Sie Teil unserer Community von begeisterten Experten! Erhalten Sie neue Beiträge aus dem aqua-Blog direkt in Ihre Inbox. QS-Trends, Übersichten über Diskussionen in der Community, aufschlussreiche Tipps — Sie werden es lieben!
Wir sind dem Schutz Ihrer Privatsphäre verpflichtet. Aqua verwendet die von Ihnen zur Verfügung gestellten Informationen, um Sie über unsere relevanten Inhalte, Produkte und Dienstleistungen zu informieren. Diese Mitteilungen können Sie jederzeit wieder abbestellen. Weitere Informationen finden Sie in unserer Datenschutzrichtlinie.