PrzedsprzedażAkademia AI w testach i jakości oprogramowania: 1 350 zł zamiast 1 750 zł netto do 30 listopada

Startuje przedsprzedaż Akademii AI w testach i jakości oprogramowania: 5 tygodni z Tomaszem Stelmachem, start 11 stycznia 2027. Wyjątkowa cena 1 350 zł netto zamiast 1 750 zł tylko do 30 listopada.

zostało 38 dniZobacz program i zapisz się
Testy niefunkcjonalne: czym są, rodzaje według ISO/IEC 25010 i przykłady wymagań
Czas czytania: 14 minut

Testy niefunkcjonalne sprawdzają, jak dobrze zachowuje się system, a nie co robi: jak szybko odpowiada, ilu użytkowników wytrzyma, jak broni się przed atakiem, czy da się z niego wygodnie korzystać i jak wraca do działania po awarii. Sylabus ISTQB Certyfikowany Tester Poziom Podstawowy (wersja 4.0.1 z 2024 roku) opisuje je jako ocenę charakterystyk jakościowych innych niż funkcjonalne, a ich listę bierze z normy ISO/IEC 25010. Aplikacja, która liczy poprawnie, ale odpowiada po ośmiu sekundach, dla użytkownika po prostu nie działa.

W tym przewodniku dostajecie model jakości ISO/IEC 25010:2023 zestawiony z nazwami, których nadal używa sylabus ISTQB, przykład mierzalnego wymagania i testu dla każdej charakterystyki, gotowy skrypt k6 z progami, które zatrzymują potok CI, oraz listę błędów, które w testach niefunkcjonalnych kosztują najwięcej.

Czym są testy niefunkcjonalne według ISTQB?

Testy niefunkcjonalne: definicja, ocena użyteczności, wydajności i bezpieczeństwa, czyli jak dobrze zachowuje się system

Według sylabusa ISTQB CTFL v4.0.1 (sekcja 2.2.2) testowanie niefunkcjonalne ocenia atrybuty modułu albo systemu inne niż charakterystyki funkcjonalne, czyli to, „jak dobrze” system się zachowuje. Głównym celem jest sprawdzenie niefunkcjonalnych charakterystyk jakościowych. Sylabus dodaje trzy obserwacje, które warto mieć z tyłu głowy przy planowaniu.

  • Wiele testów niefunkcjonalnych wyrasta z funkcjonalnych. Ten sam scenariusz logowania sprawdzacie raz pod kątem poprawności, a raz z warunkiem, że ma się zmieścić w zadanym czasie.
  • Czasem warto zacząć wcześnie, na przykład w przeglądach wymagań i w testowaniu modułowym. Późne wykrycie defektów niefunkcjonalnych sylabus nazywa poważnym zagrożeniem dla powodzenia projektu.
  • Bywa potrzebne specjalne środowisko, na przykład laboratorium użyteczności albo środowisko o mocy zbliżonej do produkcji.

Testy niefunkcjonalne wykonujecie na wszystkich poziomach testów, od modułowego po akceptacyjny, choć na każdym z innym akcentem. Szerszą mapę typów i poziomów znajdziecie w przeglądzie typów testów oprogramowania i w artykule o poziomach testowania.

Czym różnią się testy funkcjonalne i niefunkcjonalne?

Testy funkcjonalne i niefunkcjonalne pytają o dwie różne rzeczy. Funkcjonalne sprawdzają kompletność, poprawność i adekwatność funkcji, czyli „co” system robi. Niefunkcjonalne sprawdzają, „jak dobrze” to robi. Najłatwiej zobaczyć różnicę na jednym ekranie.

