No matter how obvious it is, I can’t stress enough how important requirements are to any software development project and how having good requirements is vital to testing.

Software requirements are conditions or constraints that the software system must comply with, usually broken down into functional and non-functional requirements. In this chapter I’ll deal with software requirements from a testing perspective.