Junior
Jak zamierzasz przetestować pole 'Imię'?
sobes.tech AI
Odpowiedź od AI
- Testy pozytywne:
- Poprawne imiona (łacina, cyrylica, mieszane pisanie).
- Imiona z odstępami (jeden w środku, kilka w środku).
- Imiona z myślnikiem.
- Imiona z apostrofem.
- Imiona o minimalnej i maksymalnej dozwolonej długości.
- Testy negatywne:
- Puste pole.
- Użycie cyfr.
- Użycie znaków specjalnych (!@#$%^&*()).
- Użycie spacji na początku lub końcu ciągu.
- Imiona przekraczające maksymalną dozwoloną długość.
- Imiona zawierające tylko spacje.
- Granice:
- Minimalna dozwolona długość - 1 znak (lub inna, jeśli określono).
- Maksymalna dozwolona długość.
- Testy UI/UX:
- Uzyskanie fokusu przy zmianie.
- Czyszczenie pola.
- Poprawne wyświetlanie placeholdera.
- Komunikat o błędzie przy niepoprawnym wprowadzeniu.
- Dostępność dla czytników ekranu.
- Bezpieczeństwo:
- Sprawdzenie podatności na XSS (np. wprowadzenie
<script>alert('XSS')</script>). - Iniekcje SQL (np. wprowadzenie
' OR '1'='1).
- Sprawdzenie podatności na XSS (np. wprowadzenie
- Internacjonalizacja/Lokalizacja (jeśli dotyczy):
- Wprowadzanie znaków z innych języków.
Podczas testów sprawdzane jest również:
- Wyświetlanie błędów walidacji.
- Stan przycisku "Zapisz" lub "Wyślij" (aktywny/nieaktywny).
- Logowanie błędów.
W przypadku automatyzacji:
- Używa się frameworka (np. Selenium, Cypress).
- Tworzone są dane testowe (fikstury, generacja).
- Testy uruchamiane są w pipeline CI/CD.
# Przykład fragmentu kodu do automatyzacji testu w Selenium
from selenium.webdriver import Chrome
from selenium.webdriver.common.by import By
driver = Chrome()
driver.get("http://adres-twojej-aplikacji")
# Znalezienie pola "Imię" po jego lokalizatorze
name_field = driver.find_element(By.ID, "nameInput")
# Test pozytywny
name_field.send_keys("Ivan Ivanov")
# Tu kroki do wysłania formularza i sprawdzenia poprawnego wyniku
# Test negatywny
name_field.clear()
name_field.send_keys("12345")
# Tu kroki do wysłania formularza i sprawdzenia błędu walidacji
driver.quit()