top 10 test automation strategies
Detta är den sista artikeln i testa automatiseringsserier . Den här artikeln sammanfattar de bästa metoderna och strategierna för att göra testautomation.
Även om våra tidigare artiklar nämner bästa praxis (och vissa av dem kan upprepas här), kände jag starkt att lista några få, men viktigaste bästa praxis för automatisering här i en artikel för referens .
Dessa strategier är hämtade från min egen erfarenhet plus från litteraturen för att testa guruer som Michael Bolton, James Bach och Cem Kaner. Dessa metoder bör följas i varje automatiseringsprojekt.
Vad du kommer att lära dig:
- 10 bästa testautomatiseringsstrategier och -metoder
- # 1. Hyra en dedikerad automationsingenjör eller ett team
- # 2. Ett automatiseringsverktyg är viktigt, men det är inte lösningen på allt
- # 3. Välj det automatiseringsverktyg som är känt för dina resurser
- # 4. Känn applikationen som testas
- # 5. Bra automatisering betyder bra manuellt testfall
- # 6. Identifiera möjligheter med automatisering
- # 7. Du kan inte automatisera allt
- # 8. Undvik GUI-automatisering när det finns en alternativ present
- # 9. Använd också automatisering för andra användbara ändamål
- # 10. Automation är mjukvaruutveckling
- Slutsats
- Rekommenderad läsning
10 bästa testautomatiseringsstrategier och -metoder
Nu kör vi..
# 1. Hyra en dedikerad automationsingenjör eller ett team
Detta är en grundläggande sak att göra. Be inte dina manuella testare att ägna sig åt testautomatisering. Om du vill att de ska göra testautomatisering, befria dem från manuellt testarbete. Testautomatisering är ett heltidsjobb. För detta behöver du dedikerade resurser.
Jag rekommenderar att man bygger ett testautomatiseringsteam bestående av minst en automatiseringsarkitekt. Du kan anställa flera automationsingenjörer för att arbeta under ledning av testautomationsarkitekten. Antalet automationsingenjörer beror på antalet och storleken på dina produkter.
skillnad mellan kvalitetskontroll och försäkring
# 2. Ett automatiseringsverktyg är viktigt, men det är inte lösningen på allt
Vi pratade om verktygsval . Men att välja rätt verktyg är bara början. Vissa chefer har missuppfattningen att om de väljer rätt verktyg kan de enkelt automatisera vad som helst. Se upp, automatiseringsverktyg ger dig inte allt. De gör processen enklare. Men du behöver skickliga resurser för att slutföra processen.
Ofta är automatiseringsverktyg buggiga och de fastnar i att identifiera komplexa objekt i applikationen. De resurser du anställer, om de är skickliga, kommer med en lösning som tar processen framåt. Annars, om du inte anställer bra resurser, kan verktyget inte ens garantera framgångsrik automatisering.
# 3. Välj det automatiseringsverktyg som är känt för dina resurser
Om dina resurser är bekanta med C # och din applikation som ska testas utvecklas också i C #, finns det ingen anledning att välja verktyget som inte erbjuder C # för att skriva manus.
Språkinlärning är en tidskrävande process. Undvik denna inlärningskurva genom att köpa ett verktyg som erbjuder en minimal inlärningskurva.
# 4. Känn applikationen som testas
Verktygsvalet beror starkt på den teknik som används i din produkt. Känn din produkt innanför automatiseringen.
Om det är en webbapplikation, känner till vilka webbläsare den stöder. Känn tekniken som används i den. Om det är en stationär applikation, vet vilket språk som bygger på. Vilka kontroller från tredje part som används i applikationen. Detta hjälper dig att underlätta valet av verktyg och framtida automatisering.
# 5. Bra automatisering betyder bra manuellt testfall
Snyggt skrivna starka manuella testfall rädda oss från att automatisera de testfall som är lätta att automatisera men svaga att hitta fel.
Här är citatet från boken Lessons Learned in Software Testing:
'Automatisering utan bra testdesign kan resultera i mycket aktivitet, men lite värde.'
Det är alltid lämpligt att först skriva testfallet i manuell form. Identifiera alla förutsättningar och testdata . Skriv steg på ett tydligt sätt och skriv förväntade resultat framför varje steg. Syftet med ett testfall ska vara klart och det bör vara mindre beroende av de andra testfallet. Automationsingenjörer bör köra detta testfall manuellt minst en gång för att tydligt avgöra vilka objekt som behöver identifieras och vad som kommer att bli navigationsflödet. Ställ frågor med manuella testare.
Den här aktiviteten hjälper ibland till att identifiera fel även innan automatiseringsskriptet skrivs. Experter säger att majoriteten av buggar identifieras i testautomationsutvecklingsfasen snarare än i själva genomförandefasen.
# 6. Identifiera möjligheter med automatisering
Om du överlämnas med en manuellt testfall för att automatisera , automatisera inte bara testfallet som det är. Istället hittar du fler möjligheter i din automatisering för att utöka omfattningen av detta testfall.
tvålwebtjänster i Java-intervjufrågor
Till exempel, om det manuella testfallet krävs måste du logga in på en webbsida. Du kan utöka detta testfall genom att göra det datadrivet. Lista alla möjliga scenarier för inloggning som ogiltigt lösenord, tomt lösenord, ogiltigt användarnamn, ogiltigt e-postmeddelande, tomt användarnamn, kom ihåg mig kontrollerad, inte markerad, etc. Lista möjliga scenarier tillsammans med deras förväntade resultat i en Excel-fil och lägg den här excel-filen som en datakälla för ditt testfall. Nu kan det här manuella testfallet, efter att ha automatiserats, testa alla möjliga scenarier på en gång.
Leta alltid efter möjligheter som kan göras med automatisering men som är svåra att göra manuellt. Såsom Load Testing scenarios, Performance Benchmarks, Same Tests under olika miljöer med olika konfigurationer, Memory Leaks, High Precision Tests etc. Allt detta är svåra scenarier för manuella testare.
# 7. Du kan inte automatisera allt
Automation innebär att man kör färre tester oftare. Du måste börja smått genom att attackera dina röktester först. Täck sedan din bygga acceptansprov . Gå sedan vidare till dina ofta utförda tester och gå sedan vidare till din tid att ta tester. Men se till att varje test du automatiserar, det sparar tid för en manuell testare att fokusera på viktigare saker.
Automation är inte här för att ersätta manuella testare. Inte heller kan det. Det är här för att ta bort det upprepade arbetet från manuella testare så att de kan använda sitt fulla fokus och styrka för att hitta nya testscenarier och buggar. (Läs min artikel Missuppfattningar om testautomatisering)
Automatisera några test som är värdefulla och tidsbesparare eller svårt att göra för manuella testare. Om du gjorde det är automatiseringsuppgiften klar.
# 8. Undvik GUI-automatisering när det finns en alternativ present
GUI-automatisering är alltid hårdare än andra typer av automatiserade tester. Så om det finns en situation när du kan uppnå ditt mål genom att inte automatisera GUI, men med några andra metoder som kommandoradsingångar, är den bästa strategin att undvika GUI-automatisering.
Till exempel, vill du testa installationen av programmet. Målet är att kontrollera om applikationen har installerats eller inte i en viss miljö. Ett tillvägagångssätt är att starta installationen och klicka på “ Nästa ”-Knappen flera gånger genom ditt automatiseringsverktyg. Det kan vara knepigt, tidskrävande och det är föremål för underhåll om användargränssnittet ändras. Den andra metoden är att starta applikationsinstallationen med en batchfil som ger tysta argument. Applikationen installeras tyst och visar inget GUI. Målet kommer att uppnås på kortare tid och på ett mer tillförlitligt sätt.
# 9. Använd också automatisering för andra användbara ändamål
Automation är en så fantastisk sak. Du kan uppnå sådana saker från det som du normalt inte tänker på. Automation handlar inte bara om att programmera ett manuellt testfall. Istället, du kan använda automatisering för att underlätta olika operationer i din organisation.
Till exempel, kan du använda automatisering för att skapa stamdata och konfigurera konfigurationer automatiskt för manuella testare. Så att de kan börja testa så tidigt som möjligt.
Jag kan ge ett exempel från mitt eget företag. Vi ville byta från vårt testfallshanteringsverktyg. Vi använde “Test Director” (nu HP ALM) och ville byta till TFS (Team Foundation Server). Vi hade cirka 4000 manuella testfall och buggar i Test Director. Att överföra dem manuellt till TFS kan ta ungefär en månad. Så min chef bad mig att prova lite automatisering.
Jag grävde dessa verktyg och fick reda på att Test Director använder SQL-server som sitt förråd. För TFS fick jag reda på ett verktyg som kan läsa testfall och buggar från en excel-fil, om de är skrivna i ett visst format, och kan infoga dem i TFS. Resten av berättelsen är enkel. Jag skrev en SQL-fråga för att hämta alla testfall och buggar och exporterade dem i en Excel-fil i det specifika formatet. Jag använde sedan det verktyget som läser alla testfall och buggar från excel-filen och infogade dem i TFS. Hela processen tog bara 3 timmar. Min chef var väldigt glad. Jag hoppas att du får min poäng också.
# 10. Automation är mjukvaruutveckling
Om du utvecklar kvalitetsprogramvara behöver det bästa praxis. Det behöver kodgranskningar för att skriva kvalitetskod. Det behöver ett ramverk eller designmönster som ska följas. Det behöver ständigt underhåll.
bästa gratis registret renare windows 7
Automation är i grunden mjukvaruutveckling. Så alla bästa metoder som du följer när du utvecklar programvara bör följas när du gör automatisering. Automation Framework borde finnas där. Kodgranskningar bör göras. Automatiseringsfel bör rapporteras i felförvaret. Källkod för automatisering bör placeras under källkontroll etc. Ju mer du behandlar det som mjukvaruutveckling, desto mer framgångsrik automatisering kommer att bli.
Slutsats
Detta sammanfattar artikeln liksom serien av testautomatisering. Jag lärde mig många saker när jag skrev dessa självstudier och jag hoppas att du lär dig också genom att läsa. Testautomation är en intressant och givande karriär. Att göra det korrekt är inte bara fördelaktigt för dig utan också för organisationen.
Varje dag när jag arbetar med testautomation och dess tekniker hittar jag nya och intressanta utmaningar att lösa. Denna serie var ett försök att lyfta fram vad som kunde stöta på en resa med testautomatisering. Jag hoppas att jag levererade det rätt och på ett enkelt sätt.
Som alltid väntar jag på dina kommentarer och förslag. Skriv gärna din feedback i kommentarfältet. Jag hör gärna av dig och hjälper dig vid behov. Tack för att du läser.
PREV Handledning nr 6
Rekommenderad läsning
- Är du expert på manuell eller automatiseringstestning? Arbeta deltid för oss!
- Manuella och automatiseringstestutmaningar
- Topp 10+ bästa testböcker för programvara (testböcker för manuell och automatisering)
- Sikuli GUI Automation Testing Tool - Beginner's Guide Part # 2
- Steg för steg guide för att implementera POC (Proof of Concept) i Automation Testing
- 10-stegs automatiseringstestprocess: Hur man startar automatiseringstestning i din organisation
- Hur bestämmer jag vilken typ av testning som krävs för ett projekt? - Manuell eller automatisering
- Hur utför man manuell prestandatestning?