Powrót do: AI_Testers vol. 1 – Bonusy (aktywnie rozwijane)
W tym odcinku…
Testowanie na danych “test1 / test2” to proszenie się o kłopoty na produkcji. Dlaczego nie testujemy na takich danych? Prawdziwy użytkownik rzadko wpisuje idealne informacje. Ludzie robią błędy ortograficzne, używają dziwnych znaków i wpisują numery z myślnikami. Jeśli testujemy formularze tylko na prostych słowach, przegapimy błędy, które na pewno pojawią się w prawdziwym życiu. Musimy symulować chaos prawdziwego świata.
Dziś zamieniamy AI w zaawansowaną fabrykę danych testowych.
Dlaczego używamy AI do generowania danych?
Stworzenie ręcznie 100 powiązanych ze sobą rekordów (np. 100 klientów i ich 100 zamówień) w formacie JSON to godziny żmudnej pracy. AI potrafi zrozumieć te powiązania (relacje) i wygenerować gotowy, skomplikowany plik z błędami w kilka sekund.
⚠️ Pamiętaj o ważnej zasadzie: AI bywa słabe z matematyki. Jeśli generujesz numery takie jak PESEL lub NIP, zawsze weryfikuj sumy kontrolne zewnętrznym narzędziem lub poproś AI, żeby wygenerowało pod to zadanie weryfikujący skrypt w Pythonie.
📚 Pojęcia, które warto znać:
- Edge Case (Przypadek brzegowy): Sytuacja skrajna lub nietypowa, o której programista mógł zapomnieć (np. bardzo długie nazwisko, pusty e-mail, ujemna cena).
- JSON: To format zapisu danych (wyglądający jak tekst w klamrowych nawiasach), którego programiści i aplikacje używają do przesyłania sobie informacji (np. między formularzem a serwerem).
- Baza Relacyjna: System, w którym dane są ze sobą powiązane (np. Klient ma przypisane do siebie Zamówienie za pomocą unikalnego ID).
🎯 3 Strategie Generowania Danych:
- 🌪️ Dane Kreatywne (Chaos): Idealne do testów UI i Exploratory. Generujemy opinie o różnym sentymencie, długości i stylu (slang, błędy ortograficzne, CAPS LOCK, emoji), aby sprawdzić, jak zachowa się frontend.
- 🇵🇱 Dane Formalne (Lokalne): AI rozumie kontekst lokalny. Wygeneruje poprawne polskie adresy, kody pocztowe pasujące do miast i polskie znaki.
- ⚙️ Dane Techniczne (JSON/API): Generowanie złożonych struktur dla automatyków. Zagnieżdżone obiekty, nulle, ujemne wartości i edge case’y gotowe do wklejenia w Postmana.
Przykładowe prompty (bazujące na odcinku)
-
Scenariusz A: “Czego zapomniałam?” (Gap Analysis)
pdf z TCsRola: Senior QA Engineer / Analityk Biznesowy. Kontekst: Testuję moduł kodów rabatowych w koszyku e-commerce. Zadanie: Przeanalizuj moją listę testów (poniżej). Zidentyfikuj luki w pokryciu. Szczegóły: Skup się na interakcjach między kodem rabatowym a kosztami dostawy oraz zwrotami towaru. Wypisz 5 brakujących scenariuszy.
-
Scenariusz B: Matematyka i Brzegowe Wartości
Rola: Czepliwy Tester Techniczny. Zadanie: Wypisz przypadki testowe dla kodu rabatowego "-20% na wszystko przy zakupach powyżej 200 zł". Technika: Użyj Analizy Wartości Brzegowych (Boundary Value Analysis). Format: Tabela: Wartość Koszyka | Czy kod działa? | Oczekiwana Wartość końcowa.
-
Scenariusz C: Symulacja “Kombinatora” (Persona Testing)
Rola: Hacker / Złośliwy Użytkownik (Exploratory Tester). Zadanie: Spróbuj "oszukać" koszyk i wymusić podwójny rabat. Wypisz 5 kreatywnych scenariuszy, jak spróbowałbyś to zrobić. Kontekst: System pozwala wpisać tylko jeden kod.
Linki i materiały dodatkowe
|
Emilia Krzemińska-Komenda
Emilia to doświadczona inżynierka QA w Hicron Software, łącząca w swojej pracy analityczny umysł testera z pasją do automatyzacji. Mocno wierzy, że technologia, w tym sztuczna inteligencja, powinna służyć ludziom, dlatego aktywnie rozwija swoją wiedzę w kierunku testowania AI oraz dostępności cyfrowej. Wierzy, że testowanie to droga do tworzenia lepszych i bardziej inkluzywnych produktów. |

Świetna lekcja 👍.
Tez używam AI do generowania danych testowych używanych w testach manualnych. Zazwyczaj modele radzą sobie naprawdę nieźle, ale zauważyłem, że mojego doświadczenia nie zastąpią i potrafię często wymyślić jeszcze kilka przypadków więcej. AI po prostu nie ma takiego doświadczenia w pracy z dana aplikacją, zwłaszcza jeśli jest to długo rozwijana aplikacja desktopowa.