There’s a lot of misconceptions about test automation. After doing it for a while you start to see what’s really true.
A.] Automated Test Can Replace Manual Testing
Testing requires some human judgement on the usability of the system. Humans are good at finding mistakes that weren’t anticipated.
Manual vs Automated, isn’t the place where you want to chose sides. You’ll need both methods to get the best insight into your application.
B.] Hard To Maintain
Your UI changes a lot so you don’t think you can automate anything on that layer.
With a solid combination of UI design and test construction, you can avoid this problem. Changing the UI to include appropriate attributes, and ID’s helps decrease brittleness. Checkout rules “C”, & “D” for Developers from Testers. For testers careful attention your element locator strategy is just as important (pro tip: Use ID’s over XPath).
C.] Automation Takes To Much Time
Tests can be built quickly if you have the right plan & tools in place.
D.] We Can Achieve 100% Automation
Just like there’s no need to achieving 100% test coverage (See “The Code Coverage Trap”), the same applies to test automation.
We can increase test coverage by running automate tests with more data, more configurations, covering a whole variety of operating systems, browsers, but achieving 100% is still an unrealistic goal.
If someone seriously demands this… run.
E.] Only Unit Test Automation Is Needed
A big part of testing is knowing what happens when all the components are tied together.
Unit tests are only good at finding programmer errors, not failures.
F.] It Breaks The Bank
Creating automation is a long term investment, not high frequency trading.
You’ll increase the quality of every new feature shipped and drastically reduce the amount of new bugs in the final product. This means happier customers who’ll be more loyal to your brand.
Understanding the limitations and setting realistic expectations is important in overcoming these myths about test automation.