Testowanie dokumentacji GitHub Copilot w Azure Drasi
Podsumowanie
Zespół Drasi zbudował zautomatyzowany proces testowania dokumentacji z użyciem GitHub Copilot CLI, Dev Containers, Playwright i GitHub Actions. Traktując agenta AI jako syntetycznego nowego użytkownika, projekt może teraz wcześniej wykrywać niedziałające samouczki i rozjazdy w dokumentacji, co pomaga utrzymać niezawodny onboarding dla deweloperów.
Wprowadzenie
Błędy w dokumentacji mogą być równie szkodliwe jak błędy w kodzie, zwłaszcza w projektach open source, gdzie przewodnik dla początkujących jest pierwszym doświadczeniem dewelopera. W nowym wpisie wspierany przez Azure zespół Drasi wyjaśnił, jak przekształcił walidację dokumentacji w zautomatyzowany proces monitorowania z użyciem GitHub Copilot.
Co nowego
Drasi stworzył podejście do testowania oparte na AI, które symuluje użytkownika korzystającego z samouczków po raz pierwszy i wykonującego instrukcje dokładnie tak, jak zostały opisane.
Kluczowe elementy rozwiązania
- GitHub Copilot CLI działa jako dosłowny, naiwny agent, który wykonuje kroki dokładnie tak, jak udokumentowano.
- Dev Containers odtwarzają to samo środowisko, które użytkownicy widzą w GitHub Codespaces.
- Playwright weryfikuje działanie interfejsu webowego i zapisuje zrzuty ekranu do porównania.
- GitHub Actions uruchamia proces automatycznie co tydzień i równolegle dla wielu samouczków.
Zespół wskazał, że podejście to wynikało z rzeczywistej awarii: aktualizacja infrastruktury Dev Container podniosła minimalną wymaganą wersję Docker i spowodowała uszkodzenie samouczków Drasi bez natychmiastowej widoczności problemu. Testy manualne nie wykryły tego wystarczająco szybko.
Dlaczego ma to znaczenie dla specjalistów IT i deweloperów
Dla zespołów Azure i platformowych jest to przydatny przykład zastosowania agentów AI wykraczającego poza generowanie kodu. Dokumentacja często przestaje działać z powodu:
- Ukrytych założeń doświadczonych autorów
- Rozjazdu między zmianami produktu a krokami w samouczkach
- Zmian w zależnościach upstream w narzędziach takich jak Docker, Kubernetes lub bazy danych
Wykorzystując Copilot jako „syntetycznego użytkownika”, zespoły mogą wykrywać niejasne kroki, nieudane polecenia i niedopasowane wyniki, zanim klienci lub współtwórcy napotkają te problemy.
Kwestie bezpieczeństwa i niezawodności
Implementacja Drasi utrzymuje nacisk na bezpieczeństwo na granicy kontenera, zamiast próbować ograniczać każde polecenie z osobna. Proces wykorzystuje:
- Izolowane, efemeryczne kontenery
- Ograniczone uprawnienia tokenów
- Brak wychodzącego dostępu do sieci poza localhost
- Zatwierdzanie uruchomienia przez maintainerów
Aby zarządzać niedeterministycznością AI, zespół dodał również ponowienia, eskalację modelu, semantyczne porównywanie zrzutów ekranu oraz ścisłe ograniczenia promptów, aby wygenerować czytelny dla maszyny wynik pass/fail.
Kolejne kroki dla administratorów i zespołów inżynieryjnych
Jeśli Twój zespół publikuje wewnętrzne runbooki, przewodniki onboardingowe lub publiczne samouczki, warto obserwować ten wzorzec. Warto rozważyć:
- Wskazanie dokumentacji o wysokiej wartości, która często się psuje
- Testowanie dokumentacji w tym samym środowisku, z którego faktycznie korzystają użytkownicy
- Zbieranie logów, zrzutów ekranu i raportów jako artefaktów do rozwiązywania problemów
- Dodanie zaplanowanej walidacji do pipeline’ów CI/CD
Przykład Drasi pokazuje, że agenci AI mogą pełnić rolę praktycznych testerów dokumentacji, pomagając zespołom ograniczać obciążenie wsparcia i poprawiać doświadczenie deweloperów na dużą skalę.
Potrzebujesz pomocy z Azure?
Nasi eksperci pomogą Ci wdrożyć i zoptymalizować rozwiązania Microsoft.
Porozmawiaj z ekspertemBądź na bieżąco z technologiami Microsoft