I am currently building a test plan for the system I am working on.  The plan is 5,000 lines long and about 10 years old.  The structure is like this:1. test title   precondition: some W needs to be set up, X needs to be completed   action: do some Y   postcondition: message saying Z is displayed2. ...What is this type of testing called ?  Is it useful ?  It isn't automated.. the tests would have to be handed to some unlucky person to run through and then the results would have to be given to development.  It doesn't seem efficient.  Is it worth modernising this method of testing (removing tests for removed features, updating tests where different postconditions happen, ...) or would a whole different approach be more appropriate ?  We plan to start unit tests but the software requires so much work to actually get 'units' to test - there are no units at present !  Thank you.
Resurrecting a 5,000 line test plan that is a decade old
testing;unit testing
From what you write, it looks like a list of test cases for manual integration testing / GUI testing. It might not be efficient, but any tests are better than no tests and any plan is better than no plan, so you might as well start with what you have.Certainly you would need to review the plan and update it to cover changes made to the software over time. Obviously having obsolete test cases for nonexistant functionality would be counterproductive.Keep in mind that even though this test plan was written with manual testing in mind, you might as well automate the process. Research automated testing tools available for your project/platform. If it's a web application, look into Selenium. There are solutions for desktop applications too, but I'm not familiar with any to make a suggestion. Even though it may be a time consuming task, automating these tests, you may find it easier then introducing unit tests. You may also find it useful to have these automated tests when you get around to refactoring the project, as you can use them to validate your changes while you're adding the unit tests.