• By DORA Metrics? ⚬ Deployment Frequency, Lead Time, Change Failure Rate, MTTR • By business growth? • By profit margin? How do we quantify the success of End-to-End test automation?
Success with the ‘Health Score’ Defined ‘health score’ metrics based on key indicators correlated with automation success Calibrated the logic over 6 months by monitoring scores and customer cancellations Implemented Customer Success actions based on the health score ❶ ❷ ❸ ❹
above, Orange(Normal) for 50-79 points, Red(Unhealthy) for below 50 points • Calculated daily, weekly, monthly Health Score Details 35 pts Tests are run at least once a day (Num. of tests run in a week) / (Num. of tests x Num. of weekdays) 35 pts Tests are successful Num. of passed tests / Num. of executed tests 20 pts Tests are maintenable Num. of shared steps, percentage of overly long tests, etc. 10 pts Others Approximate breakdown
score improves from Red to Green, the cancellation rate is reduced to If the score improves from Red to Orange, the cancellation rate is reduced to 50% or less 20% or less
score improves from Red to Green, the cancellation rate is reduced to If the score improves from Red to Orange, the cancellation rate is reduced to 50% or less 20% or less The score measures cancellation rate (≈success of test automation) well
are available and sustainable’ • Not ‘whether cost is cut’ nor ‘whether bugs are found’ 35 pts Tests are run at least once per day → Is the test feedback delivered in faster cycles? 35 pts Tests are successful → Is the test feedback reliable? 20 pts Tests are maintenable → Is the reliability of the test feedback sustainable? 10 pts Others Overview of Health Score Calculation Logic
number of test cases 6 pts 2. Sufficient members in the project 3 pts 3. Utilization of shared steps 8 pts 4. Avoid long tests 5 pts 5. Use stable locators 8 pts 6. Tests are run at least once a day 35 pts 7. Low test failure rate 35 pts
when possible 4. Avoid long tests (5 pts) • Tests with over 200-300 steps are considered long • Keeping long tests within 10% of total tests earn full points
• Attributes or text that uniquely identify elements • ‘contains’, ‘starts-with’ are allowed • The same rules apply for CSS locators ・id and accessibility information ・#id CSS selector ・//xxx[yyy=‘zzz’] XPath For elements used in tests, we recommend assigning a unique id, accessibility information, attribute, or text within the application
Tests are run at least once a day (35 pts) • Running all tests at least 4.2 days (average number of weekdays) per week earn full points • (Num. of tests run in a week) / (Num. of tests x Num. of weekdays)
pts 2. Sufficient members in the project 3 pts 3. Utilization of shared steps 8 pts 4. Avoid long tests 5 pts 5. Use stable locators 8 pts 6. Tests are run at least once a day 35 pts 7. Low test failure rate 35 pts
In-house High Outsourced Outsourced Fully Outsourced Medium In-house Outsourced Third-party Testing Medium Outsourced In-house Automated UAT Low 1.Project structure Generally, fully “in-house” projects tend to achieve a high health score
In-house Run tests every day Outsourced Outsourced Fully Outsourced Ask the development company to run tests every day In-house Outsourced Third-party Testing Ask the test staffs to involve deeply as members of the team Outsourced In-house Automated UAT Ask the development company to automate and run tests
support • Developers can improve the testability of the product • The benefits of test automation cannot be maximized if it does not contribute to developer productivity Successful End-to-End test automation cannot be realized without the help of developers