Test af webapplikationer: Hvordan tester man et websted? Typer
โก Smart opsummering
Webapplikationstest verificerer et websted pรฅ tvรฆrs af funktionalitet, brugervenlighed, grรฆnseflade, database, kompatibilitet, ydeevne, sikkerhed og crowdchecks fรธr udgivelsen, sรฅ fejl dukker op under testfasen i stedet for at blive vist til betalende brugere.

Fรธr vi gรฅr i dybden med de forskellige typer af webtest, lad os hurtigt definere webtest og se, hvor det passer ind i leveringscyklussen.
Hvad er test af webapplikationer?
Test af webapplikationer, eller hjemmesidetestning, er en kontrol af din webapplikation eller dit websted for potentielle fejl, fรธr det lanceres og er tilgรฆngeligt for offentligheden. Webapplikationstest kontrollerer funktionaliteten, brugervenligheden, sikkerheden, kompatibiliteten og ydeevnen af โโwebapplikationen eller webstedet.
I denne fase kontrolleres emner som webapplikationens sikkerhed, webstedets funktion, dets adgang for bรฅde handicappede og almindelige brugere og dets evne til at hรฅndtere trafik.
En hjemmeside er ikke รฉt program. Det er en stak: HTML, CSS og JavaScript i browseren, plus API'er og databaser pรฅ serveren. Et lag, der gรฅr igennem alene, kan stadig fejle, nรฅr det kommunikerer med sin nabo, sรฅ webtestning har brug for supplerende teknikker.
Typer af webapplikationer, du skal teste
Fรธr du vรฆlger teknikker, skal du identificere den arkitektur, du har foran dig. Strukturen bestemmer, hvor defekter koncentreres, og hvordan du fordeler indsatsen mellem klient og server.
| Architecture | Hvordan den opfรธrer sig | Hvad dette betyder for testning |
|---|---|---|
| Single-Page Application (SPA) | Indlรฆses รฉn gang og opdaterer derefter visningen uden at genindlรฆse hele siden. Gmail fungerer pรฅ denne mรฅde. | Det meste logik sendes til browseren: fokuser pรฅ JavaScripttilstand, dynamisk gengivelse og klientsidesessioner. |
| Flersidet ansรธgning (MPA) | Mange sider nรฅs via separate ruter URLs, gengivet pรฅ serversiden. Almindelig for e-handel og nyhedssider. | Navigationsstierne mangedobles: test alle ruter, formularer og omdirigeringer fra start til slut. |
| Progressiv webapp (PWA) | Kรธrer som en native app ved hjรฆlp af service workers, et manifest og en app shell. | Tilfรธj offlineadfรฆrd, forรฆldede caches, push-notifikationer og installationsprompts. |
De fleste produkter blander disse mรธnstre. Bekrรฆft hvilket et du har at gรธre med, og arbejd dig derefter igennem de otte teknikker nedenfor.
Sรฅdan testes webapplikation eller websted
I Software Engineering kan fรธlgende testtyper/-teknik udfรธres afhรฆngigt af dine krav til webtest.
Hver teknik kan kรธres manuelt eller via script, og det valg koster mere end dรฆkning.
| Aspect | Manuel test | Automatiseret test |
|---|---|---|
| Bedst egnet til | Brugervenlighed og sonderende kontrol | Regression, cross-browser, indlรฆsningskรธrsler |
| Hastighed ved gentagne lรธb | Langsom; indsatsen gentages i hver cyklus | Hurtig; pakken genudspilles pรฅ forespรธrgsel |
| Omkostningsprofil | Lav pรฅ forhรฅnd, stiger ved hver udgivelse | Hรธjere pรฅ forhรฅnd, derefter vedligeholdelse af script |
1. Funktionstest af en hjemmeside
Funktionstest af en hjemmeside er en proces, der inkluderer flere testparametre som brugergrรฆnseflade, API'er, databasetest, sikkerhedstest, klient- og servertest og grundlรฆggende webstedsfunktionaliteter. Funktionel test er meget praktisk, og det giver brugerne mulighed for at udfรธre bรฅde manuel og automatiseret test. Det udfรธres for at teste funktionaliteterne af hver funktion pรฅ hjemmesiden.
Webtestaktiviteter omfatter:
Test alle links pรฅ dine websider fungerer korrekt, og sรธrg for, at der ikke er brudte links. Links, der skal kontrolleres, vil omfatte -
- Udgรฅende links
- Interne links
- Anchor Links
- MailTil links
Testformularer fungerer som forventet. Dette vil omfatte-
- Scripttjek pรฅ formularen fungerer som forventet. For eksempel - hvis en bruger ikke udfylder et obligatorisk felt i en formular, vises en fejlmeddelelse.
- Kontroller, at standardvรฆrdier udfyldes
- Nรฅr de er indsendt, sendes dataene i formularerne til en live database eller er knyttet til en fungerende e-mailadresse
- Formularer er optimalt formateret for bedre lรฆsbarhed
Test cookies fungerer som forventet. Cookies er smรฅ filer, der bruges af websteder til primรฆrt at huske aktive brugersessioner, sรฅ du ikke behรธver at logge ind, hver gang du besรธger et websted. Cookie-testning vil omfatte
- Testcookies (sessioner) slettes enten nรฅr cachen ryddes, eller nรฅr de nรฅr deres udlรธb.
- Slet cookies (sessioner) og test, at der bliver bedt om loginoplysninger, nรฆste gang du besรธger siden.
Test HTML og CSS for at sikre, at sรธgemaskiner nemt kan crawle dit websted. Dette vil omfatte
- Kontrollerer for syntaksfejl
- Readable Farveskemaer
- Standard overholdelse. Sรธrg for, at standarder sรฅsom W3C, OASIS, IETF, ISO, ECMA eller WS-I fรธlges.
Test virksomhedens arbejdsgangโ Dette vil omfatte
- Afprรธvning af dine ende-til-ende arbejdsgange/forretningsscenarier, som fรธrer brugeren gennem en rรฆkke websider for at fuldfรธre.
- Test ogsรฅ negative scenarier, sรฅdan at nรฅr en bruger udfรธrer et uventet trin, vises passende fejlmeddelelse eller hjรฆlp i din webapplikation.
Vรฆrktรธjer der kan bruges: QTP , IBM Rationelle, Selenium
2. Test af brugervenlighed
Usability Testing er nu blevet en vital del af ethvert webbaseret projekt. Det kan vรฆre udfรธrt af testere ligesom dig eller en lille fokusgruppe svarende til webapplikationens mรฅlgruppe.
Test siden Navigation:
- Menuer, knapper eller links til forskellige sider pรฅ dit websted skal vรฆre let synlige og konsekvente pรฅ alle websider
Test og Indhold:
- Indholdet skal vรฆre lรฆseligt uden stave- eller grammatiske fejl.
- Billeder, hvis de er til stede, skal indeholde en "alt"-tekst
Vรฆrktรธjer der kan bruges: Kridtmรฆrke, Indholdsfirkant, og Clixpy
3. Interfacetest
Nรฅr funktioner og brugervenlighed holder stik, skal du kontrollere, at de bagvedliggende niveauer kommunikerer med hinanden. Tre omrรฅder, der skal testes her, er โ applikation, web og databaseserver.
- Pรฅfรธring: Testanmodninger sendes korrekt til databasen, og output pรฅ klientsiden vises korrekt. Eventuelle fejl skal fanges af applikationen og skal kun vises til administratoren og ikke slutbrugeren.
- web-server: Testwebserver hรฅndterer alle ansรธgningsanmodninger uden nogen form for afvisning af tjeneste.
- Databaseserver: Sรธrg for, at forespรธrgsler sendt til databasen giver forventede resultater.
Test systemets respons hvornรฅr forbindelse mellem de tre lag (Applikation, web og database) ikke kan etableres og passende besked vises til slutbrugeren.
Vรฆrktรธjer der kan bruges: Ranorex
4. Databasetest
Database er en kritisk komponent i din webapplikation, og der skal lรฆgges vรฆgt pรฅ at teste den grundigt. Testaktiviteter vil omfatte-
- Test, om der vises fejl under udfรธrelse af forespรธrgsler
- Data Integrity vedligeholdes under oprettelse, opdatering eller sletning af data i databasen.
- Tjek responstiden pรฅ forespรธrgsler og finjuster dem om nรธdvendigt.
- Testdata hentet fra din database vises nรธjagtigt i din webapplikation
Vรฆrktรธjer der kan bruges: QTP, Selenium
5. Kompatibilitetstest
Kompatibilitetstest sikrer, at din webapplikation vises og fungerer korrekt pรฅ tvรฆrs af forskellige enheder. Dette omfatter:
Browserkompatibilitetstest: Samme websted i forskellige browsere vises forskelligt. Du skal teste, om din webapplikation vises korrekt pรฅ tvรฆrs af browsere, JavaScript, AJAX og godkendelse fungerer fint. Du kan ogsรฅ tjekke efter Mobil Browserkompatibilitet.
Gengivelsen af โโwebelementer som knapper, tekstfelter osv. รฆndres med รฆndringer i Operating System. Sรธrg for, at din hjemmeside fungerer fint til forskellige kombinationer af Operatingsystemer som f.eks Windows, Linux, Mac og browsere som f.eks Firefox, Internet Explorer, Safari osv.
Vรฆrktรธjer der kan bruges: Dynatrace
6. Ydelsestest
Dette vil sikre, at dit websted fungerer under alle belastninger. Testaktiviteter vil omfatte, men ikke vรฆre begrรฆnset til โ
- Websiteapplikations responstider ved forskellige forbindelseshastigheder
- Belastningstest din webapplikation for at bestemme dens adfรฆrd under normale belastninger og spidsbelastninger
- Stresstest dit websted for at bestemme dets brudpunkt, nรฅr det skubbes til ud over normale belastninger pรฅ spidsbelastningstidspunktet.
- Test, om der opstรฅr et nedbrud pรฅ grund af spidsbelastning, hvordan kommer webstedet over en sรฅdan hรฆndelse
- Sรธrg for, at optimeringsteknikker som gzip-komprimering, browser og serversidecache er aktiveret for at reducere indlรฆsningstider
Vรฆrktรธjer der kan bruges: Loadrunner, JMeter
7. Sikkerhedstest
Sikkerhedstest er afgรธrende for e-handelswebsteder, der gemmer fรธlsomme kundeoplysninger som kreditkort. Testaktiviteter vil omfatte-
- Test uautoriseret adgang til sikre sider bรธr ikke tillades
- Begrรฆnsede filer bรธr ikke kunne downloades uden passende adgang
- Tjeksessioner afbrydes automatisk efter lรฆngere tids brugerinaktivitet
- Ved brug af SSL-certifikater bรธr webstedet omdirigere til krypterede SSL-sider.
Intruder
Intruder er en kraftfuld sรฅrbarhedsscanner, der hjรฆlper dig med at afdรฆkke de mange svagheder, der lurer i dine webapplikationer og underliggende infrastruktur. Tilbyder branchefรธrende sikkerhedstjek, kontinuerlig overvรฅgning og en brugervenlig platform, Intruder holder virksomheder i alle stรธrrelser sikre mod hackere.
Funktionalitet
- Bedste-i-klassen trusselsdรฆkning med over 10,000 sikkerhedstjek
- Tjek for konfigurationssvagheder, manglende patches, applikationssvagheder (sรฅsom SQL-injektion og cross-site scripting) og mere
- Automatisk analyse og prioritering af scanningsresultater
- Intuitiv grรฆnseflade, hurtig at opsรฆtte og kรธre dine fรธrste scanninger
- Proaktiv sikkerhedsovervรฅgning for de seneste sรฅrbarheder
- AWS, Azureog Google Cloud stik
- API-integration med din CI/CD-pipeline
8. Crowd test
Du vil udvรฆlge et stort antal personer (en crowd) til at udfรธre tests, som ellers ville vรฆre blevet udfรธrt af en lille intern gruppe. Crowdsourcing-testning er et interessant og kommende koncept, der hjรฆlper med at opklare mange ubemรฆrkede fejl.
Vรฆrktรธjer der kan bruges: Crowd test platform
Testproces for webapplikationer: Trin for trin
De otte teknikker fortรฆller dig, hvad du skal kontrollere. Processen nedenfor fortรฆller dig, hvornรฅr du skal kรธre dem.
- Indsaml og afklar krav. Angiv, hvad applikationen skal gรธre, og hvordan den skal opfรธre sig. Tvetydige krav skaber forventninger, der ikke kan testes, sรฅ afklar dem fรธrst. Dette trin forankrer webtestning i den bredere kontekst. livscyklus for softwaretest.
- Skriv testplanen. Beslut hvilke teknikker der gรฆlder, hvem der kรธrer dem, hvilke vรฆrktรธjer der er nรธdvendige, og inden for hvilken tidsramme. Planen er din kรธreplan og dit estimat.
- Udvikle testcases. Omdan hvert krav til konkrete trin med forventede resultater, der dรฆkker bรฅde den lykkelige vej og de negative scenarier, som brugerne udlรธser ved et uheld.
- Opsรฆt testmiljรธet. Spejlproduktion sรฅ prรฆcist som budgettet tillader: de samme browser- og operativsystempar, sammenlignelige datamรฆngder, realistiske netvรฆrkshastigheder.
- Udfรธr testene. Kรธr sagerne, registrer faktiske resultater i forhold til forventede resultater, og optag skรฆrmbilleder, konsoloutput og serverlogfiler, mens fejlen stadig kan reproduceres.
- Rapport og track-defekter. Log hver enkelt med trin til reproduktion og en prioritet, test derefter igen efter reparationen og bekrรฆft, at intet i nรฆrheden er gรฅet i stykker.
- Luk cyklussen. Udarbejd et testresumรฉ, der dรฆkker, hvad der blev testet, hvad der blev fundet, hvad der stadig er รฅbent, og hvad der skal forbedres, og godkend derefter til frigivelse.
โ ๏ธ Planlรฆg tidsplanen, ikke kun prรธverne: Webtestning er besvรฆrligt, og deadlinepres er den fรธrste hindring, man mรธder, efterfulgt af gentagne kodeรฆndringer, der ugyldiggรธr det fรฆrdige arbejde. Definer hver opgave i trin 2, og lav et arbejdsskema ud fra det.

