Samsvarstesting (Conformance Testing) i programvaretesting
Samsvarstesting
Samsvarstesting er en programvaretestingsteknikk som brukes for รฅ bekrefte at programvaresystemet samsvarer med standardene og forskriftene som er definert av IEEE, W3C eller ETSI. Formรฅlet med samsvarstesting er รฅ bestemme hvordan et system som testes bekrefter รฅ oppfylle de individuelle kravene til en bestemt standard. Samsvarstesting kalles ogsรฅ samsvarstesting.
Det kan omhandle noen tekniske aspekter, men med vilje inkluderer det:
- Ytelse
- Funksjoner
- Robusthet
- Interoperabilitet
- Systemets oppfรธrsel
Typer samsvarstesting
Samsvarstesting kan vรฆre logisk eller fysisk, og den omfatter fรธlgende typer testing;
- Testing av samsvar
- Load Testing
- Stresstesting
- Volumtesting

Hvorfor trenger vi samsvarstesting?
- For รฅ sjekke om systemets krav oppfylles
- For รฅ sjekke om systemdokumentasjonen er komplett med nรธdvendig
- For รฅ sjekke utvikling, design og evaluering i henhold til spesifikasjoner
Hva trenger vi รฅ teste?
- Standardene som implementeringen skjer gjennom
- Oppfordringen til systemet som skal utvikles
- Omfang av spesifikasjoner
- Spesifikasjonsmรฅl
Samsvarstesting initieres av ledelsen med full sikkerhet om teamet og deres forstรฅelse av standarder, spesifikasjoner og prosedyrer.
For รฅ bygge en effektiv applikasjon bรธr standarder og spesifikasjoner nevnes tydelig for รฅ unngรฅ uklarheter. Hvis ikke, er samsvarstesting i seg selv nyttig for รฅ ta de nรธdvendige skritt for รฅ gjรธre den relevant og pรฅlitelig.
Nรฅr og hvordan utfรธrer man samsvarstesting?
- Nรฅr vi trenger รฅ kontrollere systemets generelle konsistens, fullstendighet og korrekthet med hensyn til kravspesifikasjoner pรฅ det tidspunktet utfรธres samsvarstesting
- Det er flere metoder for รฅ utfรธre det, ikke mye forskjellig fra vรฅre utviklingsfaser, for eksempel;
- Analysere kravspesifikasjoner
- Utarbeide testplan
- Utarbeidelse av testcases og dens formรฅl
- Lag dokumentasjon for forberedt testdesign
- Vi mรฅ fokusere pรฅ noen tilleggsaspekter ved spesifikasjoner, for eksempel delsett, som vanligvis er av tre typer som "Profil", "Nivรฅ" og "Moduler".
- Profil er et undersett av spesifikasjoner som inkluderer systemets funksjonalitet for รฅ tilfredsstille krav og dedikert til en bestemt gruppe brukere
- Nivรฅer er nestet undersett av spesifikasjoner hvor Level1 angir grunnleggende spesifikasjoner og Level2 indikerer Nivรฅ1 + tilleggs-/nye funksjoner
- Moduler er en samling av signifikant korrelerte standarder og spesifikasjoner
Prosess for samsvarstesting
Prosess for samsvarstesting eller samsvarstesting er nรธdvendig for รฅ sikre effektivitet, ytelse og for รฅ unngรฅ fremtidige risikoer for en programvareapplikasjon. En effektiv samsvarstesting inkluderer fรธlgende trinnvise prosess:
- Analysere standarder og spesifikasjoner
- Velge testverktรธy og testpakke
- Utforming av testprosedyrer
- Kontroller nรธdvendige valideringer
- Tilpasning av relevante testpolicyer og sertifiseringer
La oss ta en rask titt pรฅ en diagrammatisk representasjon av samsvars-/samsvarstestprosessen for bedre forstรฅelse:

