📝 W tym odcinku:

Automatyzacja pracy z AI jest genialna, ale kryje w sobie pewną pułapkę. Kiedy Twój test świeci na czerwono, najczęstszym odruchem jest wklejenie błędu do czata z komendą „napraw to”. Wklejasz gotowy kod, test przechodzi, problem z głowy.

Na krótką metę to działa, ale na dłuższą oddelegowujesz własne myślenie. Test działa, a Ty nie masz pojęcia dlaczego. Czas z tym skończyć i zaktualizować klasyczną programistyczną metodę Rubber Duck Debugging do wersji 2.0.

📚 Kluczowe pojęcia QA & AI:

  • Metoda Sokratejska (Socratic Method): Sposób nauczania i rozwiązywania problemów polegający na zadawaniu pytań, które zmuszają rozmówcę do logicznego myślenia i samodzielnego wyciągania wniosków. W debugowaniu AI nie daje Ci poprawki, ale pyta: „A co się dzieje w tej linijce, gdy dane są puste?”.
  • Guardrails (Kagańce): Zbiór twardych instrukcji i ograniczeń nałożonych na model AI. W przypadku Twojego agenta najważniejszym kagańcem jest zakaz generowania gotowego kodu. Dzięki temu AI trzyma się roli mentora, a nie wykonawcy.
  • Root Cause Analysis (Analiza Przyczyny Źródłowej – RCA): Proces identyfikacji faktycznego źródła błędu, a nie tylko jego objawów. „Test pada” to objaw. „Brakujący await w asynchronicznym wywołaniu” to przyczyna źródłowa.
  • System Prompt (Instrukcja Systemowa): Nadrzędny zestaw instrukcji, który definiuje osobowość, cel i zasady działania agenta AI (np. plik .agents.md). To tutaj programujemy zachowanie kaczuszki.
  • Context Window (Okno Kontekstowe): Ilość informacji, którą model AI jest w stanie pamiętać i analizować w jednym momencie. W debugowaniu ważne jest, aby dostarczyć AI odpowiedni fragment kodu i logów, by nie przekroczyć tego limitu i nie stracić precyzji.
  • Flaky Tests (Testy Niestabilne): Testy, które czasem przechodzą, a czasem padają bez żadnych zmian w kodzie (często przez problemy z asynchronicznością). To idealny materiał do pracy z Twoim agentem.

🦆 Czym jest Gumowa Kaczuszka 2.0?

Klasyczny Rubber Duck Debugging polega na tłumaczeniu swojego kodu na głos gumowej zabawce, co często pozwala samodzielnie wpaść na rozwiązanie. W wersji 2.0 naszą kaczuszką jest sztuczna inteligencja, ale z jednym twardym warunkiem: ma absolutny zakaz podawania nam rozwiązań na tacy.

Zamiast generować kod, staje się naszym partnerem do dyskusji.

🧠 Metoda Sokratejska w debugowaniu:

Zamiast pisać za Ciebie kod, AI stosuje metodę sokratejską:

  • Analizuje Twój kod i błąd.
  • Odbija piłeczkę, zadając precyzyjne, celne pytania naprowadzające.
  • Wymusza weryfikację założeń i sprawdzenie konkretnych linijek.
  • Doprowadza Cię do momentu „Aha!”, w którym samodzielnie znajdujesz błąd (np. brakujące słówko await przed operacją asynchroniczną).

Dzięki temu naprawiasz kod, ale przede wszystkim budujesz inżynierskie nawyki, których nie da Ci żadne „kopiuj-wklej”. Pamiętaj też, że dialog z Kaczuszką jest dynamiczny. To, o co zapyta Cię AI, zależy od modelu językowego, skomplikowania kodu i Twoich odpowiedzi.

💡 Przykładowy Prompt bazowy

Prompt do skopiowania:

Bądź moją gumową kaczuszką. Mam problem z testem [OPIS PROBLEMU]. Zastosuj metodę sokratejską: zadawaj mi naprowadzające pytania krok po kroku, abym sam znalazł błąd. Masz ABSOLUTNY ZAKAZ generowania i podawania mi gotowego kodu.

🛡️ Od promptu do własnego Agenta (Guardrails)

Wklejanie tego promptu za każdym razem jest uciążliwe. Jako managerowie AI możemy pójść krok dalej.

Fragment „masz absolutny zakaz generowania kodu” to idealny przykład Guardrails (kagańca). Zamiast pisać to w czacie, możemy ubrać tę instrukcję w plik konfiguracyjny (np. .agents.md) i stworzyć własnego lokalnego agenta @rubber-duck.

🚀 Co w Sezonie 3? (Zestaw Ratunkowy QA)

W kolejnym sezonie opuścimy poziom architektury systemów wieloagentowych i skupimy się na codziennych bolączkach. Dowiecie się między innymi:

  • Jak zamienić AI w prywatnego nauczyciela programowania (nauka Playwrighta 3x szybciej).
  • Jak oswajać stary, nieudokumentowany kod (Legacy Code).
  • Jak bezboleśnie radzić sobie z koszmarem wyrażeń regularnych (Regex).

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.

4 komentarze

  1. Bardzo fajnie mi się tego słuchało i oglądało. Było to świetne uporządkowanie wiedzy i dało mi trochę pomysłów na dalsze działania.

    Na przyszłość może przy pokazywaniu raportów od agentów (np. przy porównywaniu wyników pracy dwóch agentów) zamiast kodu MD pokazywać zrzut ekranu z Preview? Taki sformatowany kod jest o wiele bardziej czytelny, szczególnie jak w MD mamy tabelki

    Avatar Sławomir Duda-Klimaszewski
  2. Agent kaczuszka zaskoczył najbardziej 😀 Sam właśnie działam z tą samą metodą podczas nauki. Proszę agenta żeby nie generował kodu, a jedynie robił mi review, czy naprowdzał na rozwiązanie.
    Czekam na kolejne odcinki!

    Avatar Dominik Krzywoń

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *