Testing av webapplikasjoner: Hvordan tester man et nettsted? Typer
⚡ Smart oppsummering
Testing av webapplikasjoner verifiserer et nettsted på tvers av funksjonalitet, brukervennlighet, grensesnitt, database, kompatibilitet, ytelse, sikkerhet og publikumstester før lansering, slik at feil dukker opp i testfasen i stedet for foran betalende brukere.
Før vi går gjennom flere detaljer om typene netttesting, la oss raskt definere netttesting og se hvor den passer inn i leveringssyklusen.
Hva er testing av webapplikasjoner?
Testing av nettapplikasjoner, eller nettstedstesting, er å sjekke webapplikasjonen eller nettstedet ditt for potensielle feil før det lanseres og er tilgjengelig for allmennheten. Testing av webapplikasjoner sjekker funksjonaliteten, brukervennligheten, sikkerheten, kompatibiliteten og ytelsen til webapplikasjonen eller nettstedet.
I denne fasen kontrolleres problemer som sikkerhet for webapplikasjonen, nettstedets funksjon, tilgang for funksjonshemmede så vel som vanlige brukere, og dets evne til å håndtere trafikk.
Et nettsted er ikke ett program. Det er en stabel: HTML, CSS og JavaSkript i nettleseren, pluss APIer og databaser på serveren. Et lag som går gjennom data alene kan fortsatt feile når det kommuniserer med naboen, så webtesting trenger komplementære teknikker.
Typer webapplikasjoner du må teste
Før du velger teknikker, identifiser arkitekturen du har foran deg. Strukturen bestemmer hvor feilene konsentreres og hvordan du fordeler innsatsen mellom klient og server.
| Architecture | Hvordan den oppfører seg | Hva dette betyr for testing |
|---|---|---|
| Enkeltsides søknad (SPA) | Laster inn én gang, og oppdaterer deretter visningen uten at hele siden lastes inn på nytt. Gmail fungerer på denne måten. | Mesteparten av logikken sendes til nettleseren: fokuser på JavaSkripttilstand, dynamisk gjengivelse og klientsideøkter. |
| Flersidig søknad (MPA) | Mange sider nås via separate ruter URLs, gjengitt på serversiden. Vanlig for e-handel og nyhetssider. | Navigasjonsstiene mangedobles: test alle ruter, skjemaer og omdirigeringer fra ende til ende. |
| Progressiv nettapp (PWA) | Kjører som en native app ved hjelp av service workers, et manifest og et app shell. | Legg til frakoblet oppførsel, foreldede hurtigbuffere, push-varsler og installeringsforespørsler. |
De fleste produkter blander disse mønstrene. Bekreft hvilket du har å gjøre med, og jobb deg deretter gjennom de åtte teknikkene nedenfor.
Hvordan teste nettapplikasjon eller nettsted
I Software Engineering kan følgende testtyper/teknikker utføres avhengig av kravene til netttesting.
Hver teknikk kan kjøres manuelt eller via skript, og det valget koster mer enn dekning.
| Aspekt | Manuell testing | Automatisert testing |
|---|---|---|
| Passer best til | Brukervennlighet og utforskende sjekker | Regresjon, kryssnettlesere, lastekjøringer |
| Hastighet på gjentatte løp | Sakte; innsatsen gjentas i hver syklus | Raskt; serien går i repriser på forespørsel |
| Kostnadsprofil | Lavt i starten, stiger ved hver utgivelse | Høyere på forhånd, deretter skriptvedlikehold |
1. Funksjonalitetstesting av et nettsted
Funksjonalitetstesting av et nettsted er en prosess som inkluderer flere testparametere som brukergrensesnitt, API-er, databasetesting, sikkerhetstesting, klient- og servertesting og grunnleggende nettsidefunksjoner. Funksjonstesting er veldig praktisk og lar brukere utføre både manuell og automatisert testing. Det utføres for å teste funksjonene til hver funksjon på nettstedet.
Nettestingsaktiviteter inkluderer:
Test alle lenker på nettsidene dine fungerer som de skal, og sørg for at det ikke er ødelagte koblinger. Lenker som skal sjekkes inkluderer -
- Utgående lenker
- Interne lenker
- Anchor lenker
- MailTil lenker
Testskjemaer fungerer som forventet. Dette vil inkludere-
- Skriptsjekker på skjemaet fungerer som forventet. For eksempel - hvis en bruker ikke fyller ut et obligatorisk felt i et skjema, vises en feilmelding.
- Sjekk at standardverdier fylles ut
- Når de er sendt inn, sendes dataene i skjemaene til en live database eller kobles til en fungerende e-postadresse
- Skjemaer er optimalt formatert for bedre lesbarhet
Test informasjonskapsler fungerer som forventet. Informasjonskapsler er små filer som brukes av nettsteder for primært å huske aktive brukerøkter, slik at du ikke trenger å logge på hver gang du besøker et nettsted. Cookie-testing vil inkludere
- Testinformasjonskapsler (økter) slettes enten når bufferen tømmes eller når de utløper.
- Slett informasjonskapsler (økter) og test at påloggingsinformasjon blir bedt om neste gang du besøker siden.
Test HTML og CSS for å sikre at søkemotorer enkelt kan gjennomsøke nettstedet ditt. Dette vil inkludere
- Se etter syntaksfeil
- Readable Fargeskjemaer
- Standard samsvar. Sørg for at standarder som W3C, OASIS, IETF, ISO, ECMA eller WS-I følges.
Test forretningsflyten– Dette vil inkludere
- Testing av ende-til-ende arbeidsflyt/forretningsscenarier som tar brukeren gjennom en rekke nettsider for å fullføre.
- Test negative scenarier også, slik at når en bruker utfører et uventet trinn, vises passende feilmelding eller hjelp i webapplikasjonen din.
Verktøy som kan brukes: QTP , IBM Rasjonell, Selenium
2. Testing av brukervennlighet
Brukervennlighetstesting har nå blitt en viktig del av ethvert nettbasert prosjekt. Det kan være utført av testere som deg eller en liten fokusgruppe lik målgruppen til nettapplikasjonen.
Test Siden Navigasjon:
- Menyer, knapper eller koblinger til forskjellige sider på nettstedet ditt skal være lett synlige og konsekvente på alle nettsider
Test de Innhold:
- Innholdet skal være leselig uten stave- eller grammatiske feil.
- Eventuelle bilder skal inneholde en "alt"-tekst
Verktøy som kan brukes: krittmerke, Innholdsquare, og Clixpy
3. Grensesnitttesting
Når funksjoner og brukervennlighet holder mål, sjekk at nivåene bak dem kommuniserer med hverandre. Tre områder som skal testes her er – applikasjon, web og databaseserver
- Påføring: Testforespørsler sendes riktig til databasen og utdata på klientsiden vises riktig. Eventuelle feil må fanges opp av applikasjonen og må kun vises til administratoren og ikke sluttbrukeren.
- web-server: Testwebserveren håndterer alle applikasjonsforespørsler uten noen tjenestenekt.
- Databaseserver: Sørg for at spørringer sendt til databasen gir forventede resultater.
Test systemets respons når forbindelse mellom de tre lagene (applikasjon, web og database) kan ikke etableres og passende melding vises til sluttbrukeren.
Verktøy som kan brukes: Ranorex
4. Databasetesting
Database er en kritisk komponent i webapplikasjonen din, og du må legge vekt på å teste den grundig. Testaktiviteter vil omfatte-
- Test om noen feil vises mens du utfører spørringer
- Data Integrity opprettholdes mens du oppretter, oppdaterer eller sletter data i databasen.
- Sjekk responstiden for spørsmål og finjuster dem om nødvendig.
- Testdata hentet fra databasen din vises nøyaktig i webapplikasjonen din
Verktøy som kan brukes: QTP, Selenium
5. Kompatibilitetstesting
Kompatibilitetstesting sikrer at webapplikasjonen din vises og oppfører seg riktig på tvers av ulike enheter. Dette inkluderer:
Nettleserkompatibilitetstest: Samme nettsted i forskjellige nettlesere vil vises forskjellig. Du må teste om nettapplikasjonen din vises riktig på tvers av nettlesere, JavaSkript, AJAX og autentisering fungerer fint. Du kan også se etter Mobil Nettleserkompatibilitet.
Gjengivelsen av webelementer som knapper, tekstfelt etc. endres med endring i Operating System. Sørg for at nettstedet ditt fungerer bra for ulike kombinasjoner av Operatingsystemer som f.eks Windows, Linux, Mac og nettlesere som f.eks Firefox, Internet Explorer, Safari osv.
Verktøy som kan brukes: Dynatrace
6. Ytelsestesting
Dette vil sikre at nettstedet ditt fungerer under alle belastninger. Testaktiviteter vil inkludere, men ikke være begrenset til –
- Responstider for nettstedsapplikasjoner ved forskjellige tilkoblingshastigheter
- Lasttest nettapplikasjonen din for å bestemme dens oppførsel under normal belastning og toppbelastning
- Stresstest nettstedet ditt for å finne bruddpunktet når det presses til utover normal belastning på topptiden.
- Test om en krasj oppstår på grunn av toppbelastning, hvordan kommer nettstedet etter en slik hendelse
- Sørg for at optimaliseringsteknikker som gzip-komprimering, nettleser- og serversidebuffer er aktivert for å redusere lastetidene
Verktøy som kan brukes: Loadrunner, JMeter
7. Sikkerhetstesting
Sikkerhetstesting er avgjørende for e-handelsnettsteder som lagrer sensitiv kundeinformasjon som kredittkort. Testaktiviteter vil omfatte-
- Test uautorisert tilgang til sikre sider bør ikke tillates
- Begrensede filer skal ikke kunne lastes ned uten passende tilgang
- Sjekkøkter blir automatisk drept etter langvarig brukerinaktivitet
- Ved bruk av SSL-sertifikater bør nettstedet omdirigere til krypterte SSL-sider.
Intruder
Intruder er en kraftig sårbarhetsskanner som vil hjelpe deg med å avdekke de mange svakhetene som lurer i nettapplikasjonene dine og den underliggende infrastrukturen. Tilbyr bransjeledende sikkerhetssjekker, kontinuerlig overvåking og en brukervennlig plattform, Intruder holder bedrifter i alle størrelser trygge mot hackere.
Funksjoner
- Klassens beste trusseldekning med over 10,000 XNUMX sikkerhetskontroller
- Sjekker for konfigurasjonssvakheter, manglende oppdateringer, applikasjonssvakheter (som SQL-injeksjon og skripting på tvers av nettsteder) og mer
- Automatisk analyse og prioritering av skanneresultater
- Intuitivt grensesnitt, raskt å sette opp og kjøre dine første skanninger
- Proaktiv sikkerhetsovervåking for de siste sårbarhetene
- AWS, Azureog Google Cloud kontakter
- API-integrasjon med CI/CD-pipeline
8. Crowd Testing
Du vil velge et stort antall personer (en crowdsourced gruppe) til å utføre tester som ellers ville blitt utført av en liten intern gruppe. Folkefinansiert testing er et interessant og fremadstormende konsept, og det bidrar til å avdekke mange ubemerkede feil.
Verktøy som kan brukes: Crowd Testing Plattform
Testprosess for webapplikasjoner: Steg for steg
De åtte teknikkene forteller deg hva du skal sjekke. Prosessen nedenfor forteller deg når du skal kjøre dem.
- Samle og avklare krav. List opp hva applikasjonen må gjøre og hvordan den skal oppføre seg. Tvetydige krav gir utestbare forventninger, så løs dem først. Dette trinnet forankrer webtesting i det bredere livssyklus for programvaretesting.
- Skriv testplanen. Bestem hvilke teknikker som gjelder, hvem som kjører dem, hvilke verktøy som trengs, og innenfor hvilken tidsramme. Planen er din veikart og ditt estimat.
- Utvikle testtilfeller. Gjør hvert krav om til konkrete trinn med forventede resultater, som dekker både den gode veien og de negative scenariene brukerne utløser ved et uhell.
- Sett opp testmiljøet. Speile produksjonen så tett som budsjettet tillater: samme nettleser- og operativsystempar, sammenlignbare datavolumer, realistiske nettverkshastigheter.
- Utfør testene. Kjør sakene, registrer faktiske resultater mot forventede resultater, og ta skjermbilder, konsollutdata og serverlogger mens feilen fortsatt er reproduserbar.
- Rapporter og track-defekter. Logg hver enkelt med trinn for å reprodusere og en prioritet, test deretter på nytt etter reparasjonen og bekreft at ingenting i nærheten er ødelagt.
- Lukk syklusen. Lag et testsammendrag som dekker hva som ble testet, hva som ble funnet, hva som fortsatt er åpent og hva som bør forbedres, og godkjenn deretter for lansering.
⚠️ Planlegg timeplanen, ikke bare testene: Netttesting er krevende, og tidsfristpress er den hindringen du møter først, etterfulgt av gjentatte kodeendringer som ugyldiggjør ferdig arbeid. Definer hver oppgave i trinn 2 og lag et arbeidsskjema ut fra det.


