Skip to main content

TDD

  • Requirements of a development is divided into short test cases
  • THen each case is made to solve separately.
  • This is more like creating unit tests fisrt and then making the tests success to finish a target

BDD

  • Similar to TDD but in more bigger scope.
  • Here the behaviour of the entire system is tested instead of each function one by one
  • Example is the cucumber tests
Scenario: Creating a user

When: I create a user
Then: I expect user to exist
And: User can see his info

DDD (Domain driven developemnet)

  • All the names of class/modules should match what the domain is about.
  • For example if you are making a payment system class could be VoidPayment/CapturePayment