Middle
Jak przeprowadzane jest testowanie części backend aplikacji?
sobes.tech AI
Odpowiedź od AI
Testy backend obejmują:
-
Testowanie API:
- Sprawdzanie funkcjonalności endpointów (operacje CRUD, logika biznesowa).
- Walidacja żądań i odpowiedzi (struktura, typy danych, zakresy wartości).
- Testy autoryzacji i uwierzytelniania.
- Sprawdzanie obsługi błędów i wyjątków.
- Użycie narzędzi takich jak Postman, Swagger, cURL.
-
Testowanie bazy danych:
- Sprawdzanie poprawności przechowywania i odczytu danych.
- Testy schematów danych, ograniczeń integralności.
- Sprawdzanie transakcyjności operacji.
- Testy wydajności zapytań.
- Użycie narzędzi klienckich baz danych (SQL Developer, pgAdmin, DBeaver).
-
Testy integracji:
- Sprawdzanie współdziałania backendu z innymi usługami, systemami (bramki płatności, API stron trzecich).
- Testy wymiany danych, formatów (JSON, XML).
- Sprawdzanie obsługi błędów podczas interakcji.
-
Testy wydajności:
- Testy obciążeniowe - ocena zachowania przy oczekiwanym obciążeniu.
- Testy przeciążeniowe - określenie punktu awarii.
- Testy stabilności/długości (soak testing) - wykrywanie wycieków pamięci i degradacji wydajności.
- Użycie narzędzi takich jak JMeter, Gatling, Locust.
-
Testy bezpieczeństwa:
- Sprawdzanie pod kątem OWASP Top 10 (Injection, Broken Authentication, Sensitive Data Exposure itp.).
- Testy podatności z użyciem skanerów (OWASP ZAP, Burp Suite).
- Sprawdzanie uprawnień i ról.
-
Testy jednostkowe i integracyjne (programiści):
- Testy jednostkowe obejmują poszczególne moduły/funkcje.
- Testy integracyjne sprawdzają współdziałanie modułów.
Do automatyzacji używa się frameworków:
- Java: Rest Assured, JUnit, TestNG.
- Python: Requests, Pytest, Django Test Client, Flask Test Client.
- JavaScript (Node.js): Jest, Mocha, Supertest.