Les proves no funcionals són un aspecte crucial del procés de proves de programari que se centra en verificar els atributs de qualitat del sistema, com ara el rendiment, la seguretat, la usabilitat i la compatibilitat. Aquest tipus de proves assegura que el sistema compleixi amb els requisits no funcionals especificats i ofereixi una experiència d'usuari òptima.

Objectius de les Proves No Funcionals

  1. Avaluar el Rendiment: Mesurar la capacitat del sistema per gestionar càrregues de treball sota diferents condicions.
  2. Garantir la Seguretat: Identificar vulnerabilitats i assegurar que el sistema protegeix les dades i la privacitat dels usuaris.
  3. Verificar la Usabilitat: Assegurar que el sistema sigui fàcil d'utilitzar i intuïtiu per als usuaris finals.
  4. Comprovar la Compatibilitat: Assegurar que el sistema funcioni correctament en diferents entorns, plataformes i dispositius.

Tipus de Proves No Funcionals

  1. Proves de Rendiment

Les proves de rendiment avaluen la velocitat, l'escalabilitat i l'estabilitat del sistema sota càrregues de treball específiques.

  • Proves de Càrrega: Mesuren el rendiment del sistema sota una càrrega esperada.
  • Proves d'Estrès: Avaluen el comportament del sistema sota càrregues extremes.
  • Proves de Volum: Comproven el rendiment amb grans volums de dades.
  • Proves d'Escalabilitat: Determinen la capacitat del sistema per augmentar la seva capacitat de servei.

  1. Proves de Seguretat

Aquestes proves identifiquen vulnerabilitats en el sistema per protegir-lo contra atacs i accessos no autoritzats.

  • Proves de Vulnerabilitat: Detecten punts febles en el sistema.
  • Proves de Penetració: Simulen atacs per identificar possibles bretxes de seguretat.
  • Proves d'Autenticació: Verifiquen que els mecanismes d'autenticació funcionin correctament.

  1. Proves d'Usabilitat

Les proves d'usabilitat asseguren que el sistema sigui fàcil d'utilitzar i comprensible per als usuaris finals.

  • Proves d'Interfície d'Usuari: Avaluen la facilitat d'ús de la interfície.
  • Proves d'Accessibilitat: Asseguren que el sistema sigui accessible per a persones amb discapacitats.

  1. Proves de Compatibilitat

Aquestes proves asseguren que el sistema funcioni correctament en diferents entorns i plataformes.

  • Proves de Plataforma: Verifiquen el funcionament en diferents sistemes operatius i navegadors.
  • Proves de Dispositiu: Comproven la compatibilitat amb diversos dispositius, com ara mòbils i tauletes.

Exemple Pràctic: Prova de Rendiment

A continuació, es mostra un exemple de com es podria realitzar una prova de càrrega utilitzant una eina de proves de rendiment com JMeter:

1. Configura un pla de prova a JMeter.
2. Afegeix un "Thread Group" per simular usuaris concurrents.
3. Defineix el nombre de fils (usuaris virtuals) i el període de ramp-up.
4. Afegeix un "HTTP Request" per simular les peticions al servidor.
5. Configura els paràmetres de la petició, com la URL i el mètode HTTP.
6. Afegeix un "Listener" per recollir i visualitzar els resultats.
7. Executa la prova i analitza els resultats per identificar colls d'ampolla.

Exercici Pràctic

Objectiu: Realitzar una prova de compatibilitat bàsica.

  1. Selecciona una aplicació web que utilitzis regularment.
  2. Prova l'aplicació en almenys tres navegadors diferents (per exemple, Chrome, Firefox, Safari).
  3. Documenta qualsevol problema de compatibilitat que trobis, com ara problemes de visualització o funcionalitat.
  4. Proposa solucions per als problemes identificats.

Solució:

  • Problema: L'aplicació no es visualitza correctament a Safari.
  • Solució Proposada: Revisar i ajustar els estils CSS per assegurar la compatibilitat amb WebKit, el motor de renderització de Safari.

Conclusió

Les proves no funcionals són essencials per garantir que un sistema no només compleixi amb els requisits funcionals, sinó que també ofereixi una experiència d'usuari de qualitat. A través de proves de rendiment, seguretat, usabilitat i compatibilitat, els provadors poden identificar i solucionar problemes que podrien afectar negativament els usuaris finals. En el següent mòdul, explorarem les proves de regressió i com assegurar que les noves actualitzacions no introdueixin errors en el sistema existent.

© Copyright 2024. Tots els drets reservats