How can I get started using TDD to code some simple functionality?
- by Gabriel
I basically have the gist of TDD. I'm sold that it's useful and I've got a reasonable command of the MSTEST framework. However, to date I have not been able to graduate to using it as a primary development method. Mostly, I use it as a surrogate for writing console apps as test drivers (my traditional approach).
The most useful thing about it for me is the way it absorbs the role of regression testing.
I have not yet built anything yet that specifically isolates various testable behaviors, which is another big part of the picture I know.
So this question is to ask for pointers on what the first test(s) I might write for the following development task: I want to produce code that encapsulates task execution in the fashion of producer/consumer.
I stopped and decided to write this question after I wrote this code (wondering if I could actually use TDD for real this time)
Code:
interface ITask
{
Guid TaskId { get; }
bool IsComplete { get; }
bool IsFailed { get; }
bool IsRunning { get; }
}
interface ITaskContainer
{
Guid AddTask(ICommand action);
}
interface ICommand
{
string CommandName { get; }
Dictionary<string, object> Parameters { get; }
void Execute();
}