Preface
Quality is indispensable in every aspect of our lives, and software systems are no different. Throughout my career in software quality (spanning more than 15 years), I have constantly perceived the increasing appetite for achieving greater quality as part of the software development processes. As software applications grow more complex, the quality processes and tools around them have to keep up with all the intricacies. Finding problems in their products early helps organizations move faster and contributes to positive business outcomes.
Test automation is at the core of most of the quality endeavors within the software development life cycle. Test automation engineering is the process of enhancing the quality of software applications through automated tests. If test automation practices are correctly baked into the product development life cycle from the commencement of a project, it enables an invaluable feedback loop resulting in tremendous quality improvements. Test automation also reduces testing time, which allows resources to be used on other worthwhile efforts. Automation-first is the new norm across all software testing activities.
Testing is not a standalone activity and is viewed as an integral part of the software development process. Embedded quality teams have become the new normal, and hence communication and collaboration are key to the success of any test automation undertaking. There has been a paradigm shift in the way software developers view test automation and in how testers regard their own roles.
I will introduce you to various aspects of test automation in this book through simple definitions and practical examples. I will also review the different quality roles in the market and the skills it takes to be successful in each. The testing world is evolving at a great speed, and this book will help you solidify your fundamentals in test automation so that you can keep up with further progress in the field. Due to the cross-functional nature of the quality engineering discipline, it is necessary now more than ever to bridge the gap in test automation skills across software engineering and DevOps disciplines. This book will act as an excellent ally in filling this gap by helping you learn the multiple facets of test automation. I will provide relevant examples and guide you through various commonly used test automation frameworks in the industry.