— 1 min read
On Friday I gave you a very quick intro on how you could increase your test coverage and confidence for an application that has no tests. You can consider this the quick and dirty approach that works, when you have little time and just want to start somewhere.
Perhaps you should start at an earlier point. A proper way to start the journey to testing software is the state the question
Why do we test software?
The answer to this question is rather long. For any given project, the objectives of testing may include:
There are many ways that a software project can have defects. Exhaustive testing can help in reducing the risk that any of the many possible defects leads to a failure in production. Without tests you can only hope that nothing serious happens. Experience in writing software is not enough to guard you against introducing errors into your software. You wouldn't need to write automated tests for all these bullet points above. Testing can be done manually, through peer-review or other means as well.
To make sure that you covered the important parts and reduced the risk for defects effectively you need test management. Test management isn't everything in your
/tests directory. Linking issues in your project management tool to a risk assessment list, verifying that important documents and decisions were reviewed (or tested) and documenting all the work that goes into reducing the number of defects; This can be called test management.
But there is more to it. We will get to this later.