Tekniska ämnen

Vad är prestandatestning?

Illustration av IT-artiklar med fokus på en bärbar dator

Översikt

Prestandatestning är en icke-funktionell testteknik för programvara som avgör hur stabiliteten, hastigheten, skalbarheten och responsiviteten hos en applikation håller under en given arbetsbelastning. Det är ett viktigt steg för att säkerställa programvarukvalitet, men tyvärr ses det ofta som en eftertanke, isolerat, och som något som ska påbörjas när funktionstestningen är klar, och i de flesta fall efter att koden är redo att släppas.

Målet med prestandatestning är bland annat att utvärdera programutmatning, bearbetningshastighet, dataöverföringshastighet, användning av nätverksbandbredd, maximalt antal samtidiga användare, minnesanvändning, effektivitet i arbetsbelastningen och svarstider för kommandon.

Bästa praxis för implementering av prestandatestning

Lär dig hur du använder en kombinerad "shift left"- och "shift right"-metod för prestandateknik för att bygga en högproduktiv organisation för programvaruutveckling.

Läs mer om detta

Prestandatestning

Anledningar till prestandatestning

Organisationer genomför prestandatester av minst en av följande anledningar:

  • För att avgöra om applikationen uppfyller prestandakraven (systemet ska t.ex. kunna hantera upp till 1 000 samtidiga användare).
  • För att lokalisera flaskhalsar inom en applikation.
  • För att fastställa om de prestandanivåer som en programvaruleverantör hävdar verkligen är sanna.
  • Att jämföra två eller flera system och identifiera det som ger bäst resultat.
  • För att mäta stabiliteten vid höga trafikflöden.

Hur gör man prestandatester?

De specifika stegen i prestandatestningen varierar från organisation till organisation och från applikation till applikation. Det beror på vilka resultatindikatorer som verksamheten anser vara viktigast. De allmänna målen för prestandatestning är dock i stort sett desamma över hela linjen, så det finns ett visst arbetsflöde som de flesta testplaner kommer att följa.

Identifiera testmiljö och testverktyg

Identifiera produktionsmiljön, testmiljön och de testverktyg som står till ditt förfogande. Dokumentera hårdvara, mjukvara, infrastrukturspecifikationer och konfigurationer i både test- och produktionsmiljöer för att säkerställa samstämmighet. Viss prestandatestning kan ske i produktionsmiljön, men det måste finnas rigorösa skyddsåtgärder som förhindrar att testningen stör produktionsverksamheten.

Definiera acceptabla prestandakriterier

Bestäm de begränsningar, mål och tröskelvärden som ska visa att testet är framgångsrikt. De viktigaste kriterierna kommer att härledas direkt från projektspecifikationerna, men testarna bör ges tillräckliga befogenheter för att kunna fastställa en bredare uppsättning tester och riktmärken.

Planera och utforma tester

Fundera på hur mycket användningen kommer att variera och skapa sedan testscenarier som omfattar alla tänkbara användningsfall. Utforma testerna i enlighet med detta och beskriv de mätvärden som ska samlas in.

Förbereda testmiljö och verktyg

Konfigurera testmiljön innan du utför prestandatesterna. Samla ihop dina testverktyg så att de är redo.

Kör prestandatesterna

Utföra testerna. Fånga upp och övervaka resultaten.

Lös och testa på nytt

Sammanställ och analysera testresultaten. Share resultaten med projektgruppen. Finjustera applikationen genom att åtgärda de prestandabrister som identifierats. Upprepa testet för att bekräfta att varje problem har eliminerats på ett slutgiltigt sätt.


Tips för prestandatestning

Skapa en testmiljö som speglar produktionsekosystemet så nära som möjligt. Annars kanske testresultaten inte ger en korrekt bild av applikationens prestanda när den tas i drift.

  • Separera prestandatestmiljön från UAT-miljön.
  • Identifiera testverktyg som bäst automatiserar din plan för prestandatestning.
  • Kör tester flera gånger för att få ett korrekt mått på applikationens prestanda. Om du t.ex. kör ett belastningstest bör du köra samma test flera gånger för att avgöra om resultatet är konsekvent innan du markerar prestandan som acceptabel eller oacceptabel.
  • Gör inga ändringar i testmiljön mellan testerna.

Vad är skillnaden mellan prestandatestning och prestandateknik?

Prestandatestning och prestandateknik är två närbesläktade men ändå skilda begrepp. Prestandatestning är en delmängd av Performance Engineering och handlar i första hand om att mäta en applikations aktuella prestanda under vissa belastningar.

För att möta kraven på snabb leverans av applikationer behöver moderna programvaruteam ett mer utvecklat tillvägagångssätt som går utöver traditionell prestandatestning och inkluderar integrerad prestandateknik från början till slut. Prestandateknik innebär att man testar och justerar programvaran för att uppnå ett definierat prestandamål. Prestandatestning sker mycket tidigare i mjukvaruutvecklingsprocessen och syftar till att proaktivt förebygga prestandaproblem redan från början.


Vad är verktyg för prestandatestning och hur kan opentext hjälpa till?

Eftersom prestandatester syftar till att fastställa hur väl ett system fungerar när det utsätts för olika arbetsbelastningar är det svårt att utföra sådana tester effektivt utan att använda automatiserade testverktyg. Testverktygen varierar i fråga om kapacitet, omfattning, sofistikering och automatisering. Ta reda på hur OpenText Testing Solutions kan ta effektiviteten i din prestandatestning till nästa nivå.

Hur kan vi hjälpa till?

Fotnoter

OpenText sidfot