Testing Pyramid Clarified
Comparison of four types of automated testing in the Testing Pyramid
This article is one of the “IT Terminology Clarified” series.
Many software professionals have heard of the “Testing Pyramid”, and there are many versions.
Table of Contents:
· Testing Pyramid (automation)
· Valuable: low => high
· Test Count : large => small
· Execution Speed: fast => slow
· Execution stability : reliable => brittle
· Implementation Challenging : easy => hard
· Beware of ‘Testing Pyramid’ talks by fake agile consultants
· Question: Given Automated UI Testing is so valuable (top of the Pyramid), why it is rarely done in software projects?
Testing Pyramid (automation)
Below is the testing pyramid at Facebook (from this great presentation: “Continuous Integration at Facebook”).
A quick explanation of the three tiers:
- WebDriver (UI: web or mobile)
Automated End-to-End tests. Facebook use WebDriver (Selenium WebDriver for Web, and Appium WebDriver for mobile) for its End-to-End testing. For web testing, you see actions in browsers.
“For all of our end-to-end tests at Facebook we use WebDriver, WebDriver is an open-source JSON wired protocol, I encourage you all check it out if you haven’t already. ” — Katie Coons, a software engineer at Product Stability, in “Continuous Integration at Facebook”
- Integration Tests
verify two parts of the system coming together
- Unit Tests
white box testing is performed by programmers at the source code level, specifically, at individual…