Testing: The process of executing a system with the intent of finding defects including Test planning prior to the execution of the test cases.

Quality Control: A set of activities designed to evaluate a developed working Product.

Quality Assurance: A set of activities designed to ensure that the development and/or maintenance process is adequate to ensure a system will meet its objectives.

The key difference to remember is that QA is interested in the process whereas testing and quality control are interested in the product. Having a testing component in your development process demonstrates a higher degree of quality (as in QA).