Sobes.tech
Junior

Czym jest wydajność (performance) w kontekście testowania oprogramowania?

sobes.tech AI

Odpowiedź od AI

Wydajność w testach to badanie tego, jak system zachowuje się i jak szybko reaguje przy określonym obciążeniu. Celem jest określenie przepustowości, szybkości, skalowalności i stabilności aplikacji.

Kluczowe aspekty:

  • Czas reakcji: Czas, w którym system przetwarza żądanie i zwraca wynik.
  • Przepustowość: Liczba transakcji lub operacji obsługiwanych przez system na jednostkę czasu.
  • Wykorzystanie zasobów: Wskaźniki użycia procesora, pamięci, dysku i sieci pod obciążeniem.
  • Skalowalność: Zdolność systemu do zwiększania wydajności przy wzroście liczby użytkowników lub danych.
  • Stabilność: Zdolność systemu do pracy bez awarii lub degradacji wydajności przy długotrwałym obciążeniu.

Rodzaje testów wydajności:

  • Test obciążeniowy: Ocena zachowania systemu przy oczekiwanym szczytowym obciążeniu.
  • Test stresowy: Sprawdzenie zachowania systemu przy obciążeniu przekraczającym oczekiwane, aby zidentyfikować punkt awarii.
  • Test wytrzymałościowy / test na wytrzymałość: Ocena zachowania systemu przy stałym obciążeniu przez długi czas.
  • Test skalowalności: Określenie efektywności systemu przy zwiększaniu obciążenia.

Narzędzia:

  • JMeter
  • LoadRunner
  • Gatling
  • k6

Celem jest zidentyfikowanie wąskich gardeł, określenie granic wydajności i upewnienie się, że system spełnia wymagania niefunkcjonalne.