Overholdelsestest (Conformance Testing) i softwaretest

Overensstemmelsestest

Overensstemmelsestest er en softwaretestteknik, der bruges til at bekrรฆfte, at softwaresystemet overholder standarderne og reglerne som defineret af IEEE, W3C eller ETSI. Formรฅlet med overensstemmelsestestning er at bestemme, hvordan et system, der testes, bekrรฆfter at opfylde de individuelle krav i en bestemt standard. Overensstemmelsestest kaldes ogsรฅ for overholdelsestest.

Det kan omhandle nogle tekniske aspekter, men med vilje inkluderer det:

  • Ydeevne
  • Funktioner
  • Robusthed
  • Interoperabilitet
  • Systemets opfรธrsel

Typer af overensstemmelsestest

Overensstemmelsestest kan vรฆre logisk eller fysisk, og det omfatter fรธlgende typer af test;

Overensstemmelsestest
Overensstemmelsestest

Hvorfor har vi brug for overensstemmelsestest?

  • For at kontrollere, om systemets krav opfyldes
  • For at kontrollere, om systemdokumentationen er komplet med nรธdvendig
  • For at kontrollere udvikling, design og evaluering i henhold til specifikationer

Hvad skal vi teste?

  • De standarder, hvorigennem implementeringen finder sted
  • Opfordringen til det system, der skal udvikles
  • Specifikationernes omfang
  • Specifikationsmรฅl

Overensstemmelsestest initieres af ledelsen med fuld sikkerhed for holdet og deres forstรฅelse af standarder, specifikationer og procedurer.

For at opbygge en effektiv applikation bรธr standarder og specifikationer vรฆre tydeligt nรฆvnt for at undgรฅ uklarheder. Hvis ikke, er overensstemmelsestest i sig selv nyttig til at tage de nรธdvendige skridt for at gรธre den relevant og pรฅlidelig.

Hvornรฅr og hvordan udfรธrer man overensstemmelsestest?

  • Nรฅr vi skal kontrollere systemets overordnede konsistens, fuldstรฆndighed og korrekthed med hensyn til kravspecifikationer pรฅ det tidspunkt udfรธres overensstemmelsestest
  • Der er flere metoder til at udfรธre det, ikke meget anderledes end vores udviklingsfaser, sรฅsom;
  • Analyse af kravspecifikationer
  • Udarbejdelse af testplan
  • Udarbejdelse af testcases og dets formรฅl
  • Opret dokumentation for forberedte testdesigns
  • Vi er nรธdt til at fokusere pรฅ nogle yderligere aspekter af specifikationer sรฅsom delmรฆngder, som generelt er af tre typer sรฅsom 'Profil', 'Niveau' og 'Moduler'.
  • Profil er en undergruppe af specifikationer, som inkluderer systemets funktionalitet til at tilfredsstille krav og dedikeret til en bestemt gruppe af brugere
  • Niveauer er indlejrede undersรฆt af specifikationer hvor Level1 angiver grundlรฆggende specifikationer og Level2 angiver niveau1 + yderligere/nye funktionaliteter
  • Moduler er en samling af signifikant korrelerede standarder og specifikationer

Overensstemmelsestestproces

Overensstemmelsestestproces eller Compliance Test Process er nรธdvendig for at sikre effektivitet, ydeevne og for at undgรฅ fremtidige risici for en softwareapplikation. En effektiv overensstemmelsestest omfatter fรธlgende trinvise proces:

  1. Analyse af standarder og specifikationer
  2. Valg af testvรฆrktรธjer og testpakke
  3. Design af testprocedurer
  4. Kontrol af nรธdvendige valideringer
  5. Tilpasning af relevante testpolitikker og certificeringer

Lad os tage et hurtigt kig pรฅ en diagrammatisk reprรฆsentation af overensstemmelses-/overensstemmelsestestproces for bedre forstรฅelse:

Overensstemmelsestestproces
Overholdelsestestproces

Ved hjรฆlp af Use Case bliver denne proces lettere at forstรฅ;

Overensstemmelsestestproces

Det er nรฆvnt ovenfor, at overensstemmelsestest af og til kaldes overensstemmelsestest, men der er stadig nogle grundlรฆggende fakta, der gรธr overensstemmelsestest forskellig fra overensstemmelsestest.

Vi vil gennemgรฅ sammenligningen og kontrasten mellem begge;

Overensstemmelsestest Overholdelsestest
Overensstemmelsestest er en formel og prรฆcis mรฅde at teste standarder pรฅ Overholdelsestest er en uformel og mindre prรฆcis mรฅde at teste standarder pรฅ
Certificering af overensstemmelse gรฆlder kun for det operativsystem, der er i besiddelse af en officiel certificeringsmyndighed Et operativsystem, der giver en enkelt API af POSIX (Portable Operating System Interface) siges at vรฆre kompatibel
Overensstemmelsestest bruges til at teste systemet, der giver fuld support til givne standarder Overholdelsestest bruges til at teste systemet, der understรธtter nogle af de givne standarder

Fordele ved overensstemmelsestest

  1. Sikrer korrekt implementering af specifikationer
  2. Sikrer portabilitet og interoperabilitet
  3. Giver passende brug af standarder
  4. Gรธr det muligt at sikre, at grรฆnseflader og funktioner fungerer som forventet
  5. Hjรฆlper med at identificere de omrรฅder, der skal tilpasses dem, der ikke skal tilpasses, sรฅsom syntaks og semantik

