Test automation
According to Wikipedia (http://en.wikipedia.org/wiki/Test_automation);
Test automation is the use of software to control the execution of tests, the comparison of actual outcomes to predicted outcomes, the setting up of test preconditions, and other test control and test reporting functions.
We do not want to stress the fact that manual execution of tests is an exhausting, time consuming, and tedious process. In modern agile projects, the separation between independent Quality Assurance teams and development teams has become too narrowed. Quality is not the sole responsibility of a separate QA team. Everyone in a project equally owns the quality of the deliverables and contributes to the testing process. Therefore, Quality Assurance is no longer an independent or isolated activity, which used to happen at the final phases of a product release. Instead, more rigorous and agile testing processes are becoming popular among software development teams. One of the reasons for adopting...