Sobes.tech
Junior

Kas ir ekvivalences klases analīzes tehnika un kā tā tiek izmantota programmatūras testēšanā?

sobes.tech AI

Atbilde no AI

Ekvivalences klases analīzes tehnika (Equivalence Partitioning) ir testēšanas gadījumu projektēšanas metode, kas balstās uz ievades datu (vai izejas nosacījumu) sadalīšanu klasēs, kuru pārstāvji tiks apstrādāti līdzīgā veidā programmā. Uzskatāms, ka pietiek ar viena pārstāvja testēšanu no katras klases, lai būtu pārklāta visa klase.

Galvenā ideja: Ja viena klases pārstāvja tests atklāj kļūdu, tad, visticamāk, to atklās arī citi pārstāvji. Ja viena pārstāvja tests neatrod kļūdu, tad, visticamāk, to neatradīs arī citi.

Pielietojums:

  1. Ekvivalences klases identificēšana:
    • Nosaka atļautās un neatļautās klases katram ievades laukam (skaitļu diapazons, virkņu kopums, loģiskās vērtības utt.).
    • Skaitļu diapazonu gadījumā:
      • Atļautais diapazons.
      • Skaitļi mazāki par apakšējo robežu (neatļautā klase).
      • Skaitļi lielāki par augšējo robežu (neatļautā klase).
    • Vērtību kopu gadījumā:
      • Atļautās vērtības.
      • Neatļautās vērtības (piemēram, virknes skaitļu laukā).
    • Piemēram, lauka "Vecums" gadījumā no 18 līdz 65 gadiem:
      • Atļautā klase: 18-65 (piemēram, 25, 40, 60)
      • Neatļautā klase: < 18 (piemēram, 17, 0)
      • Neatļautā klase: > 65 (piemēram, 66, 100)
  2. Testa gadījumu izveide:
    • Katras identificētās klases pārstāvis tiek izvēlēts (atļautais un neatļautais).
    • Tiek izveidoti testa gadījumi ar izvēlētajiem pārstāvjiem kā ievades datiem.

Piemērs:

Pasūtījuma forma, lauks "Preču skaits", atļautā vērtība no 1 līdz 99.

Ekvivalences klase Tips Testa pārstāvji
Mazāk par 1 Neatļauta 0, -5
No 1 līdz 99 Atļauta 1, 50, 99
Vairāk par 99 Neatļauta 100, 1000
Nereģistrētas vērtības Neatļauta "abc", " "

No katras klases tiek izvēlēts vismaz viens pārstāvis, lai izveidotu testa gadījumu. Piemēram, šim laukam būs vismaz 4-6 testa gadījumi, kas aptver visas identificētās klases.

Priekšrocības:

  • Samazina lieko testa gadījumu skaitu.
  • Palīdz sistematizēt testēšanas procesu.
  • Nodrošina labu testēšanas pārklājumu ar mazāku testu skaitu, salīdzinot ar katras iespējamās ievades vērtības testēšanu.

Trūkumi:

  • Var nepamanīt kļūdas robežvērtībās (bieži tiek izmantota kopā ar robežvērtību analīzi).
  • Efektivitāte ir atkarīga no pareizas ekvivalentīgo klasu identifikācijas.