Junior
Znáš nějaké typy testů?
sobes.tech AI
Odpověď od AI
Ano, vím.
Hlavní typy testování:
-
Funkční testování:
- Test kouře (Smoke Testing)
- Test rozumnosti (Sanity Testing)
- Integrační testování (Integration Testing)
- Systémové testování (System Testing)
- Regresní testování (Regression Testing)
- Přijímací testování (Acceptance Testing) - včetně alfa a beta testování.
-
Nefunkční testování:
- Výkonnostní testování (Performance Testing) - zahrnuje zátěžové, stresové a objemové testování.
- Bezpečnostní testování (Security Testing)
- Testování použitelnosti (Usability Testing)
- Testování kompatibility (Compatibility Testing)
- Testování spolehlivosti (Reliability Testing)
- Testování přístupnosti (Accessibility Testing)
- Testování lokalizace (Localization Testing)
- Testování internacionalizace (Internationalization Testing)
-
Testování související se změnami:
- Test kouře (Smoke Testing)
- Regresní testování (Regression Testing)
-
Strukturální testování (na základě kódu):
- Modulové testování (Unit Testing)
- Testování bílého boxu (White Box Testing)
-
Testování na základě zkušeností:
- Vyšetřovací testování (Exploratory Testing)
- Testování na základě kontrolního seznamu (Checklist-based Testing)
- Testování na základě scénářů (Scenario-based Testing)
Příklady použití některých typů:
| Typ testování | Krátký popis | Kdy se používá |
|---|---|---|
| Test kouře | Kontrola hlavních funkcí po sestavení nebo nasazení. | Každé nové sestavení. |
| Regresní testování | Kontrola, že změny nezpůsobily nové vady v existující funkčnosti. | Po každé změně nebo opravě vady. |
| Zátěžové testování | Kontrola chování systému při očekávané zátěži. | Před spuštěním do provozu, při změnách architektury. |
| Modulové testování | Testování jednotlivých komponent nebo modulů kódu. | Ve fázi vývoje, vývojáři. |
V automatizaci testování často automatizujeme regresní testy, integrační testy a někdy i testy výkonu a bezpečnosti.
// Příklad jednotkových testů (JUnit)
public class Calculator {
public int add(int a, int b) {
return a + b;
}
}
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
class CalculatorTest {
@Test
void testAdd() {
Calculator calculator = new Calculator();
assertEquals(5, calculator.add(2, 3), "Součet 2 a 3 by měl být 5");
}
}
# Příklad testu Selenium Webdriver (Python)
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://www.google.com")
print(driver.title)
driver.quit()