Test automation is the process of using software to control the execution of tests by using verifications to compare the actual outcomes of the execution with the expected outcomes.
A test automation framework is an integrated system that sets the rules of automation of a specific product. This system integrates the tests, the test data sources, the object details, and various reusable modules. These components need to be assembled to represent a business process. The framework provides the basis of test automation and simplifies the automation effort.