Forskel mellem ydeevne og belastningstest
Performance vs Load Testing
I forbindelse med software engineering udføres ydeevne test for at finde ud af flaskehalse i et system. Præstestest kan også bruges til at verificere attributter som pålidelighed, ressourceforbrug og skalerbarhed og etablere en basislinje for systemets ydeevne. Belastningsprøvning er en af undergenrene af præstationsprøvning. Det udføres for at måle adfærd af et system under en specificeret arbejdsbyrde. Indlæsningstestning er mere relevant for multi-bruger systemer baseret på klient-server model, men andre software systemer som tekstbehandlere eller grafik redaktører kan også blive testet.
PrestationsprøvningSom nævnt ovenfor udføres ydeevneprøvning for at bestemme og eliminere flaskehalse i et software system og etablere en basislinje af dens ydeevne, som ville være nyttig til yderligere test. Præstationsprøvning omfatter test som belastningstests, udholdenhedsprøvninger (soak test), spike test, konfigurationstest og isolationstest. Præstationsprøvning kræver, at man får et omhyggeligt styret sæt målinger af systemet. For at få de bedste resultater ud af præstationsprøvning, skal det være godt planlagt og skal gøres på et stabilt system, hvor testprocessen kan gå glat. Det er vigtigt at forstå, hvad du rent faktisk ønsker at måle i forhold til systemets ydeevne, når du foretager præstationsprøvning. Hvis du for eksempel tester ydeevnen for en webapplikation, vil du måske gerne vide den acceptable svarstid og antallet af samtidige brugere, der kan håndteres af systemet. Ved at holde disse to aspekter i tankerne kan du starte testen ved at øge antallet af brugere konstant og identificere flaskehalsen.
Som nævnt er belastningstestning en del af ydeevne test, og det udføres ofte ved at øge belastningen på et software system ved hjælp af automatiserede værktøjer. Belastningstesten er undertiden kendt som volumetest. Nogle eksempler på belastningstest ville være at teste en mailserver med et stort antal brugerpostkasser eller afprøvning af redigering af et meget stort dokument ved hjælp af en tekstbehandler. Indlæsningstest udføres ved hjælp af et foruddefineret belastningsniveau, normalt ved hjælp af den maksimale belastning, som systemet kan klare uden at gå i stykker. Normalt har belastningstest sig til at afsløre fejl, der ikke udsættes for almindelige test, som f.eks. Hukommelsesstyringsproblemer, hukommelseslækage, bufferoverløb osv. Belastningstest tjener også som et middel til at sikre, at systemet opfylder den præstationsbaseline, der blev etableret under præstationsprøvningen.
Selv om de betingelser, der anvendes til udførelse af præstationsprøvning og belastningstestning, er belastningstest kun et enkelt aspekt af ydeevneprøvning.Målet med de to test er også anderledes. Præstationsprøvning anvender belastningstestteknikker med det formål at opnå målinger og benchmarking, og den bruger flere belastningsniveauer. Men belastningstestning fungerer på et enkelt foruddefineret belastningsniveau, normalt den højeste belastning, systemet kan klare uden at gå i stykker. I praksis udføres præstationsforsøg med det formål at finde flaskehalse i systemet og eliminere dem. Og når systemet ikke kan optimeres længere, er der startet load test, for at bestemme, hvad du skal tilføje til systemet (oftest hardwareudvidelser som antal webservere eller databaseservere) for at opretholde de krav, der er foruddefineret af kunden.