Pytanie Test funkcjonalny logowania Test niefunkcjonalny tego samego logowania
Co sprawdza czy poprawne hasło loguje, a błędne odrzuca jak szybko, dla ilu osób naraz i jak bezpiecznie
Charakterystyka ISO/IEC 25010 przydatność funkcjonalna: poprawność wydajność działania, zabezpieczenia, zdolność do interakcji
Przykładowy wynik oczekiwany po zalogowaniu widać pulpit klienta 95% logowań poniżej 800 ms przy 300 logowaniach na minutę; blokada po 5 błędnych próbach
Typowe narzędzie Playwright, Selenium, test API k6, JMeter, OWASP ZAP, czytnik ekranu
Kiedy wynik jest wiarygodny na każdym stabilnym środowisku na środowisku i danych zbliżonych do produkcji

Źródło: sylabus ISTQB CTFL v4.0.1, sekcja 2.2.2, 2024; ISO/IEC 25010:2023; przykład Quality Island.

To samo rozróżnienie dotyczy wymagań. Wymaganie funkcjonalne mówi, co ma się wydarzyć, a wymaganie niefunkcjonalne nakłada na to warunek jakości. Dlatego pytanie o wymagania funkcjonalne i niefunkcjonalne zawsze sprowadza się do tego samego: czy da się je zmierzyć.

Jakie charakterystyki jakości opisuje ISO/IEC 25010:2023?

ISO/IEC 25010:2023 to aktualna wersja modelu jakości produktu z rodziny SQuaRE. Według zestawienia SonarSource z 2026 roku model ma dziewięć charakterystyk: przydatność funkcjonalną i osiem charakterystyk, które sylabus ISTQB zalicza do niefunkcjonalnych. W porównaniu z wersją z 2011 roku użyteczność przemianowano na zdolność do interakcji, przenaszalność na elastyczność, doszło bezpieczeństwo (safety), a w elastyczności pojawiła się skalowalność. Sylabus ISTQB idzie za tą zmianą tylko częściowo. Wersja 4.0 z 2023 roku wymieniała siedem charakterystyk niefunkcjonalnych w nazwach z normy z 2011 roku. Wersja 4.0.1 z 2024 roku, według własnej listy zmian, zostawiła stare nazwy (usability, portability), dopisała obok nowe (interaction capability, flexibility) i dodała bezpieczeństwo (safety), więc dziś na liście sylabusa jest osiem pozycji. W tabeli niżej pierwsza kolumna podaje polskie nazwy według normy 2023, a w nawiasie dawne nazwy, które nadal stoją w sylabusie, albo termin angielski.

Charakterystyka ISO/IEC 25010:2023 (w nawiasie dawna nazwa albo termin angielski) Podcharakterystyki ISO/IEC 25010:2023 Przykład mierzalnego wymagania Przykład testu
Wydajność działania zachowanie w czasie, wykorzystanie zasobów, pojemność 95% odpowiedzi API koszyka poniżej 500 ms przy 50 żądaniach na sekundę test obciążeniowy k6 z progiem p(95)
Kompatybilność współistnienie, współdziałanie eksport faktur czytany bez błędów przez system księgowy w wersji wskazanej w umowie test integracyjny z prawdziwym plikiem eksportu
Zdolność do interakcji (dawniej użyteczność) rozpoznawalność przydatności, łatwość nauki, łatwość obsługi, ochrona przed błędami użytkownika, zaangażowanie, inkluzywność, wsparcie użytkownika, samoopisowość 4 z 5 nowych użytkowników składa pierwsze zamówienie bez pomocy w 3 minuty test użyteczności z zadaniami, audyt WCAG 2.2
Niezawodność bezbłędność, dostępność, tolerancja na błędy, odtwarzalność dostępność 99,9% miesięcznie; po awarii węzła sesje wracają w 60 s test przełączenia awaryjnego, test długotrwały
Zabezpieczenia (security) poufność, integralność, niezaprzeczalność, rozliczalność, uwierzytelnialność, odporność brak podatności krytycznych i wysokich według OWASP ASVS poziomu 2 przed wydaniem skan DAST, test penetracyjny, przegląd kodu
Utrzymywalność modułowość, ponowne użycie, analizowalność, modyfikowalność, testowalność zero nowych problemów i do 3% duplikacji w nowym kodzie analiza statyczna z bramką jakości
Elastyczność (dawniej przenaszalność) adaptowalność, skalowalność, instalowalność, zastępowalność dołożenie drugiego węzła zwiększa przepustowość co najmniej o 70% test skalowalności przy 1, 2 i 4 węzłach
Bezpieczeństwo (safety) ograniczenia operacyjne, identyfikacja ryzyka, bezpieczne przejście w stan awaryjny, ostrzeganie o zagrożeniu, bezpieczna integracja pompa infuzyjna przy utracie łączności przechodzi w tryb bezpieczny i alarmuje test wstrzykiwania usterek

