IMO, if you are a beginner and want to learn TDD and BDD, this may not be the best project to start with.
TDD and BDD work great when working with objects. The farther you are from objects, the more difficult it becomes, because you are dealing with external dependencies that are painful to test. A good example is both database files and Excel. While it is quite simple to create an instance of the test object, set it to a known state and check its state after some operations, the same is difficult with, say, a database: you need to either use a real database, configure its state, and write additional code to check its status (this is more an integration approach), or use Mocks, which may not be the easiest way to get started.
My advice to start with would be to focus on parts of your application that deal exclusively with objects. In this context, NUnit and Mocking, such as Moq, are pretty much sufficient.
Mathias
source share