How do I go from this idea to my first test? How much should be decided before I start, and how much do I figure out after I start writing tests?
How do I go from this idea to my first test? How much should be decided before I start, and how much do I figure out after I start writing tests?
Break your application down into bite-sized stories. ("As a user, I want to double click on an icon and launch the program." Or "As a user, I want to open my browser and go to the program." Whatever.)
Then break-down the story into some tasks. (e.g. Create a project in Eclipse, set-up a code repository) When you get to a coding task, write your first test.
When do I make decisions like whether to store data in a text file or a database?
When do I make decisions like whether to store data in a text file or a database?
If you're unsure, pick which ever one seems simpler and do that. (probably the text file) If you realize you've made a mistake, refactor. If your tests are well structured, you should be able to make the back end change and catch unintended side effects that crop up.