Źródło: ISO/IEC 25010:2023 według zestawienia SonarSource, 2026; nazwy polskie: sylabus ISTQB CTFL v4.0, wersja PL 4.0.0.1, SJSI 2025; lista charakterystyk w sylabusie: CTFL v4.0.1, sekcja 2.2.2 i lista zmian wersji, ISTQB 2024; przykłady wymagań: Quality Island.

Uwaga na słowo bezpieczeństwo

W polskiej wersji sylabusa ISTQB v4.0 angielskie security to zabezpieczenia, a safety to bezpieczeństwo. Według sylabusa SJSI z 2025 roku „bezpieczeństwo” na liście charakterystyk ISO/IEC 25010 oznacza więc ochronę ludzi i otoczenia przed szkodą, a nie ochronę przed hakerem. Na egzaminie i w umowie z dostawcą to rozróżnienie ma znaczenie: test penetracyjny sprawdza zabezpieczenia, a test przejścia urządzenia medycznego w tryb awaryjny sprawdza bezpieczeństwo.

Jak zapisać mierzalne wymaganie niefunkcjonalne? Przykłady

Wymaganie niefunkcjonalne jest testowalne wtedy, gdy ma pięć elementów: charakterystykę, metrykę, próg, warunki pomiaru i sposób pomiaru. Brak któregokolwiek oznacza, że wynik testu będzie sporem o interpretację. Poniżej przykłady wymagań niefunkcjonalnych, które widzimy w dokumentacji klientów, i ich wersje po poprawce.

Jak bywa zapisane Wersja mierzalna Czym testujecie
System ma działać szybko API wyszukiwarki: 95% odpowiedzi poniżej 400 ms przy 30 żądaniach na sekundę przez 15 minut, środowisko przedprodukcyjne k6 albo JMeter z progiem
Strona ma się szybko ładować LCP do 2,5 s, INP do 200 ms, CLS do 0,1 dla 75. percentyla wizyt na urządzeniach mobilnych dane terenowe CrUX, Lighthouse w CI
Aplikacja ma być bezpieczna spełnia wymagania OWASP ASVS 5.0.0 na poziomie 2 dla modułów logowania i płatności lista ASVS, DAST, test penetracyjny
System ma być stabilny dostępność 99,9% w miesiącu kalendarzowym, RTO 30 min, RPO 5 min monitoring, test odtworzenia z kopii
Ma być dostępna dla wszystkich zgodność z WCAG 2.2 na poziomie AA dla ścieżki zakupu audyt WCAG z czytnikiem ekranu
Ma wytrzymać sezon obsługa 2,2 razy większego ruchu niż w zeszłorocznym szczycie bez wzrostu błędów powyżej 1% test przeciążeniowy na profilu ruchu ze szczytu

Źródło: progi Core Web Vitals: Google web.dev, 2024; OWASP ASVS 5.0.0; przykłady Quality Island.

Każdy taki próg powinien mieć właściciela po stronie biznesu, bo to biznes decyduje, ile kosztuje sekunda opóźnienia albo godzina niedostępności. Wymagania tego typu ćwiczymy na szkoleniu Analiza wymagań niefunkcjonalnych (NFR), a już spisane warto przepuścić przez przegląd, o którym piszemy w artykule o testowaniu statycznym.

Jak przetestować wymaganie wydajnościowe w praktyce?

