Reliability Testing Tutorial: Hvad er, metoder, værktøjer, eksempel

Indholdsfortegnelse:

Anonim

Pålidelighedstest

Reliability Testing er en softwaretestproces, der kontrollerer, om softwaren kan udføre en fejlfri operation i en bestemt tidsperiode i et bestemt miljø. Formålet med pålidelighedstest er at sikre, at softwareproduktet er fejlfrit og pålideligt nok til det forventede formål.

Pålidelighed betyder "at give det samme", med andre ord betyder ordet "pålidelig", at noget er pålideligt, og at det vil give det samme resultat hver gang. Det samme gælder for pålidelighedstest.

I denne vejledning lærer du-

  • Hvad er pålidelighedstestning?
  • Eksempel på pålidelighedstest
  • Faktorer, der påvirker pålidelighed af software
  • Hvorfor foretage pålidelighedstest
  • Typer af pålidelighed Testning
  • Sådan udføres pålidelighedstest
  • Eksempelmetoder til pålidelighedstest
  • Pålidelighedstestværktøjer

Eksempel på pålidelighedstest

Sandsynligheden for, at en pc i en butik kører i otte timer uden at gå ned, er 99%; dette kaldes pålidelighed.

Pålidelighedstest kan kategoriseres i tre segmenter,

  • Modellering
  • Måling
  • Forbedring

Følgende formel er til beregning af sandsynligheden for fiasko.

Sandsynlighed = Antal manglende sager / Samlet antal sager under overvejelse

Faktorer, der påvirker pålidelighed af software

  1. Antallet af fejl, der findes i softwaren
  2. Den måde, brugerne betjener systemet på
  • Pålidelighedstest er en af ​​nøglen til bedre softwarekvalitet. Denne test hjælper med at opdage mange problemer i softwaredesignet og funktionaliteten.
  • Hovedformålet med pålidelighedstest er at kontrollere, om softwaren opfylder kravet om kundens pålidelighed.
  • Pålidelighedstest udføres på flere niveauer. Komplekse systemer testes på enheds-, monterings-, undersystem- og systemniveauer.

Hvorfor foretage pålidelighedstest

Pålidelighedstest udføres for at teste softwareydelsen under de givne betingelser.

Målet bag udførelse af pålidelighedstest er,

  1. At finde strukturen i gentagne fejl.
  2. At finde antallet af fejl, der opstår, er den angivne tid.
  3. At finde hovedårsagen til fiasko
  4. At udføre ydelsestestning af forskellige moduler af softwareapplikationer efter fejlrettelse

Efter frigivelsen af ​​produktet kan vi også minimere muligheden for fejl og dermed forbedre softwarens pålidelighed. Nogle af de nyttige værktøjer til dette er - Trendanalyse, Orthogonal Defect Classification og formelle metoder osv ...

Typer af pålidelighed Testning

Test af softwarepålidelighed inkluderer funktionstest, belastningstest og regressionstest

Funktionstest: -

Fremhævet test kontrollerer funktionen leveret af softwaren og udføres i følgende trin: -

  • Hver handling i softwaren udføres mindst én gang.
  • Interaktionen mellem de to operationer er reduceret.
  • Hver operation skal kontrolleres for korrekt udførelse.

Belastningstest: -

Normalt fungerer softwaren bedre i begyndelsen af ​​processen, og derefter nedbrydes den. Load Testing udføres for at kontrollere ydelsen af ​​softwaren under maksimal arbejdsbelastning.

Regressionstest: -

Regressionstest bruges hovedsageligt til at kontrollere, om der er introduceret nye fejl på grund af reparation af tidligere fejl. Regressionstest udføres efter hver ændring eller opdatering af softwarefunktionerne og deres funktionalitet.

Sådan udføres pålidelighedstest

Pålidelighedstestning er dyrt sammenlignet med andre typer af test. Så korrekt planlægning og ledelse er påkrævet, mens du foretager pålidelighedstest. Dette inkluderer testproces, der skal implementeres, data for testmiljø, testplan, testpunkter osv.

