About This BookAchieving high-quality test automation that brings value- you need to understand core programming concepts such as SOLID and the usage of design patterns. After you master them, the usual career transition is into more architecture roles, such as choosing the best possible approaches for solving particular test automation challenges. You will get an access to more than 20000+ lines of real-world code examples.Who This Book Is ForThe book is NOT a getting started guide! If you don't have any prior programming experience in writing automated tests through WebDriver, I suggest you to first start with some book about basic programming and basic WebDriver usage. I believe it might be invaluable for the readers that have a couple of years of experience and whose job is to create/maintain test automation frameworks, or to write high-quality reliable automated tests.The book is written in C#. However, I think that you can use the approaches and practices in every OOP language. If you have a Java background (or similar), you will get everything you need, don't worry.Even if you don't get all the concepts from the first read, try to use and incorporate some of them, later you can return and reread them. I believe with the accumulation of experience using high-quality practices- you will become a hard-core test automation ninja!What You Will Learn
Learn how to optimize and stabilize your flaky tests.Learn how to handle asnynchronious web pages in your tests. Automatically deal with AJAX and jQuery.Improve Test Readability, Maintainability, Reusability, Extensibility by incorporating 10+ design Page Object Model, Facade, Decorator, Observer, Strategy, Singleton, Fluent Interface, Template Method, Abstract Factory, Factory Method, Repository, Lazy Load.Learn what are the SOLID principles and how they can improve your test code. We will also discuss other essential programming principles such as composition, DRY, KISS and others.Learn how to asses and choose the best possible design for your framework or library.Learn how the benchmarking your code can help you to speed up your tests.Learn how to design and build your framework to handle test data and different test environments.Learn about high quality code practices and naming convention so that your code get much more understandable.
CTO and Co-founder of Automate The Planet Ltd, inventor of BELLATRIX Test Automation Framework, author of "Design Patterns for High-Quality Automated Tests: High-Quality Test Attributes and Best Practices" in C# and Java. Nowadays, he directs a team of passionate engineers helping companies succeed with their test automation. Additionally, he consults companies, leads automated testing training series in C# and Java, writes books, and gives conference talks. You can find him on LinkedIn every day. – 280+ Published Articles Automate The Planet – 120+ Published Articles Code Project – 60+ Published Articles DZone as Most Valuable Blogger – 6+ Articles Published in Quality Magazines – 20+ Given International Conferences Talks – 3 books published – 5,000,000+ article views – 1000 000+ amazing readers for 2020 – Read in 180+ countries
It is failed by one small thing. The author has taken the questionable decision to rely too much on the so-called SOLID principles. Don’t get me wrong, the SOLID principles are OKish, but they are too convoluted, most people don’t get them, and therefore the principles are borderline unusable.
Which is the case with Anton.
He interpreted the SRP as “a class or module should do only one thing”. He started giving examples, like “this two-line method is doing two things, so therefore it violates SRP”.
The whole first half of the book is riddled with misinterpretations of SRP. I was literally facepalming every second page. I supposed that at the half of the book Anton grew tired of "violating" his version of SRP and outright stopped mentioning it.
Proposition for the Second edition: Get rid of SOLID or at least change ALL mentions of SRP.
Clear, very well structured and useful book. A must read for everyone interested in Quality Automation. Every design pattern is explained thoroughly, and there are even pros and cons and explanation how to use. If you read it, you will get a mountain of knowledge.
Maybe the most in-depth book about automated testing with lots of practical examples and best practices. And maybe the best price on the market for the quality!
Design patterns explained in great detail with all their pros and cons, as well as when and how to use them properly. Includes many real-world examples.