Ved hjelp av Use Case vil denne prosessen vรฆre lettere รฅ forstรฅ;
Det er nevnt ovenfor at samsvarstesting noen ganger kalles samsvarstesting, men det er fortsatt noen grunnleggende fakta som gjรธr samsvarstesting forskjellig fra samsvarstesting.
Vi vil vurdere sammenligningen og kontrasten mellom begge;
| Samsvarstesting | Testing av samsvar |
|---|---|
| Samsvarstesting er en formell og presis mรฅte รฅ teste standarder pรฅ | Samsvarstesting er uformell og mindre presis mรฅte รฅ teste standarder pรฅ |
| Sertifisering av samsvar gjelder kun for operativsystemet som har offisiell sertifiseringsinstans | Et operativsystem som gir en enkelt API av POSIX (Portable Operating System Interface) sies รฅ vรฆre kompatible |
| Samsvarstesting brukes til รฅ teste systemet som gir full stรธtte til gitte standarder | Samsvarstesting brukes til รฅ teste systemet som gir stรธtte for noen av de gitte standardene |
Fordeler med samsvarstesting
- Sikrer riktig implementering av spesifikasjoner
- Sikrer portabilitet og interoperabilitet
- Gir hensiktsmessig bruk av standarder
- Gjรธr det mulig รฅ sikre at grensesnitt og funksjoner fungerer som forventet
- Hjelper med รฅ identifisere omrรฅdene som skal samsvare med de som ikke skal tilpasses som syntaks og semantikk
Ulemper med samsvarstesting
Som andre typer testing har ogsรฅ samsvarstesting noen oppgaver som er ganske vanskelige รฅ utfรธre og kan bli en utfordring. Noen av dem er listet opp nedenfor;
- For รฅ utfรธre testing for samsvar effektivt, mรฅ det identifisere klassen av systemet som mรฅ testes sammen med passende metodikk
- Kategorisering av spesifikasjoner i profiler, nivรฅer og moduler
- Forhรฅndsdefinerte verdier
- Utforme utvidelser, alternativer og tilnรฆrminger for รฅ kjรธre testprosessen vellykket.
Samsvarstesting: Kritiske synspunkter:
Samsvarstesting har noen omrรฅder som trenger ekstra oppmerksomhet og kunnskap for vellykket implementering;
- Testmetoder som er best egnet
- Valg av testverktรธy som skal automatisere testprosessen
- Klar forstรฅelse av samsvarstesting som viser kun avvik i stedet for samsvar
- Utforme og implementere program for samsvarstesting
- Definere hvor formelt det skal utfรธres
- Retningslinjer og regulering
Samsvarstesting for mobilt system
Akkurat som andre typer programvaretesting, kan samsvarstesting ogsรฅ gjรธres for Mobil systemer. Nรฅr systemet er satt sammen, kontrolleres det for bruk fรธr det distribueres gjennom samsvarstest.
Avhengig av typen nettverk som GSM eller CDMA, utfรธres testene for รฅ oppnรฅ samsvar og interoperabilitet.
Disse testene kan omfatte;
- Protokolltesting
- Sikkerhet/Sikkerhetstesting
- SIM-kort testing
- Radiofrekvenstesting (RF).
- Lydprรธver
- Spesifikke absorpsjonstester
Eksempel Bruk Case Diagram
Fรธlgende Use Case Diagram viser hvordan samsvarstesten utfรธres for utplasserte mobile systemer;
Videre kan dette utdypes pรฅ fรธlgende mรฅte for SIM-korttesting i to trinn;
- Passordvalidering

- Ringer

Det kan vรฆre to tilfeller for et system som f.eks
1. Ring Suksess
2. Anrop mislyktes
Tilsvarende, for protokolltesting bรธr du vurdere รฅ fรธlge brukstilfelle;

Fรธlgende Testcase-mal vil hjelpe deg รฅ forstรฅ hvordan vi kan skrive testsaker for Protokolltesting
| Test-ID | Testscenario | Teststrinn | Testdata | forventet resultat | Egentlige resultatet | status | Merknader |
|---|---|---|---|---|---|---|---|
| PT001 | Protokollen har ingen vranglรฅs | Start med kommunikasjonsprosessen | _ | Bรธr etablere kommunikasjon vellykket | Kommunikasjon etablert vellykket | Pass | _ |
| PT002 | "Ping"Kommandoen fungerer riktig for tidsavbrudd" | Enter Ping kommando som 'Ping -w' i ledeteksten | Ping 1000 | Skal vise meldingen ยซTransmit Vellykket." | Meldingen viser ยซTransmit Vellykket." | Pass | _ |
| PT003 | Tell nei. av 'ekko'-forespรธrsler | Enter Ping kommando som 'Ping -n' i ledeteksten | Ping 4 | Bรธr starte pinging 0.0.0.4 med 32 byte data og skal vise meldingen "Transmit Vellykket." | Starter pinging 0.0.0.4 med 32 byte data, men viser meldingen "Transmit Mislyktes. | Fail | Semantisk/funksjonell feil |
| PT004 | Enhver stat kan nรฅs fra hvilken som helst stat | Gรฅ ut av en tilstand og gรฅ tilbake til forrige eller neste | _ | Bรธr endre tilstanden | Endret tilstanden vellykket | Pass | _ |
Disse vilkรฅrene viser at samsvarstesting ogsรฅ er nyttig for รฅ teste implementeringen av tekniske standarder.
For รฅ bringe ensartethet inn i testprosessen, blir testtilfellene definert. Avhengig av typen nettverk, kan hundrevis av testtilfeller defineres og utfรธres for รฅ sikre at mobilsystemet fungerer i henhold til kravspesifikasjonen.
Sammendrag
- Samsvarstesting kalles ogsรฅ typetesting, som er en formell mรฅte รฅ teste pรฅ
- Den brukes til รฅ avgjรธre om systemet fรธlger kravspesifikasjonen
- Det inkluderer stresstesting, belastningstesting, volumtesting og samsvarstesting
- Det regnes ogsรฅ som samsvarstesting, men det er grunnleggende forskjeller mellom begge
- Program for samsvarstesting, testmetoder og testverktรธy er noen av de mest kritiske omrรฅdene for samsvarstesting
- Trygghet for standardutnyttelse og interoperabilitet oppnรฅs gjennom samsvarstesting i programvareteknikk.
- Samsvarstesting utfรธres ogsรฅ for mobile systemer.


