Software testing is the process of evaluating a software item to detect differences between functional or non-functional requirements and actual functionality. Testing assesses the quality of the product; it requires planning, monitoring, design and execution. Usage of automated testing helps to achieve high quality and efficiency while shortening the time needed for test execution. In this course, you will learn software testing fundamentals, but the last part of the training is devoted to practical test automation implementation for the demo project.