Hva er skytesting? SaaS-testveiledning

Skytesting

Skytesting er en type programvaretesting der programvareapplikasjonen testes ved hjelp av cloud computing-tjenester. Formålet med Cloud-testing er å teste programvaren for funksjonelle så vel som ikke-funksjonelle krav ved bruk av cloud computing som sikrer raskere tilgjengelighet med skalerbarhet og fleksibilitet for å spare tid og kostnader for programvaretesting.

Cloud computing er en internettbasert plattform som gjengir ulike datatjenester som maskinvare, programvare og andre datamaskinrelaterte tjenester eksternt.

Det er hovedsakelig tre modeller av Cloud Computing :

  • SaaS– Programvare som en tjeneste
  • PaaS– Plattform som en tjeneste
  • IaaS– Infrastruktur som en tjeneste

Type testing i skyen

Hele skytestingen er delt inn i fire hovedkategorier

  • Testing av hele skyen: Skyen blir sett på som en hel enhet og basert på funksjonene testes det. Cloud- og SaaS-leverandører, samt sluttbrukere, er interessert i å utføre denne typen testing
  • Testing i en sky: Ved å kontrollere hver av dens interne funksjoner, utføres testing. Bare skyleverandører kan utføre denne typen testing
  • Tester på tvers av skyen: Testing utføres på ulike typer skylignende private, offentlige og hybride skyer
  • SaaS-testing i skyen: Funksjonell og ikke-funksjonell testing utføres på grunnlag av applikasjonskrav

SaaS-testing

SaaS-testing er en programvaretestprosess der programvareapplikasjonen innebygd i en Software as a Service-modell testes for både funksjonelle og ikke-funksjonelle krav. Målet med SaaS-testing er å sikre kvaliteten ved å teste datasikkerhet, integritet, ytelse, kompatibilitet og skalerbarhet til programvareapplikasjonen.

SaaS-testing

Skytesting fokuserer på kjernekomponentene som

  1. Påføring: Den dekker testing av funksjoner, ende-til-ende arbeidsflyter, datasikkerhet, nettleserkompatibilitet, etc.
  2. Network: Det inkluderer testing av ulike nettverksbåndbredder, protokoller og vellykket overføring av data gjennom nettverk.
  3. Infrastruktur: Den dekker katastrofegjenopprettingstest, sikkerhetskopier, sikker tilkobling og lagringspolicyer. Infrastrukturen må valideres for overholdelse av regelverk

Andre testtyper i Cloud inkluderer

  • Ytelse
  • Tilgjengelighet
  • Samsvar
  • Sikkerhet
  • skalerbarhet
  • Flerleieforhold
  • Live oppgraderingstesting

Slik gjør du skytesting

Typer skytesting Oppgave utført
SaaS eller skyorientert testing: Denne typen testing utføres vanligvis av nettsky- eller SaaS-leverandører. Hovedmålet er å sikre kvaliteten på de leverte tjenestefunksjonene som tilbys i en sky eller et SaaS-program. Testing utført i dette miljøet er integrasjon, funksjonell, sikkerhet, enhet, systemfunksjonsvalidering og Regresjonstesting samt evaluering av ytelse og skalerbarhet.
Online basert applikasjonstesting på en sky: Online applikasjonsleverandører utfører denne testen som sjekker ytelse og Funksjonell testing av de skybaserte tjenestene. Når applikasjoner kobles til eldre systemer, valideres kvaliteten på tilkoblingen mellom det eldre systemet og applikasjonen som er testet på en sky.
Skybasert applikasjonstesting over skyer: For å sjekke kvaliteten på en skybasert applikasjon på tvers av forskjellige skyer, utføres denne typen testing.

Eksempel på testtilfeller for skytesting

Test scenarier Test tilfelle
Ytelsestesting
  • Feil på grunn av én brukerhandling på skyen skal ikke påvirke ytelsen til andre brukere
  • Manuell eller automatisk skalering skal ikke forårsake forstyrrelser
  • På alle typer enheter bør ytelsen til applikasjonen forbli den samme
  • Overbooking hos leverandøren bør ikke hemme applikasjonsytelsen
Sikkerhetstesting
  • En eneste autorisert kunde skal få tilgang til data
  • Data må være godt kryptert
  • Data må slettes fullstendig hvis de ikke er i bruk av en klient
  • Data skal være tilgjengelig med utilstrekkelig kryptering
  • Administrasjon på leverandørsiden skal ikke få tilgang til kundenes data
  • Se etter ulike sikkerhetsinnstillinger som brannmur, VPN, Antivirus etc.
