Programvara

Hur man mäter framgång för testautomatisering?

Jag har lekt med Test Automation för de senaste 15 åren och en sak som håller kommer upp gång på gång är hur man mäter framgång för automation.

Inledningsvis används vi för att mäta % av testfall som var automatiserad. Vi satte ett mål - X % av testfall som ska automatiseras inom en tidsperiod och då vi brukade gå om att mäta framsteg, trend och må bra när vi slog målet.

Vi kom snart på att detta har allvarliga begränsningar. Till exempel, vi kan ha 70% testfall som var automatiserad, men under en viss regression cykel, kan vi utföra endast 25% - eftersom andra inte var relevanta för det regression cyklar. Ganska snart, vi slutade med några intressanta släpp (Läs "uppvärmd") diskussioner med berörda parter om hur kan 70% till 25% och så vidare. automationsingenjörer brukade klaga att berörda parter inte har förstått vad det innebär med testautomatisering och regressionstestning. Så, till slut - varken vi eller berörda parter var nöjda med situationen.

Det behöver inte vara detta sätt. Låt oss gå tillbaka till grunderna.

Varför gör vi Test Automation?Att förbättra test effektivitet.

Okej - så, vad betyder det?Det innebär att vi kan spara ansträngning, tids- och möjligen också.

Okej - om det är vad är det värde som vi ska få från testautomatisering - de varför vi inte mäter som?

I stället för att mäta % av testfall som var automatiserad, test automation statistik bör inriktas på de besparingar som vi får från att köra dessa testfall - ansträngning och tid?

Det ser enkelt. Men beräkningen av ansträngning och tid besparingar genom automatisering testexekvering är allt annat än enkelt. För att komma på besparingarna -

Vi behöver veta hur mycket tid och ansträngning som krävs för att utföra varje manuell testfall

Vi måste fånga det någonstans

Vi måste sedan koppla detta till faktiska test automatiseringsskript som kördes och sedan beräkna detta.

Detta kommer att behöva viss ansträngning, samarbete med manuell testteam att komma fram till detta.

Kommit överens om. Men sedan % testfall som var automatiserad föra inte ut det värde som test automation var tänkt för att uppnå, så det är vettigt att ändra det till Test Automation värde metriska.

Vi gjorde just det och började mäta test automation besparingar. Tro mig, det var smärtsamt att samla in denna information - test management verktyg som vi använder stödde inte lätt fånga information, aggregering av det och ger oss metriskt tillsammans med trenden. Vi var tvungna att förlita sig på vår goda gamla vän MS Excel att komma fram till detta. Besparingarna uppnås ibland över flera testcykler.

Men resultaten var värt smärtan. En gång, vi skiftade måttet till automation besparingar, vi skiftade beteende i rätt riktning.Eftersom vi beräkna den kraft och tid besparingar på vad vi köra, testa automationsingenjörer starkt inriktad på automatisera testfall -

Som var ansträngningen intensiv, som gav de bästa besparingarna

Som var affärskritiskt, eftersom hög prioritet testfall få utföras oftare under regression cykel

Testfall som var tvungen att köras över olika konfigurationer - OS, webbläsare, DB, devicecombinations - eftersom de resulterat i stora besparingar.

Människor tenderar att anpassa sina beteenden utifrån vad blir mätt. När vi mäter rätt saker, aktiverar vi de rätta beteenden. Vänligen dela vad är den statistik som gjort bättre affärsmässighet och hur den förändrade beteende i rätt riktning. Tack