Why test ?
There are a few reasons why you need to design and write out your test cases:
Tracking your test coverage:
Let’s consider your system under test as a Disneyland park, which you want to explore. Of course, you can just buy tickets and explore the park as you wish. While it’s fun to do that, there are great chances that you will miss interesting places. In this case, all you need is a map of the park. Similar in your project, you need a map to know what you need to test, what you have tested, what you don’t need to test.
Let’s say you can brainstorm 100 test cases to test your system, but you don’t write them out. You memorize them. Unless you are a genius, there’s no way to remember all these test cases and things entailed such input data, step to perform the test, where to look at the result, what’s expected. If you have a written test cases, you don’t have to rely on your memory to do this test to maintain consistency.
Now you are the only tester in the project. What if your manager added another tester in your project and your manager wanted him to perform the same test as you did. What you simply need to do is to give him your well-written test cases and he can follow these exact tests to perform the test. It’s as simple as that.
Easy to automate:
Also, if you are planning to do automated test in your project, these detailed test cases are perfect inputs for your test automation.