Wymaganie z pierwszego wiersza tabeli zamienia się w test w kilkunastu liniach. Narzędzie k6 pozwala zapisać próg wprost w skrypcie, a według dokumentacji Grafana k6 test z niespełnionym progiem kończy się statusem błędu i niezerowym kodem wyjścia, więc potok CI sam zatrzyma wydanie.

import http from 'k6/http';
import { check } from 'k6';

export const options = {
  scenarios: {
    rabat_w_koszyku: {
      executor: 'constant-arrival-rate',
      rate: 50,
      timeUnit: '1s',
      duration: '10m',
      preAllocatedVUs: 100,
      maxVUs: 300,
    },
  },
  thresholds: {
    http_req_failed: ['rate<0.01'],
    http_req_duration: ['p(95)<500', 'p(99)<1500'],
  },
};

export default function () {
  const res = http.post(
    'https://test.example.com/api/koszyk/rabat',
    JSON.stringify({ kod: 'JESIEN10' }),
    { headers: { 'Content-Type': 'application/json' } }
  );
  check(res, { 'status 200': (r) => r.status === 200 });
}

Wykonawca constant-arrival-rate utrzymuje stałą liczbę żądań na sekundę niezależnie od tego, jak szybko odpowiada serwer, więc mierzycie dokładnie to, co obiecuje wymaganie: 50 żądań na sekundę. Próg p(95)<500 to 95. percentyl czasu odpowiedzi, a rate<0.01 to mniej niż 1% błędów HTTP. Średnia czasu odpowiedzi to ulubiona metryka osób, które nie chcą wiedzieć, co przeżywa najwolniejsze 5% klientów.

Progi dobrego doświadczenia według Google Core Web Vitals

≤ 2,5 s

LCP, czas wyrenderowania największego elementu treści

≤ 200 ms

INP, opóźnienie reakcji strony na interakcję użytkownika

≤ 0,1

CLS, łączne przesunięcia układu podczas ładowania

75.

percentyl wizyt, osobno dla urządzeń mobilnych i komputerów

Źródło: Google web.dev, Web Vitals, aktualizacja 31.10.2024.

Core Web Vitals mierzą wydajność widzianą w przeglądarce, test k6 mierzy serwer. Potrzebujecie obu, bo szybkie API nie uratuje strony, która blokuje wątek główny trzema megabajtami skryptów. Szczegóły progów i pomiaru opisaliśmy w tekście jak szybko powinna ładować się strona, a rodzaje testów wydajnościowych w przewodniku po testach wydajnościowych.

Jak testować zabezpieczenia, zdolność do interakcji i niezawodność?

Wydajność najłatwiej zmierzyć liczbą, dlatego zespoły często na niej poprzestają. Pozostałe charakterystyki wymagają innych technik i często innych ludzi. Poniżej skrót tego, co sprawdza się w projektach, które prowadziliśmy.

ZABEZPIECZENIAOWASP ASVS 5.0.0 jako lista wymagań, OWASP Web Security Testing Guide jako metodyka, skan DAST w CI i test penetracyjny przed dużym wydaniem.
ZDOLNOŚĆ DO INTERAKCJITest użyteczności z 5 do 8 uczestnikami z grupy docelowej i zadaniami mierzonymi czasem i skutecznością, do tego audyt WCAG 2.2 dla inkluzywności.
NIEZAWODNOŚĆTest długotrwały przez kilka godzin pod stałym obciążeniem, wyłączenie węzła albo bazy w trakcie testu i pomiar czasu powrotu.
KOMPATYBILNOŚĆMacierz przeglądarek i urządzeń z danych analitycznych Waszych użytkowników, a nie wszystkich kombinacji świata.
UTRZYMYWALNOŚĆAnaliza statyczna z bramką jakości na nowym kodzie, mierzona bez uruchamiania aplikacji.
ELASTYCZNOŚĆTesty instalacji i skalowania: nowe środowisko z kodu infrastruktury, przyrost przepustowości po dodaniu węzła.

