Ich kann nicht zwischen TDD und BDD unterscheiden. Kann jemand ein einfaches Beispiel geben, um den Unterschied im Javascript-Kontext mit Jasmin zu illustrieren?Unterschied zwischen TDD und BDD in Javascript-Kontext
Antwort
TDD
Das bedeutet, die Tests zu schreiben, bevor Sie die Software zu entwickeln, so dass die Software die Tests passen (Rot-Grün Refactoring). In der Regel werden vor dem Erstellen der Software Schreibgerätentests durchgeführt.
BDD
Es geht nicht um Tests. Es geht um Gespräche.
Das Entwicklungsteam wird mit dem Unternehmen über die Anforderungen sprechen und genügend Informationen gewinnen, um Szenarien schreiben zu können, die die Entwicklung der Software besser auf die tatsächlichen Geschäftsanforderungen abstimmen. (Ob dies ein Word-Dokument oder ein Test ist, spielt keine Rolle).
Die erstellten Szenarien sollten für das Unternehmen, das Entwicklungsteam und alle anderen verständlich sein, wobei die Sprache verwendet wird, auf die beide sich einigen.
BDD und TDD können sich ergänzen
Ich entschuldige mich für kein Beispiel in Jasmine geben, aber ich kann Ihnen sagen, dass Tools wie Cucumber Ihnen auf dem Weg helfen wird, in einem BDD Stil in schriftlicher Form, und sie kann sich mit Jasmine integrieren, um ein Business-verständliches Front-End und ein für Entwickler verständliches Backend zu machen.
TDD (Testgetriebene Entwicklung) Prozessstart mit Entwicklungstest für jedes Feature. TDD-Prozess muss einen Schritt folgen. Diese Schritte werden einfach fortgesetzt, solange der Entwickler mehr Funktionen zum Hinzufügen hat.
- einen Test schreiben
- Run Tests
- Umgestalten
- Tests hinzufügen
- Tests
Codebeispiel für TDD ausfallen Siehe
suite('testName', function() {
setup(function() {
//create object (if need only)
});
test('should Return Name', function(){
//test function
});
BDD (verhaltensgesteuerte Entwicklung) Kann fast wie ein Satz gelesen werden und konzentriert sich mehr auf die Features.
Codebeispiel für BDD
describe("send Name", function(){
it("should Return Name",function(){
expect(sendName()).toEqual('ABC');
});
})
TDD vs BDD
Es gibt einige Probleme sind während TDD Vorformen
- Wo starten
- wie viel brauchen
- verstehen zu prüfen, warum Test
Lösung für oben genannten Probleme nicht ist BDD
TDD beschreiben, wie System funktioniert.
BDD Beschreibung wie Endbenutzer das System verwenden.
- 1. BDD/TDD vs JAD?
- 2. QUnit Vs. Jasmine und TDD Vs. BDD
- 3. Hilfe für TDD/BDD mit RSpec erstellen
- 4. Ist BDD ein Ersatz für TDD?
- 5. So testen Sie einen UIViewController - TDD/BDD
- 6. Statistik der positiven Auswirkungen von TDD/BDD
- 7. Was ist der Hauptunterschied zwischen Integrationstests und Verhaltenstests BDD
- 8. TDD/BDD Rails Gurken-/RSpec-Duplizierung
- 9. BDD/TDD Mocking Daten die knifflige Art und Weise
- 10. BDD Und Unit Testing
- 11. Wie man das Ergebnis einer Aktion in BDD/TDD formuliert
- 12. Gute Quelle zum Lernen BDD, TDD (Ruby, C#, Javascript)
- 13. Unterschied zwischen `% in%` und `==`
- 14. TDD mit Capybara (Schienen); Unterschied zwischen page.should und expect (page) .to?
- 15. BDD und Microservices
- 16. BDD und Funktionstests
- 17. Unterschied zwischen $ @ und $! in Perl
- 18. Unterschied zwischen [] und [,,] in Python
- 19. Unterschied zwischen '.' und "." in Java
- 20. Unterschied zwischen $ {} und $() in Bash
- 21. Unterschied zwischen und „-“ in r
- 22. Unterschied zwischen .. und ... in Ruby
- 23. Unterschied zwischen `! == undefined` und` in`
- 24. Unterschied zwischen "" und "" in Python
- 25. Unterschied zwischen = + und + = in Java?
- 26. Unterschied zwischen // und /// in C#
- 27. Unterschied zwischen. und #
- 28. Unterschied zwischen {!! !!} und {{}}
- 29. MySQL: Unterschied zwischen ', `,' und '
- 30. C++ Unterschied zwischen '//' und '///'
Scheint '/TDD/.test ('BDD')' macht die Arbeit. ; -0 – RobG