Funksjonell testing
  • Gyldig input skal gi de forventede resultatene
  • Tjenesten bør integreres riktig med andre applikasjoner
  • Et system skal vise kundekontotype når du har logget på skyen
  • Når en kunde velger å bytte til andre tjenester, bør den kjørende tjenesten lukkes automatisk
Interoperabilitet og kompatibilitetstesting
  • Valider kompatibilitetskravene til programmet som testes
  • Sjekk nettleserkompatibilitet i et skymiljø
  • Identifiser Defekt som kan oppstå mens du kobler til en sky
  • Eventuelle ufullstendige data på skyen skal ikke overføres
  • Bekreft at applikasjonen fungerer på en annen skyplattform
  • Test applikasjonen i det interne miljøet og distribuer den deretter i et skymiljø
Nettverkstesting
  • Testprotokoll ansvarlig for skytilkobling
  • Se etter dataintegritet mens du overfører data
  • Se etter riktig nettverkstilkobling
  • Sjekk om pakker slippes av en brannmur på hver side
Belastnings- og stresstesting
  • Se etter tjenester når flere brukere får tilgang til skytjenestene
  • Identifiser defekten som er ansvarlig for maskinvare- eller miljøfeil
  • Sjekk om systemet svikter under økende spesifikk belastning
  • Sjekk hvordan et system endres over tid under en viss belastning

Utfordringer i skytesting

Utfordring #1: Datasikkerhet og personvern

Skyapplikasjoner er en multi-tenant i naturen, risikoen for datatyveri er alltid fortsatt. Som en skyteststrategi bør brukere gis en forsikring om sikkerheten til dataene deres av leverandører.

Utfordring #2: Kort oppsigelsestid

Skyleverandør gir en kort varsel på (1-2 uker) til eksisterende kunder om oppgraderinger. Dette er et stort problem når du manuelt validerer endringene i SaaS-applikasjonen din.

Utfordring #3: Validering av grensesnittkompatibilitet

Med en oppgradering i Cloud-tjenesteleverandøren oppgraderes til tider også det eksterne grensesnittet, noe som er en utfordring for noen abonnenter som er vant til det eldre grensesnittet. Cloud(SaaS)-abonnenter må sørge for at brukerne kan velge grensesnittversjonen de ønsket skal fungere

Utfordring nr. 4: Datamigrering

Datamigrering fra en skyleverandør til en annen er en stor utfordring siden begge leverandørene kan ha forskjellige databaseskjemaer og det krever mye innsats for å forstå datafeltene, relasjonene og hvordan de kartlegges på tvers av SaaS-applikasjoner

Utfordring #5: Enterprise Application Integration

Enterprise-applikasjonsintegrasjon krever dataintegrasjonsvalidering av både utgående og inngående data, fra klientnettverk til SaaS-applikasjon og omvendt. Datapersonvern krever en grundig validering for å sikre SaaS-abonnenter om sikkerhet og personvern for data.

Utfordring #6: Simulerer live oppgraderingstesting

Skytestingens største utfordring er å sikre at live-oppgraderinger ikke påvirker de eksisterende tilkoblede SaaS-brukerne

Skytesting vs konvensjonell testing

Testparametere Konvensjonell testing Skytesting
Primært testingsmål
  • Sjekk interoperabilitet, kompatibilitet, brukervennlighet.
  • Verifiserer kvaliteten på systemets funksjon og ytelse basert på den gitte spesifikasjonen
  • Verifiserer kvaliteten på ytelsen og funksjonene til SaaS, Clouds og applikasjoner ved å utnytte et skymiljø
Testkostnader
  • Kostnadene er fortsatt høye på grunn av krav til maskinvare og programvare
  • Må bare betale for driftskostnader. Betal bare det du bruker.
Testsimulering
  • Simulerte trafikkdata på nett
  • Simulert online brukertilgang
  • Simulering av trafikkdata på nett
  • Simulering av nettbasert brukertilgang
Funksjonell testing
  • Validering av funksjoner (enhet og system) samt funksjoner
  • Tester ende-til-ende applikasjonsfunksjon på SaaS eller Cloud
Testmiljø
  • Et forhåndsfiksert og konfigurert testmiljø i et testlaboratorium
  • Et åpent offentlig testmiljø med forskjellige dataressurser
Integrasjonstesting
  • Komponent-, arkitektur- og funksjonsbasert testing
  • SaaS-basert integrasjonstesting
Sikkerhetstesting
  • Testing av sikkerhetsfunksjoner basert på prosess, server og personvern
  • Testing av sikkerhetsfunksjoner basert på sky, SaaS og sanntidstester i leverandørers sky
Ytelses- og skalerbarhetstesting
  • Utførte et fast testmiljø
  • Bruk både sanntid og virtuelle online testdata