Behavior Driven Development (BDD) einfach erklärt + Beispiel


Wie der Name es schon sagt, orientiert sich Behavior Driven Development an dem Verhalten, das die jeweilige Software zeigen soll. Dank der sogenannten ubiquitären Sprache – was so viel bedeutet wie „allgemein verwendete Sprache“ – können auch Laien bestimmte Verhaltensbeschreibungen erstellen. Die ubiquitäre Sprache stammt aus dem Domain Driven Design (DDD), das sich genau wie das BDD auf die Anwendungsdomäne konzentriert. Beide Ansätzen berücksichtigen alle beteiligten Bereiche bei der Software-Erstellung und verbinden diese unabhängig von Frameworks, Programmiersprachen oder Tools miteinander. Durch die Verwendung einer einheitlichen Sprache ist genau dies möglich.

Trotz allem kommt auch das Behavior Driven Development nicht ganz ohne Tools und Frameworks aus. Denn damit die von Ihnen definierten Testfälle auch in einen ausführbaren Code übersetzt werden können, müssen Sie sich an ein paar Regeln halten. Beschreibungen im BDD werden zum Beispiel nicht im freien Fließtext verfasst. Mithilfe von BDD-Tools wie JBehave, Cucumber oder Behat folgen Sie einer festgelegten Struktur, die eine korrekte Implementierung ermöglicht. Der Umgang mit diesen Tools ist deutlich einfacher als das Erlernen einer klassischen Programmiersprache. Hier erfahren Sie, welcher hierarchischen Struktur Sie beim Behavior Driven Development normalerweise folgen:

  • Führen Sie zunächst eine Anforderungsanalyse durch, bei der Sie die Aufgaben, Ziele und Funktionalitäten der Software genau definieren. Stellen Sie sich oder Ihrem Kunden also die Frage, was die Software alles können soll.
  • Nachdem Sie alle Funktionalitäten identifiziert haben, werden diese in Form von vordefinierten Szenarien beschrieben. Versuchen Sie, dabei an alle möglichen Situationen zu denken, in denen die Software mit einer bestimmten Antwort reagieren soll.
  • Im nächsten Schritt halten Sie die erwartete Antwort für jedes Szenario im „Angenommen-Wenn-Dann“-Schema fest. „Angenommen“ beschreibt die Software vor dem Test, „Wenn“ die Aktion während des Tests und „Dann“ den Zustand der Software nach dem Test.

Je nachdem, welches BDD-Tool Sie verwenden, kann das Vokabular leicht variieren. Statt „Angenommen“ akzeptieren manche Tools auch Formulierungen wie „Gegeben sei“. Solche Werkzeuge sind übrigens für die gängigsten Programmiersprachen wie Java, JavaScript, Python oder Ruby erhältlich.



Source link

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.