“In preparing for battle I have always found that plans are useless, but planning is indispensable.” – Dwight D. Eisenhower
This seems like one of the most obvious parts for testing in QA. After all, it’s our artifact in Agile and the testing process. Believe it or not, I still see this fundamental lost in testing teams. Why is that? Why do we need test plan anyways?
What is a test plan?
You can look at test plans in two lights. In the first light, they are a list of tests to be done for a release. This still is usually your Smoke Test or your Regression Test. Your smoke test should be formal and consistent for each build or release. This means it should also be short. Your regression test is the longer test plan and should be more dynamic. The regression test plan can be divided into core and feature sections. The Core section runs every time and Feature is modified for what was developed or changed in the release.
The second light that you can view a test plan is documentation. Within this topic you can see it in different hues, be it training materials, preparation for automation, or testing artifacts that related to your release. This documentation is important for the team and company.
Training Materials: One great way to help ramp up new team members for testing, development, or product is to show them how you test the product. Test cases show the steps and expected outcomes to those steps. While this could be tedious, they are powerful ways of communicating within the Scrum teams (development, test, and product/business) and time should be spent on creating them.
Testing Artifacts: A test artifact show what was tested prior to code being released. Most often this is the test plan with results. Like tickets and builds in your CI server, test plans are an artifact in Continuous Delivery and Scrum speak.
Preparation for Automation: When it comes time to developing automation, you want to have something ready to be automated. Using the test cases and plans that you have already created. Your automation team will thank you.
Testing is important and so is documentation. Remember, you wouldn’t want to develop or test a complex feature without knowing the requirements. Why would you want to hide the complex testing you did by not having a test plan?