An automated software tool for validating design patterns
Please, feel free to use, fork, improve and share your thoughts!Before we dive into each principle, here is a summary of the best practices that I am going to talk about, for your convenience: One of the main best practices you should consider at first - do not rely on UI test automation alone.In the past several years, I have heard many engineers from various projects complain about the stability and the reliability of UI automation tests. However, it’s in your hands to make your UI automation framework a high-speed track instead of an old and an unstable country road. It’s true that UI automation testing is a hard and treacherous road that can be full of different holes.That’s why, in the automation process, I take the dark side first...This whole Agile test automation pyramid mentioned in the beginning of the paragraph was applied with great success in many famous companies across the world.
BDD can be applied for any type of testing including unit tests, component, integration as well as for many other types.
This is done by having separate components called steps or actions that will be the building blocks for your tests. Assume we want to write a very small test that verifies a basic workflow on the website.
Try to go over the test scenario and understand what it does: That was easy, right?
When somebody asks me why I prefer more low-level tests in my test automation frameworks, I like to show them this picture.
It nicely represents the stability of low-level tests (black) and high-level tests (white).