Testy zabezpieczeń zasługują na osobny akapit, bo tu najczęściej widzimy fałszywe poczucie spokoju po jednym automatycznym skanie. Skaner znajdzie nagłówki i znane wzorce, ale nie znajdzie błędu w logice uprawnień, gdzie klient A widzi fakturę klienta B po zmianie numeru w adresie. Jak to wygląda z perspektywy budżetu, pokazuje artykuł na portalu Strefa QA o tym, ile kosztuje luka bezpieczeństwa, której nikt nie szukał, a zakres testów opisujemy w tekście o testach bezpieczeństwa i testach penetracyjnych.

Najważniejsze cechy testów niefunkcjonalnych: wszystkie poziomy testów, wczesny start, techniki czarnoskrzynkowe, specjalistyczna wiedza

Kiedy planować testy niefunkcjonalne?

Testy niefunkcjonalne przygotowujecie od początku projektu, a wykonujecie wtedy, gdy wynik coś znaczy. Rozkład w czasie wygląda zwykle tak:

Faza Co robicie Po co
Wymagania i backlog spisujecie progi z pięcioma elementami, przegląd pod kątem testowalności bez progu nie ma testu ani odbioru
Projekt architektury przegląd techniczny pod wydajność, skalowalność i zabezpieczenia zła architektura po teście obciążeniowym to najdroższa poprawka
Każdy commit analiza statyczna, skan zależności, krótki test wydajności API na małym ruchu regresja wydajności wykryta w dniu, w którym powstała
Testy systemowe pełne testy obciążeniowe, przeciążeniowe, długotrwałe, test penetracyjny, test użyteczności ocena całego systemu na środowisku zbliżonym do produkcji
Przed szczytem sprzedaży test na profilu ruchu z poprzedniego szczytu z zapasem pewność, że system przetrwa własny sukces
Po zmianie infrastruktury powtórzenie testów wydajności i niezawodności nowa chmura, ta sama obietnica dla klienta

Źródło: sylabus ISTQB CTFL v4.0.1, sekcja 2.2.2; praktyka Quality Island, 2026.

Jakie błędy w testach niefunkcjonalnych kosztują najwięcej?

Najdroższe błędy w testach niefunkcjonalnych są nudne i powtarzalne. Widzimy je u klientów z bankowości, e-commerce i branży medycznej w bardzo podobnej postaci.

  • Test na samym końcu. Test wydajności tydzień przed wdrożeniem zostawia dwie opcje: przesunąć termin albo wdrożyć ze znanym ryzykiem.
  • Próg bez warunków. „Poniżej 2 sekund” bez liczby użytkowników, rodzaju danych i percentyla nic nie znaczy.
  • Średnia zamiast percentyla. Średnia 300 ms potrafi ukryć 8 sekund dla co dwudziestego klienta.
  • Środowisko niepodobne do produkcji. Baza z tysiącem rekordów zamiast dziesięciu milionów daje wynik, który pęka pierwszego dnia.
  • Tylko wydajność. Zabezpieczenia, niezawodność i zdolność do interakcji zostają bez testu, bo trudniej je zmierzyć.
  • Brak powtarzalności. Jednorazowy test przed premierą nie wyłapie regresji wydajności w kolejnych wydaniach.

Z naszej praktyki

W projekcie dla Autono, platformy z branży automotive i wynajmu samochodów, system pozostał stabilny przy obciążeniu większym o 120% w sezonie wakacyjnym, a liczba błędów krytycznych w procesach rezerwacji spadła o 55%.

W projekcie dla Argos, sklepu internetowego, awarie w okresach szczytowych spadły o 72%, a błędy krytyczne na produkcji o 46%. W obu przypadkach punktem wyjścia były mierzalne progi spisane razem z biznesem, a nie narzędzie.

Źródło: case studies Quality Island, liczby potwierdzone przez klientów.

Te wyniki nie wzięły się z jednego testu przed premierą, tylko z testów powtarzanych przy każdym wydaniu. Ile kosztuje taki błąd w liczbach i kiedy test wydajności jest obowiązkowy, opisaliśmy w tekście dlaczego testy wydajnościowe są tak ważne.

