Testowanie wspomagane przez AI

Zaawansowane programowanie wspomagane przez AI dla deweloperów

Thalia Barrera

AI Engineering Curriculum Manager, DataCamp

Kontynuacja pracy z Atlasem

Programista przeglądający kod z tarczą bezpieczeństwa

 

  • Integracja Atlasa z Wayfarer Labs
  • ✅ Kod musi być przetestowany, bezpieczny i odporny na błędy
  • 🤖 AI przyspiesza ocenę i testowanie nieznanego kodu
Zaawansowane programowanie wspomagane przez AI dla deweloperów

Dlaczego testowanie wspomagane przez AI?

 

  • Odkryj nieobjęte testami ścieżki
  • Znajdź przypadki brzegowe
  • Wykryj potencjalne luki w zabezpieczeniach

 

🤖 Zacznij od zlecenia AI oceny dojrzałości testowej bazy kodu

Lupa badająca kod z ikonami błędów

Zaawansowane programowanie wspomagane przez AI dla deweloperów

Ocena dojrzałości testowej

Jesteś doświadczonym inżynierem QA i architektem oprogramowania.

Oceń jak dobrze przetestowana jest ta baza kodu i wskaż obszary najwyższego ryzyka. Oceń poniższe w skali 0–5:

  • Pokrycie krytycznych ścieżek
  • Obsługa przypadków brzegowych
  • Ochrona regresyjna
  • Automatyzacja CI/CD

Ponadto wskaż typy testów aktualnie obecnych w kodzie: jednostkowe, integracyjne, end-to-end, regresyjne, właściwościowe lub fuzz.

Zaawansowane programowanie wspomagane przez AI dla deweloperów

Wyniki oceny dojrzałości testowej

coverage-scores2.png

Zaawansowane programowanie wspomagane przez AI dla deweloperów

Ustalenie punktu odniesienia

coverage-commands2.png

Zaawansowane programowanie wspomagane przez AI dla deweloperów

Analiza wyników pokrycia

coverage-profile2.png

Zaawansowane programowanie wspomagane przez AI dla deweloperów

Strategie testowania

 

Diagram strategii testowania

 

  • Eksploracyjne → zrozumienie zachowania
  • Funkcjonalne → weryfikacja wyników
  • Regresyjne → ochrona istniejącego zachowania
  • Automatyczne → szybka, powtarzalna informacja zwrotna
Zaawansowane programowanie wspomagane przez AI dla deweloperów

Budowanie zestawu testów

 

Czym jest zestaw testów?

👉 Ustrukturyzowany zbiór testów, danych, narzędzi i reguł zapewniający spójność działania systemu w czasie.

🤖 Prompt dla zestawu testów:

Jesteś doświadczonym inżynierem oprogramowania. Wygeneruj testy jednostkowe i integracyjne dla krytycznych ścieżek w tej bazie kodu. Uwzględnij:

  • Przypadki standardowe
  • Przypadki brzegowe
  • Scenariusze błędów
  • Czytelne asercje i fixtures

Podaj również listę wszystkich wygenerowanych testów z jednozdaniowym opisem każdego z nich.

Zaawansowane programowanie wspomagane przez AI dla deweloperów

Weryfikacja poprawy pokrycia

Lista testów wygenerowanych przez AI:

ai-generated-tests2.png

Nowe pokrycie kodu:

new-coverage2.png

Zaawansowane programowanie wspomagane przez AI dla deweloperów

Ochrona w czasie wykonania

 

Wstrzykiwanie niestandardowych danych ➡ Atlas ❗

🤖 Prompt ochrony w czasie wykonania:

Przy wstrzykiwaniu lub obsłudze niestandardowych danych dodaj zabezpieczenia w czasie wykonania:

  • Waliduj dane wejściowe przed przetworzeniem (typy, wymagane pola, nieoczekiwane wartości)
  • Sprawdzaj schematy na każdym etapie potoku – nie zakładaj, że dane z poprzedniego etapu są poprawne
  • Zwracaj czytelne komunikaty błędów wskazujące, co i gdzie zawiodło
  • Stosuj bezpieczne wartości domyślne dla pól opcjonalnych zamiast pozostawiać je niezdefiniowanymi
Zaawansowane programowanie wspomagane przez AI dla deweloperów

Automatyzacja CI

ci-coverage.png

Zaawansowane programowanie wspomagane przez AI dla deweloperów

Czas na ćwiczenia!

Zaawansowane programowanie wspomagane przez AI dla deweloperów

Preparing Video For Download...