Til at begynde med pålidelighedstest skal testeren fortsætte med at følge tingene,

  • Etablere pålidelighedsmål
  • Udvikle operationel profil
  • Planlæg og udfør tests
  • Brug testresultater til at føre beslutninger

Som vi diskuterede tidligere, er der tre kategorier, hvor vi kan udføre Reliability Testing - Modellering, måling og forbedring .

De vigtigste parametre involveret i pålidelighedstestning er: -

  • Sandsynlighed for fejlfri drift
  • Længde af tid til fejlfri drift
  • Det miljø, hvor det udføres

Trin 1) Modellering

Softwaremodelleringsteknik kan opdeles i to underkategorier:

1. Forudsigelsesmodellering

2. Estimeringsmodellering

  • Meningsfulde resultater kan opnås ved at anvende egnede modeller.
  • Antagelser og abstraktioner kan laves for at forenkle problemerne, og ingen enkelt model passer til alle situationer.

    De største forskelle mellem to modeller er: -

Problemer Forudsigelsesmodeller Estimeringsmodeller
Datareference Det bruger historiske data Den bruger aktuelle data fra softwareudviklingen.
Når det bruges i udviklingscyklus Det oprettes normalt inden udviklings- eller testfaserne. Det vil normalt blive brugt på det senere stadium af softwareudviklings livscyklus.
Tidsramme Det vil forudsige pålideligheden i fremtiden. Det vil forudsige pålideligheden enten i den nuværende tid eller i den fremtidige tid.

Trin 2) Måling

Softwarepålidelighed kan ikke måles direkte, og andre relaterede faktorer overvejes derfor for at estimere softwarepålideligheden. Den nuværende praksis for måling af softwarepålidelighed er opdelt i fire kategorier: -

1. Produktmålinger: -

Produktmålinger er kombinationen af ​​fire typer målinger:

  • Softwarestørrelse : - Line of Code (LOC) er en intuitiv indledende tilgang til måling af softwarestørrelsen. Kun kildekoden tælles i denne metric, og kommentarerne og andre ikke-eksekverbare udsagn tælles ikke.
  • Funktionspunkt Metric : - Funktion Pont Metric er metoden til måling af funktionaliteten i Softwareudvikling. Den vil overveje antallet af indgange, output, masterfiler osv. Den måler den leverede funktionalitet til brugeren og er uafhængig af programmeringssproget.
  • Kompleksitet : - Det er direkte relateret til softwarepålidelighed, så det er vigtigt at repræsentere kompleksitet. Kompleksitetsorienteret metrisk er en metode til at bestemme kompleksiteten af ​​et programs kontrolstruktur ved at forenkle koden til en grafisk repræsentation.
  • Testdækningsmålinger : - Det er en måde at estimere fejl og pålidelighed ved at udføre den komplette test af softwareprodukter. Softwares pålidelighed betyder, at det er funktionen til at bestemme, at systemet er blevet fuldstændigt verificeret og testet.

2. Metrics for projektledelse

  • Forskere har indset, at god ledelse kan resultere i bedre produkter.
  • En god ledelse kan opnå højere pålidelighed ved at bruge bedre udviklingsproces, risikostyringsproces, konfigurationsstyringsproces osv.

3. Procesmålinger

Produktets kvalitet er direkte relateret til processen. Procesmålinger kan bruges til at estimere, overvåge og forbedre pålideligheden og kvaliteten af ​​softwaren.

4. Fejl- og fejlmålinger

Fejl- og fejlmålinger bruges hovedsageligt til at kontrollere, om systemet er helt fejlfrit. Både de typer fejl, der blev konstateret under testprocessen (dvs. inden levering) såvel som den fejl, der blev rapporteret af brugerne efter levering, indsamles, opsummeres og analyseres for at nå dette mål.

Softwares pålidelighed måles i form af gennemsnitstid mellem fejl (MTBF) . MTBF består af

  • Middel til fiasko (MTTF): Det er tidsforskellen mellem to på hinanden følgende fejl
  • Gennemsnitlig tid til reparation (MTTR): Det er den tid, det tager at rette fejlen.