Od czego zacząć w Waszym projekcie?

Jeśli w Waszym projekcie testy niefunkcjonalne dziś nie istnieją albo są jednorazowym zrywem, zacznijcie od trzech kroków. Po pierwsze, wybierzcie z tabeli ISO/IEC 25010 trzy charakterystyki najważniejsze dla Waszego biznesu i dla każdej spiszcie jedno mierzalne wymaganie. Po drugie, zamieńcie wymaganie wydajnościowe w skrypt z progiem i wepnijcie go do potoku CI na małym ruchu. Po trzecie, raz na kwartał zróbcie pełny test na środowisku zbliżonym do produkcji i porównajcie wynik z poprzednim.

Jeśli wolicie zlecić to zespołowi, który robił to już wiele razy, prowadzimy testy wydajności, testy bezpieczeństwa, testy dostępności i testy użyteczności. Dla zespołów, które chcą to robić same, mamy szkolenia Testowanie wydajnościowe JMeter oraz Certyfikowany Tester Poziom Podstawowy v4.0, gdzie model ISO/IEC 25010 jest częścią programu.

Co zabrać z tego artykułu

01Testy niefunkcjonalne sprawdzają, jak dobrze działa system; sylabus ISTQB CTFL v4.0.1 bierze listę charakterystyk z ISO/IEC 25010, ale zostawia część nazw z wersji 2011.

02ISO/IEC 25010:2023 ma dziewięć charakterystyk; użyteczność to teraz zdolność do interakcji, przenaszalność to elastyczność, doszło bezpieczeństwo (safety).

03W polskim sylabusie security to zabezpieczenia, a safety to bezpieczeństwo.

04Mierzalne wymaganie ma pięć elementów: charakterystykę, metrykę, próg, warunki i sposób pomiaru.

05Próg w skrypcie k6 zatrzymuje potok CI, a percentyl mówi więcej niż średnia.

Źródło: sylabus ISTQB CTFL v4.0.1, ISO/IEC 25010:2023, Google web.dev, Grafana k6, case studies Quality Island.

Chcecie sprawdzić, czy Wasz system wytrzyma najbliższy szczyt ruchu? Opiszcie scenariusz i oczekiwany ruch, zaproponujemy zakres testów i progi.

Zamówcie testy wydajności


Powiązane na blogu Quality Island

Pełna lista źródeł

Co o tym sądzisz?

Dodaj komentarz

Bądź na bieżąco
Strefa QA, portal z eksperckimi artykułami o jakości oprogramowania
Bądź na bieżąco
Testy bezpieczeństwa dla początkujących
Testy bezpieczeństwa dla początkujących: OWASP Top 10 i pierwsze testy aplikacji webowych

1 000,00 zł

18.11.26, 09.12.26, 13.01.27, 03.02.27, 24.02.27, 17.03.27
1 dzień
AI Act w wyrobach medycznych
AI Act w wyrobach medycznych: testy i dokumentacja AI pod MDR

1 690,00 zł

30.11.26, 18.01.27, 08.03.27
1 dzień
AI Act w bankowości i ubezpieczeniach
AI Act w bankowości i ubezpieczeniach: scoring kredytowy, wycena ubezpieczeń i FRIA

1 690,00 zł

27.11.26, 15.01.27, 05.03.27
1 dzień
Popularne artykuły
Język Gherkin: co to jest i jak go używać w testowaniu oprogramowania
Smoke test: co to jest, kiedy go uruchamiać i czym różni się od sanity testu
Jak zostać testerem oprogramowania: ścieżka krok po kroku bez dyplomu informatyka
Najnowsze artykuły
Testowanie migracji danych i systemów: co sprawdzić, zanim przełączycie produkcję
Metryki DORA psują się w erze AI: dlaczego szybkość wydawania przestaje być dowodem jakości
OWASP Top 10:2025 okiem testera: co sprawdzić w każdej z dziesięciu kategorii
Popularne kategorie