Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Reporter testów terminalu to wbudowana implementacja stanu i raportowania postępu w terminalu (konsoli). Jest to część rdzenia Microsoft. Testing.Platform (MTP) i nie wymaga żadnych dodatkowych pakietów NuGet.
Tryby wyjściowe
Dostępne są dwa tryby wyjściowe:
Normal, dane wyjściowe zawierają baner, zgłasza pełne błędy testów, komunikaty ostrzegawcze i zapisuje podsumowanie przebiegu.
Detailed, tak samo jakNormal, ale dodatkowo raportuje testyPassed.
ANSI
Wewnętrznie istnieją 2 różne formatery danych wyjściowych, które automatycznie wykrywają możliwość terminalu do obsługi kodów ucieczki ANSI.
- Formater ANSI jest używany, gdy terminal może renderować kody ucieczki.
- Formatator inny niż ANSI jest używany, gdy terminal nie może obsłużyć kodów ucieczki, gdy
--no-ansijest używany lub gdy dane wyjściowe są przekierowywane.
Wartością domyślną jest automatyczne wykrywanie możliwości.
Progress
Wskaźnik postępu jest zapisywany w terminalu. Wskaźnik postępu pokazuje liczbę testów zakończonych powodzeniem, testów zakończonych niepowodzeniem i pominiętych testów, a następnie nazwę testowanego zestawu, platformę docelową i architekturę.
Pasek postępu jest zapisywany na podstawie wybranego trybu:
- ANSI, pasek postępu jest animowany, umieszczony na dole ekranu, a odświeżany co 500 ms. Pasek postępu ukrywa się po zakończeniu wykonywania testu.
- inny niż ANSI, pasek postępu jest zapisywany na ekranie co 3 sekundy. Postęp pozostaje w danych wyjściowych.
Bezpośrednie wyjście konsoli i odświeżanie paska postępu
Aby animować pasek postępu, moduł renderowania postępu ANSI przejmuje kontrolę nad kursorem terminalu i wielokrotnie ponownie rysuje dół ekranu. Każdy tekst zapisany bezpośrednio do stdout lub stderr, poza ścieżką przechwytywania frameworku testowego, może zostać nadpisany lub usunięty podczas tego przerysowywania. Na przykład wywołanie Console.WriteLine z kodu cyklu życia na poziomie zestawu lub sesji (takiego jak hook Before(Assembly) lub Before(TestSession)) albo z rozszerzenia może na krótko mignąć, a następnie zniknąć po odświeżeniu paska postępu.
To zachowanie różni się od przechwytywanego dla każdego testu standardowego wyjścia i standardowego strumienia błędów. Dane wyjściowe, które test zapisuje podczas jego uruchamiania, są przechwytywane przez platformę i wyświetlane zgodnie z --show-stdout i --show-stderr, więc pasek postępu nie zastępuje go.
Jeśli kod musi być zapisywany bezpośrednio w konsoli i potrzebujesz, aby dane wyjściowe pozostały widoczne, wyłącz postęp (--progress off w wersji MTP 2.3.0 lub --no-progress nowszej). Alternatywnie wyłącz interfejs ANSI (--ansi off w wersji MTP 2.3.0 lub --no-ansi nowszej), aby użyć danych wyjściowych postępu innych niż ANSI, które dołącza nowe wiersze zamiast ponownego rysowania na miejscu i nie zastępuje poprzednich danych wyjściowych bezpośrednich.
Opcje
| Option | Wersja MTP | Opis |
|---|---|---|
--no-progress |
— | Wyłącza raportowanie postępu na ekranie. Oznaczone jako przestarzałe w MTP 2.3.0 na rzecz --progress off. |
--progress |
2.3.0 | Określa, czy postęp jest wyświetlany. Prawidłowe wartości to auto (wartość domyślna), on (również akceptuje truewartości , enable, 1), i off (również akceptuje falsewartości , disable, 0). |
--no-ansi |
— | Wyłącza wyprowadzanie znaków ucieczki ANSI na ekranie. |
--ansi |
2.3.0 | Określa, czy znaki ucieczki ANSI są emitowane. Prawidłowe wartości to auto (wartość domyślna), on (również akceptuje truewartości , enable, 1), i off (również akceptuje falsewartości , disable, 0). |
--output |
— | Określa poziom szczegółowości danych wyjściowych podczas raportowania wyników testów. Prawidłowe wartości to Normal i Detailed. Wartość domyślna to Normal. |
--show-stdout |
2.2.1 | Określa, kiedy pokazać przechwycone standardowe dane wyjściowe testu. Prawidłowe wartości to All, Failed i None. Wartość domyślna to All. |
--show-stderr |
2.2.1 | Określa, kiedy wyświetlać przechwycone komunikaty o błędach podczas testu. Prawidłowe wartości to All, Failed i None. Wartość domyślna to All. |
--show-flaky-tests |
2.4.0 | Steruje podsumowaniem flaky: i listą testów Flaky dla testów, które przechodzą po ponowieniu próby. Użyj wartości on lub off; wartość domyślna to on. Dotyczy biblioteki MSTest [Retry] i rozszerzenia ponawiania. |
Uwaga / Notatka
Kreska (—) w kolumnie wersja MTP oznacza podstawowe opcje, które nie są powiązane z określoną wersją, ponieważ były dostępne od początkowych wersji platformy.
Uwaga / Notatka
Od wersji MTP 2.3.0, gdy MTP wykryje, że działa w środowisku narzędzia LLM lub AI, ukrywa baner startowy i zmienia domyślne ustawienie --show-stdout i --show-stderr z All na Failed, aby ograniczyć zbędny szum.