2014-09-09 10 views
9

Mam wiele testów selenu, które trwały prawie 6 godzin. Po wykonaniu kilka z nich nie powiodło się z powodu błędu limitu czasu lub nieuniknionych błędów. W tym przypadku chcę uruchomić tylko nieudane testy. Używam teamcity do przeprowadzania testów nunit. Każdy pomysł, jak mogę ponownie uruchomić tylko nieudane testy.Jak uruchomić tylko nieudane testy dla nunitów w build teamcity

Odpowiedz

1

Istnieje możliwość uruchomienia nieudane testy pierwszy w ramach integracji TeamCity za NUnit - ale nie można ograniczyć je do testów tylko upadających, nic tak zbudowany jest w

Masz kilka opcji tutaj moim zdaniem.

  • Skorzystaj z Selenium grid/innej infrastruktury, aby równolegle uruchamiać testy Selenium w celu skrócenia czasu testu. To wydaje się być przyczyną twojego problemu: obecnie czas wykonania pełnego testu jest wygórowany. Jeśli możesz szybko uruchomić testy Selenium, nie musisz ich uruchamiać selektywnie. Generalnie korzystanie z wbudowanego nUnit runner jest złym wyborem długoterminowym, ponieważ nie pozwala na równoległość.
  • Na podstawie zaobserwowanych awarii określ urządzenia testowe nUnit i wykonaj niestandardowy przebieg NUnit, w którym po prostu przekazujesz te urządzenia testowe do ponownego uruchomienia - znowu nie ma żadnej integracji i musisz użyć wiersza poleceń nUnit runner .
+0

nUnit runner 3 obsługuje teraz równoległe działanie – John

0

Istnieje kilka opcji w zależności od używanej struktury testowania, dzięki czemu można przeprowadzać testy uruchamiania na bardziej elastycznych kryteriach przy użyciu opcji wiersza poleceń. Zastosowaliśmy to obejście w naszym niestabilnym środowisku testowym.

Z NUnit możliwe jest użycie przefiltrowanego pliku wyjściowego (zgodnie z testem zakończonym niepowodzeniem) jako podanej listy testowej do następnego uruchomienia. Istnieją różne sposoby, aby pobrać i ustawić listę można znaleźć szczegóły tutaj: https://github.com/nunit/docs/wiki/Console-Command-Line

Istnieją dwa szybkie opcje:

  • Państwo zapisać/dodać listę z nieudanych prób w pliku (z wykorzystaniem skryptu PowerShell)
  • czytać ostatni plik testowy wynik i użyć gdzie klauzula uzyskać nieudane testy

Przy każdym uruchomieniu listę badań powinny kurczyć się.

Bądź świadomy:

  • buduje nie są łatwe porównywalne (TeamCity szacuje czas realizacji lub jeśli masz warunki awarii w oparciu o zmiany metrycznych)
  • (nowy) błędy w innych testach pozostanie niewykryty do czasu ponownego uruchomienia wszystkich testów
Powiązane problemy