MTBF = MTTF + MTTR

Pålidelighed for god software er et tal mellem 0 og 1.

Pålideligheden øges, når fejl eller fejl fra programmet fjernes.

Trin 3) Forbedring

Forbedring afhænger fuldstændigt af de problemer, der opstod i applikationen eller systemet, ellers softwarets karakteristika. I henhold til kompleksiteten af ​​softwaremodulet vil forbedringsmåden også variere. To hovedbegrænsninger tid og budget, som vil begrænse indsatsen i forbedring af softwares pålidelighed.

Eksempelmetoder til pålidelighedstest

Test for pålidelighed handler om at udøve en applikation, så fejl opdages og fjernes, inden systemet implementeres.

Der er primært tre tilgange brugt til pålidelighedstest

  • Test-test igen pålidelighed
  • Parallel Forms Pålidelighed
  • Beslutningskonsistens

Nedenfor forsøgte vi at forklare alle disse med et eksempel.

Test-test igen pålidelighed

For at estimere pålideligheden af ​​test-gentest udfører en enkelt gruppe af eksaminanter testprocessen med få dage eller uges mellemrum. Tiden skal være kort nok til, at eksaminandens færdigheder i området kan vurderes. Forholdet mellem eksaminandens score fra to forskellige administrationer estimeres gennem statistisk sammenhæng. Denne type pålidelighed viser, i hvilket omfang en test er i stand til at producere stabile, konsistente scores på tværs af tiden.

Parallel Forms Pålidelighed

Mange eksamener har flere formater af spørgsmål, disse parallelle eksamensformer giver sikkerhed. Parallel formulares pålidelighed estimeres ved at administrere begge eksamensformer til den samme gruppe af eksaminanter. Eksamenens score på de to testformularer er korreleret for at bestemme, hvor ens de to testformularer fungerer på samme måde. Dette pålidelighedsestimat er et mål for, hvor ensartede eksaminanders score kan forventes at være på tværs af testformularer.

Beslutningskonsistens

Efter at have foretaget Test-Retest Reliability og Parallel Form Reliability, får vi et resultat af eksaminanter, der enten består eller ikke. Det er pålideligheden af ​​denne klassificeringsbeslutning, der estimeres i beslutningens konsistens pålidelighed.

Betydningen af ​​pålidelighedstest

En grundig vurdering af pålidelighed er nødvendig for at forbedre ydelsen af ​​softwareprodukt og proces. At teste softwares pålidelighed vil i vid udstrækning hjælpe softwareadministratorer og praktikere.

For at kontrollere pålideligheden af ​​softwaren via test: -

  1. Et stort antal testsager skal udføres i en længere periode for at finde ud af, hvor længe softwaren udføres uden fejl.
  2. Testcases-distributionen skal matche den aktuelle eller planlagte operationelle profil for softwaren. Jo oftere en funktion af softwaren udføres, jo større er procentdelen af ​​testsager, der skal tildeles den funktion eller delmængde.

Pålidelighedstestværktøjer

Nogle af de værktøjer til pålidelighedstest, der bruges til softwarepålidelighed, er:

1. WEIBULL ++: - Analyse af pålidelighedslivsdata

2. RGA: - Analyse af pålidelighedsvækst

3. RCM: -Pålidelighed centreret vedligeholdelse

Resumé:

Pålidelighedstestning er den vigtige del af et program for pålidelighedsteknik. Mere korrekt er det sjælen i program for pålidelighedsteknik.

Desuden er pålidelighedstest hovedsageligt designet til at afdække bestemte fejltilstande og andre problemer under softwaretest.

I softwareteknik kan pålidelighedstest kategoriseres i tre segmenter,

  • Modellering
  • Måling
  • Forbedring

Faktorer, der påvirker pålidelighed af software

  • Antallet af fejl, der findes i softwaren
  • Den måde, brugerne betjener systemet på