Testy w procesie budowania
Można użyć Team Foundation Build do uruchamiania automatycznych testów i analizowania wpływu zmian kodu na testy, jako części procesu kompilacji.Można na przykład zdefiniować proces kompilacji, który służy jako regularnie zaplanowany przebieg testowy zespołu weryfikujący kompilację (BVT).Można także uruchamiać testy automatyczne i wykonywać zadania związane z testami z niestandardowego procesu kompilacji.
[!UWAGA]
Jeśli chcesz wdrożyć aplikację jako część procesu kompilacji, należy użyć przepływu pracy kompiluj-wdrażaj-testuj i środowiska laboratoryjnego.Następnie można uruchomić testy automatyczne jako część przepływu pracy lub uruchomić testy oddzielnie po zakończeniu przepływu pracy.Aby uzyskać więcej informacji, zobacz Konfigurowanie przepływów pracy zautomatyzowanych kompilacji wdrożyć Test.
W tym temacie
Przygotowanie do uruchomienia testów w procesie kompilacji
Wymagane są uprawnienia
Użyj przebiegu testowego, aby uruchomić testy automatyczne
Wybierz i skonfiguruj Test Runner
Użyj Visual Studio Test Runner do uruchamiania testów
Użyj MSTest do uruchamiania testów
Tymczasowo wyłącz testy
Włącz analizę wpływu testów
Skonfiguruj platformy testów jednostkowych innych firm
Uruchom testy z niestandardowego procesu kompilacji
Aby uzyskać więcej informacji
Przygotowanie do uruchomienia testów w procesie kompilacji
Przed uruchomieniem testów w procesie kompilacji, może wystąpić konieczność przygotowania najpierw testów i systemu kompilacji.
Przygotuj testy: Upewnij się, że rozwiązanie i pliki testowe są zaewidencjonowane do kontroli wersji.Zobacz Za pomocą kontroli wersji.
Kategoryzuj i nadaj priorytety testom (Opcjonalnie): Można przypisać kategorie i priorytety dla testów, a następnie filtrować je według tych atrybutów podczas ich uruchamiania w kompilacji.Na przykład można utworzyć kategorię testów o nazwie CI, a następnie podać tą kategorię w kompilacjach ciągłej integracji.Można utworzyć inną kategorię dla testów weryfikacji kompilacji o nazwie bvt, a następnie określić tą kategorię w zaplanowanych kompilacjach, takich jak nocne kompilacje.Aby uzyskać więcej informacji, zobacz Definiowanie kategorii testu z grupy testów, TestCategoryAttribute i PriorityAttribute.
Przygotowanie budować Your server: niektóre rodzaje badań mogą być uruchamiane tylko przez agenta budować na specjalnie skonfigurowanego serwera kompilacji.Na przykład jeśli używasz zakodowanej testy interfejsu użytkownika, należy skonfigurować agent kompilacji interakcyjne uruchamianie.Zanim spróbujesz użyć proces kompilacji, aby uruchomić testy, upewnij się, może zostać uruchomiony na serwerze kompilacji, który ma być używany.Aby uzyskać więcej informacji, zobacz Włącz biura kompilacji uruchomić testy.
Microsoft Visual Studiojest wymagany do zainstalowania na serwerze kompilacji w następujących scenariuszach:
Aby zbudować jakiegokolwiek projektu, test CPP, należy zainstalować Visual Studio Professional lub nowszym.
Aby uruchomić testy jednostkowe lub kodowane jako testy interfejsu użytkownika, należy zainstalować Visual Studio Professional lub nowszym.
Aby użyć danych i karty danych diagnostycznych:
Kod zapotrzebowania: Visual Studio Premium lub nowszym.
Testowanie skutków: Visual Studio Ultimate.
IntelliTrace: Visual Studio Ultimate.
Do tworzenia aplikacji wszelkie nowoczesne na maszynie kompilacji: Visual Studio Ultimate lub Visual Studio Express for Windows 8 (na serwerze kompilacji wymagany jest system operacyjny Windows 8).
Aby skompilować i uruchomić testy na projekt z zestawu fałszywy: Visual Studio Ultimate.
Wymagane są uprawnienia
Aby wykonać te procedury, należy uprawnienia Edytuj definicję kompilacji ustawić na Zezwalaj.Aby uzyskać więcej informacji, zobacz Team Foundation Uprawnienia serwera.
Uruchom testy automatyczne
Można wykonać jedną lub więcej test jest uruchamiany w kompilacji, oparty na Default Template.Dla każdego uruchomienia można określić następujące ustawienia:
Które testy mają zostać uruchomione
Które ustawienia są używane do uruchamiania testów
Czy kompilacja powinna zakończyć się niepowodzeniem w przypadku zakończenia niepowodzeniem testów
Aby uruchomić testy automatyczne w proces kompilacji, który jest oparty na szablonie domyślne
Na pasku menu wybierz Widok, Team Explorer.
W Team Explorer wybierz Start, a następnie wybierz Kompilacje.
Na stronie Kompilacje wybierz Nowa definicja kompilacji lub otwórz menu skrótów dla wybranej kompilacji lub definicji kompilacji, a następnie wybierz Edytuj definicję kompilacji.
Zostanie wyświetlone okno definicji kompilacji.
Na karcie Proces definicji kompilacji, rozwiń węzeł Podstawowe.
Wybierz Zautomatyzowane testy pole wyboru, a następnie wybierz przycisk wielokropka (...).
Pojawi się okno dialogowe Automatyczne testy.
Wykonaj jedną z następujących czynności:
Aby dodać zestaw testów, wybierz Dodaj.
Aby zmodyfikować zestaw testów, wybierz go, a następnie wybierz Edytuj.
Pojawi się okno dialogowe Dodaj/Usuń test.
(Opcjonalnie) Określ Nazwę przebiegu testowego.Nazwa ta pojawia się w oknie wyniki kompilacji.Jeśli nie określisz nazwy, system automatycznie ją wygeneruje.
Jeśli kompilacja ma zakończyć się niepowodzeniem w przypadku zakończenia niepowodzeniem dowolnego z testów, wybierz Niepowodzenie kompilacji w przypadku niepowodzenia testu.W przypadku pozostawienia tego pola wyboru wyczyszczonego, jeśli dowolny test zakończy się niepowodzeniem, zakończona kompilacja zostanie sklasyfikowana jako Częściowe powodzenie.
Wybierz moduł uruchamiający testy.Określ, jak moduł uruchamiający testy będzie działać, używając wyświetlonych opcji.Aby uzyskać więcej informacji, zobacz Wybierz i skonfiguruj moduł uruchamiający testy.
Wybierz i skonfiguruj moduł uruchamiający testy
Po zdefiniowaniu procesu kompilacji, wybierz moduł uruchamiający testy, który dostarcza wymaganej funkcjonalności.
Możliwości |
Visual Studio Test Runner |
MSTest |
---|---|---|
Uruchom testy jednostkowe napisane w platformie Microsoft.VisualStudio.TestTools.UnitTesting. |
Tak |
Tak |
Uruchom kodowane testy interfejsu użytkownika, testy generyczne i testy uporządkowane |
Tak |
Tak |
Zbierz dane dotyczące pokrycia kodu |
Tak |
Tak |
Uruchom testy jednostkowe napisane na wielu platformach, takich jak NUnit, xUnit i inne. |
Tak |
Nie |
Uruchom testy jednostkowe w macierzystych plikach binarnych (na przykład C++). |
Tak |
Nie |
Uruchom testy w aplikacji Windows Store. |
Tak |
Nie |
Uruchom testy 64-bitowe
Uwaga
MSTest może uruchomić testy 64-bitowe w plikach binarnych skompilowanych z Any CPU określone jako Platform.
|
Tak |
Nie |
Uruchom testy zależne od substytutów obiektów platformy. Aby uzyskać więcej informacji na temat używania platformy substytutów testów do tworzenia opartych na delegatach namiastek i podkładek w aplikacjach .NET Framework, zobacz Izolowanie testowanego kodu za pomocą struktury Microsoft Fakes. |
Tak |
Nie |
Generuj dane testowe bazy danych i uruchamiaj testy jednostkowe bazy danych |
Nie |
Tak |
Zbierz dane analizy wpływu testów |
Nie |
Tak |
Uruchom testy obciążenia i testy sieci Web |
Nie |
Tak |
[!UWAGA]
Niektóre z tych funkcji możliwości, tylko na agenta budować na specjalnie skonfigurowanego serwera kompilacji.Aby uzyskać więcej informacji, zobacz Włącz biura kompilacji uruchomić testy.
Po zidentyfikowaniu możliwości wymaganych przez przebieg testowy, wybierz moduł uruchamiający testy:
Visual Studio Test Runner
MSTest z plikiem ustawień testu
MSTest z plikami metadanych
Użyj Visual Studio Test Runner do uruchamiania testów
Aby uruchomić testy z procesem kompilacji, który jest oparty na szablonie domyślne za pomocą programu Visual Studio Test Runner
W Team Explorer, otwórz Kompilacje, a następnie dodaj lub edytuj definicję kompilacji.
Na stronie Proces rozwiń węzeł Podstawowy i wybierz Automatyczne testy.Wybierz przycisk wielokropka (...) na końcu linii, a następnie wybrać opcję Dodaj lub edytować Testuj źródło.
W oknie dialogowym Dodaj/Edytuj przebieg testowy w obszarze Moduł uruchamiający testy wybierz Visual Studio Test Runner.
Specyfikacja pliku zestawu testów
Określ pliki binarne, które zawierają testy do uruchomienia.Pozostaw wartość domyślną (**\*test*.dll), jeżeli agent kompilacji ma wyszukiwać rekursywnie wszystkie pliki .dll pasujące do *test*.dll w podkatalogu binaries katalogu roboczego agenta kompilacji.Alternatywnie, można zmodyfikować specyfikację pliku według własnych potrzeb.
Jeśli chcesz uruchomić przebieg testowy do zbierania i opublikowania danych pokrycia kodu, ustaw Opcje na Włącz pokrycie kodu.
Alternatywnie, można użyć opcji Niestandardowy, aby określić plik .runsettings.Aby uzyskać więcej informacji, zobacz Dostosowywanie analizy pokrycia kodu.
Z menu Określ platformę docelową dla wykonywania testów wybierz x86 do testowania 32-bitowych plików binarnych lub x64 do testowania 64-bitowych plików binarnych.
Można określić kryteria dla uruchamianych testów.
Określ kryteria dla testów uruchamianych przez Visual Studio Test Runner
Można określić pary nazwa/wartość do filtrowania uruchamianych testów.Jeśli do organizowania testów i nadawania im priorytetów używane są kategorie testów i atrybuty priorytetów, można filtrować uruchamiane testy używając nazw TestCategory i Priority.
Można określić kategorie testów w jednej z następujących postaci:
Określ pojedynczą parę nazwa/wartość do uwzględnienia. Na przykład można mieć kategorię testów o nazwie bvt.Należy ustawić Filtr przypadków testowych na TestCategory=bvt, aby uruchomić testy tylko z tej kategorii.
Określ wiele kategorii testów przy użyciu operatora || (operator "lub"). Można na przykład określić TestCategory=quick||TestCategory=gui, aby uruchomić testy w kategorii quick oraz testy w kategorii gui.
Użyj MSTest do uruchamiania testów
Aby uruchomić testy za pomocą MSTest w proces kompilacji, który jest oparty na szablonie domyślne
Użyj przebiegu testowego, aby uruchomić testy automatyczne i wykonać inne zadania testowe, a następnie w oknie dialogowym Dodaj/Edytuj przebieg testowy w obszarze Moduł uruchamiający testy:
Moduł uruchamiający MSTest.exe
Określ pliki binarne, które zawierają testy do uruchomienia.Pozostaw wartość domyślną (**\*test*.dll), jeżeli agent kompilacji ma wyszukiwać rekursywnie wszystkie pliki .dll pasujące do *test*.dll w podkatalogu binaries katalogu roboczego agenta kompilacji.Alternatywnie, można zmodyfikować specyfikację pliku według własnych potrzeb.
(Opcjonalnie) Określ Pliku ustawień testu, aby skonfigurować sposób uruchamiania testów.Aby uzyskać więcej informacji, zobacz Wprowadzanie ustawień testów w programie Visual Studio.
Plik metadanych testu MsTest (przestarzałe)
W przypadku wybrania tej opcji, wybierz Przeglądaj, aby zlokalizować i określić plik metadanych testu, który ma być używany.Następnie można zostawić pole wyboru Uruchom wszystkie testy z pliku VSMDI zaznaczone lub usuń zaznaczenie i zaznacz jeden lub więcej testów na liście Listy testów do uruchomienia.
[!UWAGA]
Listy testów są przestarzałe.Aby uzyskać więcej informacji, zobacz Definiowanie kategorii testu z grupy testów.
Wybierz kartę Kryteria/Argumenty.
Można filtrować testy do uruchomienia według kategorii.
Można określić kategorie testów w jednej z następujących postaci:
Określ pojedynczą kategorię testów do uwzględnienia lub wykluczenia. Na przykład można mieć kategorię testów o nazwie bvt.Należy wówczas ustawić ten parametr na bvt, aby uruchomić tylko testy w tej kategorii lub !bvt, aby uruchomić wszystkie testy, za wyjątkiem testów w tej kategorii.
Określ wiele kategorii testów przy użyciu operatora & (operator "i") oraz operatora ! (operator "nie"). Można na przykład określić quick&gui&!deep, aby uruchomić tylko testy w kategoriach quick i gui, ale za wyjątkiem testów w kategorii deep.
Określ wiele kategorii testów używając operatora | (operator "lub") oraz operatora ! (operator "nie"). Można na przykład określić quick|gui|!deep, aby uruchomić testy w kategorii quick, testy w kategorii gui, a także wszystkie testy nie będące w kategorii deep.
(Opcjonalnie) Filtruj uruchamiane testy według priorytetu.
Porada W przypadku przypisania priorytetów dla testów, można użyć tego parametru do zachowania lepszej równowagi poprzez dokładne testowanie z szybszymi kompilacjami.
Ustaw Minimalny priorytet testu na dodatnią liczbę całkowitą, która jest równa lub niższa niż Maksymalny priorytet testu lub na -1, aby nie wskazywać wartości minimalnej.
Ustaw Maksymalny priorytet testu na dodatnią liczbę całkowitą, która jest równa lub większa niż Minimalny priorytet testu lub na -1, aby nie wskazywać wartości maksymalnej.
Wybierz przycisk OK.
Tymczasowo wyłącz testy
Jeśli trzeba tymczasowo wyłączyć testy bez usuwania zbiorów testów zawierających te testy, rozwiń węzeł Zaawansowane i ustaw Wyłącz testy na True.Ustaw wartość z powrotem na False, kiedy chcesz ponownie włączyć testy.
Włącz analizę wpływu testów
Może zajść potrzeba, żeby testerzy i deweloperzy wiedzieli, jaki wpływ zmiany kodu ujęte w zakończonej kompilacji miały na testy.Po włączeniu analizy wpływu testów w kompilacji, system analizuje, a następnie zgłasza jak zmiany kodu wpłynęły na testy w raporcie kompilacji zakończonej kompilacji.
Aby włączyć analiza wpływu na testy w proces budowania, który opiera się na podstawie domyślnego szablonu
Skonfiguruj analizę wpływu testów w pliku ustawień testu.
Aby uzyskać więcej informacji, zobacz Jak: zbieranie danych, aby sprawdzić które testy powinny być uruchamiane po zmiany kodu.
Utwórz zestaw testów skonfigurowany do używania pliku ustawień testu.
Aby uzyskać więcej informacji, zobacz Uruchom testy automatyczne wcześniej w tym temacie.
Rozwiń węzeł Zaawansowane i upewnij się, że Analiza wpływu testu ustawiono na True oraz Wyłącz testy ustawiono na False.
Zdefiniuj wiele przebiegów testowych
Można zdefiniować tak dużo przebiegów testowych ile trzeba, aby spełnić wymagania zespołu dotyczące kompilacji i procesu testowania.Na przykład może być konieczne zdefiniowanie wielu przebiegów testowych w pojedynczej kompilacji w następujących scenariuszach:
Chcesz użyć Visual Studio Test runner do testowania rozwiązania, które generuje pliki binarne 32- i 64-bitowe.
Masz kilka testów, które mogą być uruchomione przez Visual Studio Test Runneri inne testy, które mogą być uruchamiane tylko przez MSTest.
Masz dwa zestawy testów:
Zestaw podstawowych testów o wysokim priorytecie, które muszą być zakończone pomyślnie.Należy zdefiniować zbiór testów, który zawiera Minimalny priorytet testu i Maksymalny priorytet testu równy 1.Należy wybrać pole wyboru Niepowodzenie kompilacji w przypadku niepowodzenia testu.
Zestaw mniej ważnych testów, które mają być uruchomione ale nie są wymagane dla użyteczności kompilacji, żeby były zakończone powodzeniem.Należy zdefiniować zestaw testów, który zawiera Minimalny priorytet testu równy 2 i Maksymalny priorytet testu równy 3.Należy pozostawić pole wyboru Niepowodzenie kompilacji w przypadku niepowodzenia testu wyczyszczone.
Chcesz uruchomić ten sam zestaw testów z różnymi ustawieniami testu.
Chcesz, aby główny zbiór kompilowanych zestawów podlegał pokryciu kodu.Jednak istnieje inny zbiór zestawów z zewnętrznego źródła, który nie wymaga pokrycia kodu.Aby włączyć ten rodzaj procesu, można użyć dwóch zestawów testów skonfigurowanych, tak aby używały dwóch grup plików ustawień testu.
Włącz struktury testowej jednostki innej firmy, dla kontrolera kompilacja
Proces kompilacji można uruchomić testy oparte na RAM testu jednostki innej firmy, tylko wtedy, gdy podano kontrolera kompilacja z dostępem do zestawów framework innej firmy.
Zlokalizuj lub w razie potrzeby określ ścieżkę kontrolera kompilacja do niestandardowe zestawy.
Należy uzyskać dodatek typu plug-in testu jednostki innej firmy.Można znaleźć łącza do niektórych z nich,: Listy wtyczek testowania Unit.
Zmień nazwę pliku dodatku plug-in .vsix w pliku zip.Na przykład użyć wiersza polecenia w następujący sposób:
C:\Downloads>ren NUnitTestAdapter.vsix NUnitTestAdapter.zip
Rozpakuj zawartość pliku zip do folderu lokalnego obszaru roboczego, który mapowany w kroku 2.
-
Porada Aby strategie do pracy z innej firmy pliki binarne w kontroli wersji, zobacz wykorzystać pliki binarne innej firmy, które swój kod buduje się.
Programu Visual Studio 2012.1 obejmuje także do udoskonalonego dla jednostki innej firmy test RAM zautomatyzować ich włączenie do zespołu budować definicje.
Przestroga |
---|
Należy zainstalować najnowszą wersję opakowań NuGet do struktury testowej jednostki innych firm upewnić się, że w ramach zawiera rozszerzenie definicji kompilacji. |
Włącz struktury testowej jednostki innej firmy, dla kontrolera kompilacja-[Visual Studio 2012.1]
W oknie Solution Explorer, otwórz menu skrótów na nasz testowy projekt i wybierz polecenie Zarządzanie pakiety NuGet.
W oknie dialogowym Zarządzaj pakiety NuGet w kolumnie po lewej stronie, wybierz polecenie Online.
Dla urządzenia innej firmy przetestować framework i wybierz polecenie Wybierz żądaną NuGet zainstalować.
Po NuGet pakiet jest zakończone instalowanie, wybierz polecenie Zamknij.
W oknie Solution Explorer, otwórz menu skrótów na rozwiązanie i wybierz polecenie Dodaj rozwiązanie do kontroli źródła.
Teraz mogą kolejkować kompilacji i automatycznie uruchomi testów z struktury testowej jednostki innej firmy.
Pracuj z testami w niestandardowym procesie kompilacji
Jeśli zespół wymaga procesu kompilacji z głębiej dostosowanymi możliwościami, można uruchomić testy i wykonać inne zadania związane z testami w ramach niestandardowego procesu kompilacji.Aby uzyskać więcej informacji, zobacz:
Aby uzyskać więcej informacji
Zdefiniowanie procesu tworzenia, oparty na szablonie domyślnezawiera więcej informacji na temat tworzenia definicji kompilacji, która opiera się na szablon domyślny.Ten temat zawiera informacje o ustawieniach bitowych Platformy, które można wykorzystać podczas kompilowania kodu.
Wytyczne dla przepływów pracy kompilacji wdrożyć Test zawiera informacje dotyczące wdrażania aplikacji i uruchamiania testów w środowisku laboratoryjnym przy użyciu procesu kompilacji.
Uruchamianie testów w programie Microsoft Test Manager zawiera więcej informacji na temat sposobu uruchamiania testów.
Zobacz też
Koncepcje
Zdefiniowanie procesu kompilacji
Tworzenie testów i zarządzanie nimi w programie Microsoft Test Manager