A test plan is an overall collection of test requirements and test suites that, in total, comprises the testing strategy for a project or application.
A test requirement provides specific criteria for validating that a feature has been implemented correctly. A test requirement may be associated with any number of test cases.
A test suite is a collection of test cases related to a specific test plan. A test suite may include any number of test cases.
A test case is a specific series of steps to be completed by a tester to validate functionality.
Any number of test cases can belong to a test suite or test requirement.
A test run represents the completion of the steps in a test plan.
A test step is a specific instruction to a tester who is working on completing a test run.
A defect is a functional problem discovered during testing and reported back to the Development organization.