Ulemper ved overensstemmelsestest

Ligesom andre typer test, har Overensstemmelsestest ogsรฅ nogle opgaver, der er ret svรฆre at udfรธre og kan blive en udfordring. Nogle af dem er anfรธrt nedenfor;

  1. For at udfรธre test for overensstemmelse effektivt, skal det identificere den klasse af systemet, der skal testes sammen med den passende metode
  2. Kategorisering af specifikationer i profiler, niveauer og moduler
  3. Foruddefinerede vรฆrdier
  4. Design af udvidelser, muligheder og tilgange til at kรธre testprocessen med succes.

Overensstemmelsestest: Kritiske synspunkter:

Overensstemmelsestest har nogle omrรฅder, der krรฆver ekstra opmรฆrksomhed og viden for en vellykket implementering;

  1. Testmetoder, der er bedst egnede
  2. Valg af testvรฆrktรธj, der vil automatisere testprocessen
  3. Klar forstรฅelse af overensstemmelsestest, der kun viser manglende overensstemmelse i stedet for overensstemmelse
  4. Design og implementering af overensstemmelsestestprogram
  5. Definerer, hvor formelt det skal udfรธres
  6. Politikker og regulering

Overensstemmelsestest for mobilt system

Ligesom andre typer af softwaretest, kan overensstemmelsestest ogsรฅ udfรธres for Mobil systemer. Nรฅr fรธrst systemet er samlet, kontrolleres det for brug fรธr dets implementering gennem overensstemmelsestest.

Afhรฆngigt af typen af โ€‹โ€‹netvรฆrk, sรฅsom GSM eller CDMA, udfรธres testene for at opnรฅ overensstemmelse og interoperabilitet.
Disse tests kan omfatte;

  • Protokoltestning
  • Sikkerhed/Sikkerhedstest
  • SIM-kort test
  • Radiofrekvenstest (RF).
  • Lydprรธver
  • Specifikke absorptionstest

Eksempel Use Case Diagram

Fรธlgende Use Case Diagram viser, hvordan overensstemmelsestesten udfรธres for implementerede mobile systemer;

Eksempel Use Case Diagram

Ydermere kan dette uddybes pรฅ fรธlgende mรฅde for SIM-korttest i to trin;

  1. Validering af adgangskode
Validering af adgangskode
Validering af adgangskode
  1. Ringer
Ringer
Ringer

Der kan vรฆre to sager for et system som f.eks

1. Ring til succes

2. Opkald mislykkedes

Tilsvarende skal du overveje fรธlgende Use Case til protokoltestning;

Protokoltestning
Protokoltestning

Fรธlgende Test Case skabelon vil hjรฆlpe dig med at forstรฅ, hvordan vi kan skrive testcases til Protokoltestning

Test-id Testscenarie Test trin Testdata forventet resultat Faktisk resultat Status Bemรฆrkninger
PT001 Protokol har ingen dรธdvande Start med kommunikationsprocessen _ Bรธr etablere kommunikation med succes Kommunikation etableret med succes Pass _
PT002 "Ping"-kommandoen fungerer korrekt for timeout Indtast Ping-kommandoen som 'Ping -w' i kommandoprompten Ping 1000 Skal vise meddelelsen "Transmit vellykket." Meddelelsen viser "Transmit vellykket." Pass _
PT003 Tรฆl nej. af 'ekko'-anmodninger Indtast Ping-kommandoen som 'Ping -n' i kommandoprompten Ping 4 Bรธr begynde at pinge 0.0.0.4 med 32 bytes data og bรธr vise meddelelsen "Transmit succesfuldt." Begynder at pinge 0.0.0.4 med 32 bytes data, men viser beskeden "Transmit Failed." Fail Semantisk/funktionel fejl
PT004 Enhver stat kan nรฅs fra enhver stat Forlad en tilstand og vend tilbage til forrige eller nรฆste _ Bรธr med succes รฆndre tilstanden Det lykkedes at รฆndre tilstanden Pass _

Disse vilkรฅr viser, at overensstemmelsestest ogsรฅ er nyttig til at teste implementeringen af โ€‹โ€‹tekniske standarder.

For at bringe ensartethed ind i testprocessen er testcaserne ved at blive defineret. Afhรฆngigt af typen af โ€‹โ€‹netvรฆrk kan hundredvis af testcases defineres og udfรธres for at sikre, at mobilsystemet fungerer i henhold til kravspecifikationen.

Resumรฉ

  • Overensstemmelsestest kaldes ogsรฅ typetestning, som er en formel mรฅde at teste pรฅ
  • Det bruges til at afgรธre, om systemet fรธlger kravspecifikation
  • Det omfatter stresstest, belastningstest, volumentest og overensstemmelsestest
  • Det betragtes ogsรฅ som overensstemmelsestest, men der er grundlรฆggende forskelle mellem begge
  • Overensstemmelsestestprogram, testmetoder og testvรฆrktรธjer er nogle af de mest kritiske omrรฅder af overensstemmelsestest
  • Sikkerhed for standardudnyttelse og interoperabilitet opnรฅs gennem overensstemmelsestest i softwareteknologi.
  • Overensstemmelsestest udfรธres ogsรฅ for mobile systemer.

Opsummer dette indlรฆg med: