This is a fairly common misconception. While yes, UI testing does trigger API calls, it does nothing to test the API itself.
We have a PDF dedicated to this topic here.
API failures are very difficult and nuanced, and because of this can last longer and cost you more money. Sometimes an API issue is actually a data issue, and that’s another reason why we discuss dynamic data sources as a best practice later on.
We obviously believe strongly in the value of API testing and automation, but we can also quote other experts. First, a quote from Forrestor:
“Modern applications require a shift of the current 80% UI automation… shifting about 80% of that test automation [to] API test automation.”Diego Lo Giudice, Forrester Wave 2017
Our next expert is Michael Cohn in his post about the “Test Automation Pyramid.”
“Where many organizations have gone wrong in their test automation efforts over the years has been in ignoring this whole middle layer of service testing. Although automated unit testing is wonderful, it can cover only so much of an application’s testing needs. Without service-level testing to fill the gap between unit and user interface testing, all other testing ends up being performed through the user interface, resulting in tests that are expensive to run, expensive to write, and brittle.”Michael Cohn, The Forgotten Layer of the Test Automation Pyramid
Basically, APIs are at the core of modern platforms, and they are as susceptible to issues as the websites and mobile applications. In today’s tech environment, everyone is looking to “innovate faster.” Yes, it’s a buzzword, but it’s also a real thing.
Everyday we deal with huge enterprises transforming their legacy internal systems to APIs, and these APIs then power new mobile apps, internal platforms, partnerships, countless potential new revenue streams for any company. The world is built on REST APIs, and they require the same level of effort in terms of testing and monitoring.