Team Foundation Server 2017 Update 1

Last Update: 2017-09-01

Aby sprawdzić najnowsze aktualizacje, odwiedź stronę Uwagi do wersji dostępną w języku angielskim.

Data wydania: 7 marca 2017 r.

Z przyjemnością ogłaszamy wydanie programu Team Foundation Server 2017 Update 1. Nowe wydanie obejmuje najnowsze ulepszenia i innowacje dotyczące funkcji. Informacje dotyczące wymagań można znaleźć na stronie Team Foundation Server Requirements and Compatibility (Wymagania i zgodność programu Team Foundation Server).

Pobierz: Team Foundation Server 2017 Update 2017

Aby dowiedzieć się więcej o innych powiązanych plikach do pobrania, odwiedź stronę Pliki do pobrania.

Nowości w programie TFS 2017 Update 1


Znane problemy


Nowości

Bardziej spersonalizowane środowiska

Strona główna spersonalizowanej kolekcji

W tej wersji bardzo łatwo jest uzyskać dostęp do najbardziej istotnych artefaktów. Przeprojektowana strona kolekcji (Rysunek 1) zawiera spersonalizowane środowisko, w którym wyświetlane są interesujące Cię obszary: Projekty, Ulubione, Praca i Żądania ściągnięcia. Jest to doskonałe miejsce, od którego można rozpocząć codzienną pracę. W jednym miejscu możesz szybko znaleźć wszystkie potrzebne informacje. Aby uzyskać więcej informacji, zobacz strony centrum kont.

(Rysunek 1) Przeprojektowana strona kolekcji

Twój projekt zyskuje tożsamość

Istnieje teraz jedno miejsce, w którym można znaleźć przegląd projektu. Na nowej stronie projektu można w łatwy sposób wyświetlić i edytować opis projektu, wyświetlić lub dodać elementy członkowskie oraz sprawdzić ostatnią aktywność. Teraz jeszcze łatwiej jest rozpocząć pracę z nowym projektem i wykorzystać wszystkie wbudowane funkcje podejścia DevOps programu TFS.

Ulepszenia kontroli wersji

Zmiany uprawnień administratora repozytorium

W przypadku repozytoriów Git uprawnienie Administrowanie zostało podzielone na kilka bardziej szczegółowych uprawnień. Zapewnia to większą elastyczność podczas określania, kto może wykonywać wybrane działania. Można np. zezwolić wszystkich osobom na koncie na tworzenie nowych repozytoriów, ale zabronić im usuwania repozytoriów lub dodawania do repozytorium nowych użytkowników. Nowe uprawnienia:

  • Zarządzanie uprawnieniami: dodawanie/usuwanie użytkowników i uprawnień.
  • Tworzenie: tworzenie nowego repozytorium.
  • Usuwanie: usuwanie repozytorium.
  • Zmiana nazwy: zmiana nazwy repozytorium.
  • Edytowanie zasad: konfigurowanie zasad gałęzi.
  • Usuwanie blokady innych osób: usuwanie blokad gałęzi ustawionych przez innego użytkownika.

Uprawnienia te można zastosować do wszystkich repozytoriów w projekcie lub tylko do wybranych repozytoriów.

Ulepszenia zasad gałęzi

W sekcji Zasady (Rysunek 2) wymagane i opcjonalne zasady są teraz pogrupowane. Dzięki temu widać dokładnie, które zasady są wymagane do ukończenia żądania ściągnięcia. Wymagani recenzenci zostaną również podsumowani w wymaganej sekcji i zostaną oznaczeni jako zatwierdzeni tylko, gdy wyrażą na to zgodę wszyscy wymagani recenzenci.

(Rysunek 2) Sekcja zasad

Okno dialogowe Zakończone (Rysunek 3) umożliwia teraz obejście zasad (jeśli masz wymagane uprawnienia). Wszystkie zasady, które nie zostaną spełnione, zostaną wyświetlone w komunikacie ostrzeżenia i zostanie wyświetlona nowa opcja zgody na uczestnictwo w celu zastąpienia zasad. Zaznaczenie opcji zastąpienia włączy działanie zastąpienia i zakończenia, co spowoduje zakończenie żądania ściągnięcia, zastępując wszystkie zasady powodujące niepowodzenie.

(Rysunek 3) Okno dialogowe Zakończone

Obsługa wykluczeń plików w zasadach dotyczących wymaganych osób dokonujących przeglądu

Podczas określania wymaganych osób dokonujących przeglądu dla określonych ścieżek do pliku można teraz wykluczać ścieżki za pomocą znaku „!” jako prefiksu ścieżki, która ma zostać wykluczona. Możesz na przykład użyć tej funkcji w celu wykluczenia folderu z dokumentami ze zwykle wymaganego odbioru (Rysunek 4).

(Rysunek 4) Obsługa wykluczeń plików

Importowanie repozytorium

Można teraz zaimportować repozytorium Git z usługi GitHub, BitBucket, GitLab i innych lokalizacji. Importowanie można przeprowadzić do nowego lub istniejącego pustego repozytorium. Aby uzyskać więcej informacji, zobacz Importowanie repozytorium Git.

Dodawanie pliku .gitignore podczas tworzenia repozytorium

Podczas tworzenia nowego repozytorium Git można teraz dodać plik gitignore i skojarzyć go z własnym repozytorium. Plik .gitignore służy do określania plików, które mają być ignorowane przez narzędzie Git podczas wykonywania zatwierdzenia.

Okno dialogowe umożliwia wybranie jednego z wielu dostępnych szablonów pliku gitignore (Rysunek 5).

(Rysunek 5) Dodawanie pliku gitignore podczas tworzenia repozytorium

Selekcjonowanie i wycofywanie

Dodaliśmy dwie nowe funkcje, które ułatwiają przenoszenie lub wycofywanie zmian z portalu sieci Web: selekcjonowanie i wycofywanie.

Selekcjonowanie służy do przenoszenia zmian z żądania ściągnięcia do wielu gałęzi. Typowym przypadkiem użycia jest konieczność zastosowania poprawek względem usterki, która musi zostać usunięta, również w ramach linii głównej. Po utworzeniu żądania ściągnięcia zawierającego poprawkę do zastosowania w gałęzi poprawek można łatwo wyselekcjonować tę samą poprawkę do gałęzi głównej. Aby uzyskać więcej informacji, zobacz Kopiowanie zmian za pomocą selekcjonowania.

Możliwe jest wycofanie zmian z ukończonych żądań ściągnięcia. Znajdź żądanie ściągnięcia, w ramach którego wprowadzono nieprawidłową zmianę, kliknij pozycję Wycofaj, a następnie wykonaj czynności w celu utworzenia żądania ściągnięcia wycofującego niepożądane zmiany. Aby uzyskać więcej informacji, zobacz Cofanie zmian za pomocą narzędzia Git.

Możliwa do skonfigurowania gałąź porównawcza

Możliwe jest teraz ustawienie gałęzi porównawczej na gałąź inną niż domyślna. To ustawienie zostanie zapamiętane osobno dla każdego użytkownika. Żądania ściągnięcia i nowe gałęzie utworzone na podstawie strony Gałęzie będą oparte na gałęzi ustawionej jako gałąź porównawcza. Aby uzyskać więcej informacji, zobacz Zarządzanie gałęziami.

Wyszukiwanie pliku lub folderu

Istnieje możliwość szybkiego wyszukania pliku lub folderu w repozytorium za pomocą centrum Kod w projekcie usługi Team Services. Wynik zawiera listę elementów z bieżącego folderu oraz plików i folderów w ramach repozytorium.

W przypadku dowolnego repozytorium Git przejdź do pola kontrolki ścieżki (Rysunek 6), a następnie rozpocznij wpisywanie, aby zainicjować środowisko wyszukiwania nawigacji dla szukanego pliku lub folderu.

(Rysunek 6) Znajdowanie pliku lub folderu

Potwierdzenie usuwania repozytoriów

Aby zapobiec przypadkowym usunięciom repozytoriów, konieczne jest teraz wpisanie nazwy repozytorium w celu potwierdzenia akcji usuwania.

Ulubione repozytoria

Możesz teraz oznaczać jako ulubione repozytoria, z którymi pracujesz najczęściej. W selektorze repozytorium (Rysunek 7) są wyświetlane karty Wszystkie repozytoria i Ulubione. Kliknij gwiazdkę, aby dodać repozytorium do listy Ulubione.

(Rysunek 7) Ulubione repozytoria

Wyszukiwanie pliku lub folderu w historii zatwierdzeń

Podobnie jak w przypadku karty Pliki, można teraz wyszukać plik lub folder w repozytorium i wyświetlić historię zatwierdzeń dla tego pliku lub folderu. W przypadku dowolnego repozytorium Git przejdź do pola kontrolki ścieżki na karcie Historia (Rysunek 8), a następnie zacznij pisać, aby zainicjować wyszukiwanie historii dla szukanego pliku lub folderu.

(Rysunek 8) Historia zatwierdzeń

Ulepszenia dotyczące strony Zatwierdzanie

Środowisko strony szczegółów zatwierdzenia i strony historii zatwierdzeń jest teraz nowoczesne i bardzo wydajne. Możliwe jest teraz wyszukiwanie „z lotu ptaka” ważnych informacji dotyczących zatwierdzenia i wykonywanie na nich działań.

Oto przykładowa strona szczegółów zatwierdzenia (Rysunek 9):

(Rysunek 9) Szczegóły zatwierdzenia

Poniżej znajduje się strona historii zatwierdzeń (Rysunek 10):

(Rysunek 10) Historia zatwierdzeń

Wyszukiwanie zatwierdzeń w ramach gałęzi

Możesz teraz wyszukać zatwierdzenie w określonej gałęzi lub tagu, klikając przycisk Wyszukaj w gałęziach na stronie szczegółów zatwierdzenia (Rysunek 11).

(Rysunek 11) Wyszukiwanie zatwierdzeń

W oknie można wybierać tagi i gałęzie do wyświetlenia, nawet jeśli te gałęzie i tagi nie zawierają konkretnego zatwierdzenia (Rysunek 12).

(Rysunek 12) Okno dialogowe wyszukiwania zatwierdzeń

Pasek powiadomień kontroli dyskusji

Język znaczników Markdown to zaawansowane narzędzie przydatne podczas dodawania komentarzy do żądań ściągnięcia, ale zapamiętanie jego składni może być trudne. Aby to ułatwić, dodaliśmy pasek narzędzi do kontrolki dyskusji (Rysunek 13). Pozwoli to wstawić odpowiednią składnię języka znaczników Markdown w celu dodania typowego formatowania. Przy użyciu nowych kontrolek paska powiadomień można dodawać nagłówki, pogrubienie, kursywę, linki, kod i listy, a także funkcje takie jak wzmianki @ i #. Dostępne są skróty klawiaturowe pogrubienia (CTRL+B), kursywy (CTRL+I) i tworzenia linków (CTRL+K).

(Rysunek 13) Pasek narzędzi dyskusji

Ulepszenie komentarzy do żądań ściągnięcia

Aby ułatwić identyfikowanie nowych komentarzy w żądaniach ściągnięcia, dodaliśmy dodatkowe dekoracje do nowych odpowiedzi w istniejących wątkach dyskusji. Komentarze w widoku plików będą również wyróżniać wątki, które zawierają nowe komentarze (Rysunek 14).

(Rysunek 14) Ulepszenia dotyczące komentarzy w żądaniach ściągnięcia

Wyświetlanie żądań ściągnięcia do zatwierdzenia

Na stronie Szczegóły zatwierdzenia można teraz wyświetlać wszystkie żądania ściągnięcia skojarzone z zatwierdzeniem. Jak widać na poniższej ilustracji (Rysunek 15):

  • Na liście rozwijanej żądań ściągnięcia znajdują się dwa żądania skojarzone z tym zatwierdzeniem.
  • Żądanie ściągnięcia nr 2 przeniosło to zatwierdzenie do wzorca.
  • To samo zatwierdzenie zostało przeniesione do gałęzi 4 za pomocą żądania ściągnięcia nr 1.

(Rysunek 15) Żądania ściągnięcia w zatwierdzeniach

Śledzenie żądania ściągnięcia

Możliwe jest teraz śledzenie żądania ściągnięcia, aby otrzymywać powiadomienia o jakichkolwiek zmianach za pomocą alertów e-mail. Opcja Śledź jest dostępna w menu kontekstowym (Rysunek 16).

(Rysunek 16) Śledzenie żądania ściągnięcia

Ponowne uruchamianie scalania żądania ściągnięcia

Dodano inną opcję służącą do ponawiania próby przeprowadzenia scalenia dla żądania ściągnięcia, w ramach którego gałąź docelowa została zaktualizowana. Opcja Ponownie uruchom żądanie ściągnięcia jest przydatna, gdy chcesz zweryfikować, czy najnowsze zmiany w gałęzi docelowej nie spowodowały konfliktów ani nie przerwały kompilacji żądania ściągnięcia.

Zablokowane uzupełnianie w przypadku odrzuconych żądań ściągnięcia

Dla gałęzi z ustawionymi zasadami przeglądu kodu będzie wyświetlane powiadomienie o braku możliwości ukończenia żądania ściągnięcia w przypadku, gdy zostanie ono odrzucone przez co najmniej jedną osobę dokonującą przeglądu. Wielu użytkowników oczekiwało takiego zachowania, więc zachowanie domyślne zostało zmienione. Zespoły, które chcą zachować oryginalne zachowanie, mogą korzystać z nowej opcji na stronie ustawień zasad gałęzi (Rysunek 17).

(Rysunek 17) Zasady przeglądu kodu

Znaczniki markdown w opisie żądania ściągnięcia

Popraw wygląd żądania ściągnięcia za pomocą znaczników markdown. Obsługa znaczników markdown, którą można było z powodzeniem zastosować w komentarzach żądań ściągnięcia, jest teraz dostępna w przypadku ich opisów.

Załączniki w dyskusjach dotyczących żądań ściągnięcia

Można teraz dodawać załączniki do komentarzy dotyczących żądań ściągnięcia (Rysunek 18). Załączniki można dodawać przez przeciąganie i upuszczanie lub za pomocą przeglądania. W przypadku obrazów załączniki można dodawać, wklejając je po prostu ze Schowka. Dodanie załącznika spowoduje automatyczne zaktualizowanie komentarza w taki sposób, aby dołączyć odwołanie do znacznika markdown w nowym załączniku.

(Rysunek 18) Załączniki w dyskusjach dotyczących żądań ściągnięcia

Wyróżnianie żądań ściągnięcia zawierających aktualizacje

Teraz lepiej niż kiedykolwiek widoczne są aktualizacje żądań ściągnięcia. W widoku listy żądań ściągnięcia (Rysunek 19) dla żądań ściągnięcia z wprowadzonymi zmianami od momentu ostatniego wyświetlenia widoczna jest nowa kolumna aktualizacji zawierająca podsumowanie zmian.

(Rysunek 19) Zaktualizowane pliki żądania ściągnięcia

Po wyświetleniu żądania ściągnięcia zawierającego zmiany w obszarze przeglądu będzie widoczny podobny komunikat z podsumowaniem. Nowe wypchnięcia i wątki komentarzy będą wyróżnione na niebiesko (Rysunek 20). Kliknięcie linku Wyświetl aktualizacje kodu spowoduje przejście do widoku Pliki, w którym będzie wyświetlony widok różnic wynikających ze zmian wprowadzonych od czasu ostatniego wyświetlenia żądania ściągnięcia. Ta funkcja ułatwia śledzenie żądania ściągnięcia, w którym autor wprowadził zmiany w odpowiedzi na opinie.

(Rysunek 20) Podsumowanie żądania ściągnięcia

Zasady gałęzi dotyczące strategii scalania żądań ściągnięcia

Dodaliśmy nowe zasady gałęzi (Rysunek 21), które umożliwiają definiowanie strategii scalania żądań ściągnięcia dla każdej gałęzi. Wcześniej decyzja o tym, czy ma być wykonywane scalanie czy kompresowanie, była podejmowana przez użytkownika po ukończeniu żądania ściągnięcia. Jeśli te zasady zostaną włączone, zastąpią one preferencje użytkownika, co wymusi użycie wymagania ustawionego na podstawie zasad.

(Rysunek 21) Zasady gałęzi

Udostępnianie informacji dotyczących konfliktów scalania

Jeśli w żądaniu ściągnięcia istnieją pliki z konfliktami, szczegółowe informacje o tych konfliktach będą teraz widoczne w ramach przeglądu (Rysunek 22). Dla każdego pliku powodującego konflikt zostanie wyświetlone krótkie podsumowanie typu konfliktu między gałęziami źródłowymi i docelowymi.

(Rysunek 22) Konflikty scalania

Przycisk podglądu znaczników markdown

Podczas przeglądania widoku różnic pliku znaczników markdown w ramach zatwierdzenia, wypchnięcia lub żądania ściągnięcia możliwe jest teraz łatwe przełączenie w celu wyświetlenia wynikowego widoku renderowanego.

Ulepszenia śledzenia elementów roboczych

Udoskonalone środowisko wyszukiwania dla pól tożsamości z zakresami

W tej wersji zmodyfikowaliśmy zachowanie selektora tożsamości dotyczące pól tożsamości z zakresami, czyli pól tożsamości skonfigurowanych tak, aby zezwalać tylko na przypisywanie do określonej grupy użytkowników. Po tej aktualizacji na liście MRU i w wynikach wyszukiwania znajdą się tylko członkowie skonfigurowanej grupy, a nie wyniki dotyczące wszystkich ważnych użytkowników dla danej kolekcji.

Ulepszenia kompilacji

Wycofywanie definicji kompilacji

Możesz przywrócić poprzednią wersję definicji kompilacji. W tym celu przejdź na kartę Historia podczas edytowania definicji kompilacji.

Wyłączanie synchronizacji i wyewidencjonowywania źródeł w kompilacji

Opcjonalnie można wyłączyć automatyczne przeprowadzanie synchronizacji źródeł i wyewidencjonowywania dla narzędzia Git. Pozwoli to na obsługę operacji źródłowych za pomocą zadania lub skryptu zamiast korzystania z wbudowanego zachowania agenta. Ustawione są wszystkie standardowe zmienne dotyczące źródeł, takie jak Source.Version, Source.Branch i Build.SourcesDirectory.

Pobieżne klonowanie narzędzia Git i rozszerzenie Git LFS

Agent kompilacji obsługuje teraz pobieżne klonowanie narzędzia Git i rozszerzenie Git LFS. Aby uzyskać więcej informacji, zobacz stronę repozytorium definicji kompilacji.

Wersjonowanie zadań na potrzeby definicji kompilowania i wydawania

Udostępniliśmy możliwość kontrolowania wersji głównej zadania uruchamianego w ramach kompilacji lub wersji. Zmiana ta spowoduje zmniejszenie liczby nieprzewidzianych błędów, które były spowodowane przez automatyczne aktualizacje agenta i wersji zadania. Obecnie wersja główna zadania jest określana na karcie Kompilacja definicji lub na karcie Środowiska definicji wersji.

Po wydaniu wersji pomocniczej (na przykład 1.2 lub 1.3) zmiana zostanie automatycznie wprowadzona do kompilacji. Natomiast jeśli zostanie wydana wersja główna, na przykład 2.0, to kompilacja pozostanie zablokowana w wersji 1.3, dopóki nie będzie miała miejsca edycja definicji i ręczna zmiana na nową wersję główną. Flaga w definicji kompilacji ostrzega o nowych wersjach głównych.

Usługa zarządzania pakietami jest płatna

Aby nadal korzystać z usługi Zarządzanie pakietami, musisz mieć subskrypcję programu Visual Studio Enterprise lub licencję usługi Zarządzanie pakietami kupioną w witrynie Marketplace. Możesz znaleźć więcej informacji na temat licencjonowania usługi Zarządzanie pakietami.

Ulepszenia dotyczące pakietów

Widoki wersji w usłudze zarządzanie pakietami

Dodaliśmy nową funkcję do usługi Zarządzanie pakietami o nazwie widoki wersji (Rysunek 23). Widoki wersji stanowią podzbiór wersji pakietu w Twoim źródle danych, które zostały podwyższone do tego widoku wersji. Utworzenie widoku wersji i udostępnienie go konsumentom pakietu pozwala na sterowanie wersjami pakietów, od których będą oni zależni. Jest to szczególnie przydatne w scenariuszach ciągłej integracji, gdzie ma miejsce częste publikowanie zaktualizowanych wersji pakietów, ale nie ma potrzeby ogłaszania każdej opublikowanej wersji ani jej obsługiwania.

Wyszukaj szybkie wprowadzenie do usługi Web Access lub dowiedz się więcej o widokach wersji pakietu CI/CD, aby rozpocząć pracę.

(Rysunek 23) Widoki wersji

Pakiety npm w usłudze zarządzania pakietami

Źródła danych usługi zarządzania pakietami obsługują teraz pakiety npm na potrzeby programowania w języku Node.js i JavaScript. Ponadto źródła danych pakietów npm obsługują witrynę npmjs.com jako „nadrzędne źródło z buforowaniem”. Po włączeniu tej opcji Twoje źródło danych będzie w przezroczysty sposób zastępować i buforować pakiety z witryny npmjs.com (zobacz Używanie pakietów z witryny npmjs.com), co oznacza, że konieczne będzie pobranie określonego elementu package@version z witryny npmjs.com tylko raz, a przyszłe żądania dotyczące tego pakietu będą udostępnianie bezpośrednio z serwera TFS. Jeśli pakiet zostanie usunięty z witryny npmjs.com, nadal będzie można uzyskać jego zbuforowaną wersję z serwera TFS.

Aby rozpocząć, poszukaj nowej opcji npm w oknie dialogowym Połączenie ze źródłem danych (Rysunek 24).

(Rysunek 24) Pakiety npm w usłudze Zarządzanie pakietami

Ulepszenia międzyplatformowe

Formatowanie xcpretty zadania polecenia xcodebuild

Teraz dane wyjściowe polecenia xcodebuild można sformatować za pomocą modułu xcpretty (Rysunek 25). Za pomocą polecania xcodebuild można również opublikować wyników testów JUnit w usłudze Team Services. Wcześniej konieczne było użycie narzędzia xctool jako narzędzia kompilacji w celu opublikowania wyniki testów. Aby teraz włączyć moduł xcpretty, zaznacz pole wyboru Use xcpretty (Użyj modułu xcpretty) i usuń zaznaczenie pola wyboru Use xctool (Użyj narzędzia xctool) w sekcji Advanced (Zaawansowane) zadania Xcode.

(Rysunek 25) Formatowanie xcpretty

Publikowanie wyników testowania i pokrycia kodu rozwiązania Jenkins

Za pomocą zadania kompilowania i wydawania Jenkins Queue Job można teraz pobierać wyniki testowania i pokrycia kodu z zadania Jenkins lub potoku. Wymaga to zainstalowania wtyczki TFS Plugin for Jenkins 5.2.0 lub nowszej na serwerze rozwiązania Jenkins i skonfigurowania akcji po kompilacji zbierania wyników dla programu TFS lub usługi Team Services. Po pobraniu wyników z serwera rozwiązania Jenkins mogą one zostać opublikowane za pomocą zadań kompilacji publikowania wyników testów lub publikowania pokrycia kodu.

Podpisywanie i eksportowanie pakietów programu Xcode 8 w ramach zadania kompilacji programu Xcode

Zadanie programu Xcode obsługuje teraz kompilowanie projektów za pomocą automatycznego podpisywania programu Xcode 8 (Rysunek 26). Możliwe jest ręczne zainstalowanie certyfikatów i profilów aprowizacji na serwerze kompilacji lub zainstalowanie ich za pomocą zadania, określając opcje zawartości pliku.

(Rysunek 26) Automatyczne podpisywanie programu Xcode

Program Xcode 8 wymaga określenia pliku plist opcji eksportowania (Rysunek 27) podczas eksportowania pakietu aplikacji (IPA) z archiwum (xcarchive). Zadanie Xcode teraz automatycznie rozpoznaje metodę eksportowania w przypadku używania programu Xcode 7 lub Xcode 8. Istnieje możliwość określenia metody eksportowania lub określenia niestandardowego pliku plist z poziomu zadania programu Xcode. Jeśli używasz programu Xcode w wersji starszej niż 7, zadanie zostanie wycofane do używania starego narzędzia (xcrun) w celu utworzenia pakietu aplikacji.

(Rysunek 27) Opcje eksportowania programu Xcode

Ulepszenia testowania

Uruchamianie testów utworzonych przy użyciu programu Visual Studio 2017

Za pomocą zadań Wdróż agenta testowego i Uruchom testy funkcjonalne w potoku ciągłej integracji/ciągłego wdrażania (Rysunek 28) można teraz zainstalować agentów testowych programu Visual Studio 2017 i uruchamiać testy, które zostały utworzone w programie Visual Studio 2017.

(Rysunek 28) Uruchamianie testów

Sprawdzanie usterek z poziomu elementu roboczego

Teraz możesz sprawdzić usterkę, uruchamiając ponownie testy, w wyniku których została zidentyfikowana (Rysunek 29). Możesz wywołać opcję Weryfikuj z poziomu menu kontekstowego formularza elementu roboczego usterki, aby uruchomić odpowiedni przypadek testowy w module uruchamiającym testy w sieci Web. Przeprowadź weryfikację przy użyciu internetowego modułu uruchamiającego testy i zaktualizuj element roboczy usterki bezpośrednio w tym module.

(Rysunek 29) Sprawdzanie usterek z poziomu elementu roboczego

Klasy pomocnicze klienta REST na potrzeby operacji związanych z krokami testu

Teraz możesz tworzyć, modyfikować oraz usuwać kroki testu i ich załączniki w elementach roboczych przypadków testowych za pomocą klas pomocniczych dodanych do klienta REST (zobacz Przykładowy interfejs API REST).

Aktualizowanie istniejących usterek z poziomu modułu uruchamiającego testy w sieci Web

Z poziomu internetowego modułu uruchamiającego testy można nie tylko tworzyć nowe usterki, ale też aktualizować istniejące (Rysunek 30). Wszystkie zebrane dane diagnostyczne, kroki odtwarzania i linki umożliwiające śledzenie z bieżącej sesji są automatycznie dodawane do istniejącej usterki.

(Rysunek 30) Aktualizowanie istniejącej usterki

Opis przypadków testowych w module uruchamiającym testy w sieci Web

Pole opisu przypadku testowego było często używane do przechwytywania wymagań wstępnych, które muszą zostać spełnione przed rozpoczęciem wykonywania przypadku testowego. Dzięki tej aktualizacji możesz wyświetlać informacje dotyczące opisu przypadku testowego w internetowym module uruchamiającym testy za pomocą opcji Pokaż opis (Rysunek 31).

(Rysunek 31) Opis przypadku testowego

Punkt udziału narzędzia Test Hub

Dodaliśmy nowy punkt udziału („ms.vss-test-web.test-plan-pivot-tabs”) (Rysunek 32) w ramach centrum Plan testów, aby umożliwić programistom pisanie rozszerzeń jako karty przestawnej wyświetlanej obok karty Testy i Wykresy.

(Rysunek 32) Punkt udziału

Usuwanie artefaktów testowych

We wcześniejszych wersjach można było usuwać tylko elementy robocze. Dzięki tej aktualizacji można teraz trwale usuwać artefakty testów — plany testów, zestawy testów, przypadki testowe, parametry udostępnione i wspólne kroki — zarówno z poziomu centrum Testowanie, jak i centrum Praca za pomocą opcji Trwale usuń (Rysunek 33) z menu kontekstowego formularza elementu roboczego.

(Rysunek 33) Usuwanie artefaktów testów

Lista Ulubione dla planów testów

Możesz teraz oznaczać jako ulubione plany testów, z którymi pracujesz najczęściej. W selektorze Plany testów są wyświetlane karty Wszystkie i Ulubione (Rysunek 34). Kliknij ikonę gwiazdki, aby dodać plan testów do listy Ulubione. Ulubione plany testów są dostępne z poziomu selektora Plany testów i karty Ulubione na nowej stronie głównej konta. Plany testów można również filtrować, wykonując wyszukiwanie w polu tytułu (Rysunek 35).

(Rysunek 34) Plany testów

(Rysunek 35) Ulubione testy

Analiza wpływu testu dla zarządzanych testów automatycznych

Analiza wpływu testu dla zarządzanych testów automatycznych jest teraz dostępna za pośrednictwem pola wyboru w wersji zapoznawczej 2.* zadania VSTest (Rysunek 36).

(Rysunek 36) Analiza wpływu testu

Jeśli zostanie włączona, zostanie uruchomiony tylko odpowiedni zestaw zarządzanych testów automatycznych, który należy uruchomić w celu zweryfikowania danej zmiany kodu. Analiza wpływu testu wymaga najnowszej wersji programu Visual Studio i obecnie jest obsługiwana w ramach integracji ciągłej na potrzeby zarządzanych testów automatycznych.

Obsługa przez program Firefox rozszerzenia Test & Feedback

Mamy przyjemność ogłosić ogólną dostępność rozszerzenia o udostępnieniu rozszerzenia Test & Feedback dla programu Firefox. Dodatek programu Firefox można pobrać z witryny Marketplace.

Uwaga: obsługa dla przeglądarki Microsoft Edge jest w przygotowaniu — wkrótce podamy więcej informacji na ten temat.

Ulepszenia usługi Release Management

Obsługa grup zmiennych w wersji

Grupy zmiennych służą do grupowania zmiennych oraz ich wartości w celu ich udostępnienia w wielu definicjach wersji. Można również zarządzać zabezpieczeniami grup zmiennych i wybrać, kto może wyświetlać i edytować zmienne oraz ich używać z poziomu grup zmiennych w definicjach wersji.

Otwórz kartę Biblioteka w centrum Kompilacja i wersja i wybierz pozycję + Grupa zmiennych na pasku narzędzi (Rysunek 37). Obecnie grup zmiennych można używać tylko w definicjach wersji. Aby uzyskać więcej informacji na temat grup zmiennych, zobacz Definicje wersji w usłudze Microsoft Release Management.

Utwórz grupę zmiennych (Rysunek 37), a następnie ją zmodyfikuj (Rysunek 38), jak pokazano poniżej:

(Rysunek 37) Tworzenie grupy zmiennych

(Rysunek 38) Edytowanie grupy zmiennych

Wiele harmonogramów w ramach wersji

Chcesz zaplanować tworzenie wersji częściej niż jeden raz w ciągu dnia? Teraz można skonfigurować wiele zaplanowanych wyzwalaczy w definicji wersji (Rysunek 39).

(Rysunek 39) Harmonogram wersji

Wbudowane połączenia usług w ramach kompilowania i wydawania

Za pomocą tej funkcji można tworzyć połączenia usługi bezpośrednio w definicji kompilowania/wydawania bez przechodzenia na kartę Usługi. Ta funkcja zostanie automatycznie włączona dla wszystkich rozszerzeń zdefiniowanych w sposób deklaratywny, takich jak Docker, Jenkins, VMWare i SCVMM.

Do tej pory definicje wersji mogły łączyć tylko źródła artefaktów z bieżącego projektu. Teraz możliwe jest łączenie artefaktów kompilacji (Rysunek 40) także z innego projektu. Podczas łączenia artefaktu na liście rozwijanej projektu będą znajdowały się wszystkie projekty w ramach konta.

(Rysunek 40) Łączenie artefaktów kompilacji

Ulepszenia grupy zasobów platformy Azure

We wcześniejszych wersjach zadanie grupy zasobów platformy Azure nie mogło przeprowadzić weryfikacji składni szablonu ARM lub składnia była akceptowana bez faktycznego wdrażania zasobów. To usprawnienie umożliwia korzystanie z nowego trybu wdrożenia o nazwie Tylko weryfikacja, który pozwala znaleźć problemy z tworzeniem szablonu przed utworzeniem rzeczywistych zasobów platformy Azure.

Innym usprawnieniem zadania grupy zasobów platformy Azure jest umożliwienie wdrożeń przyrostowych i całkowitych (Rysunek 41). Wcześniej szablony ARM były wdrażane w ramach zadania przy użyciu trybu przyrostowego. Jednak zasoby, które istniały w grupie zasobów, ale nie zostały określone w szablonie, nie były modyfikowane. W trybie całkowitym zasoby, które nie zostały określone w szablonie, są usuwane. Domyślnie jest używany tryb przyrostowy.

(Rysunek 41) Grupy zasobów platformy Azure

Zadanie interfejsu wiersza polecenia platformy Azure

Nowe zadanie interfejsu wiersza polecenia platformy Azure (Rysunek 42) obsługuje uruchamianie poleceń interfejsu wiersza polecenia platformy Azure dla agentów wieloplatformowych, takich jak systemy Windows, Linux i Mac. Zadanie obsługuje zarówno subskrypcje klasyczne, jak i subskrypcje usługi ARM. Obsługuje również dwa tryby udostępniania skryptu — jeden jako połączony artefakt, a drugi jako wbudowany skrypt.

(Rysunek 42) Zadanie interfejsu wiersza polecenia platformy Azure

Aktualizacja wyszukiwania kodu

W programie TFS 2017 Update 1 usługa wyszukiwania kodu obejmuje usługę Elasticsearch w wersji 2.4.1. Jeśli usługa wyszukiwania kodu jest skonfigurowana na serwerze z programem TFS 2017, zostanie ona zaktualizowana w ramach uaktualnienia programu TFS. Jeśli usługa wyszukiwania kodu jest skonfigurowana na serwerze zdalnym, należy skopiować zawartość pakietu usługi wyszukiwania dostarczonego z instalatorem na komputer zdalny i postępować zgodnie z instrukcjami znajdującymi się w pliku readme w celu ręcznego uaktualnienia usługi wyszukiwania.

Ulepszenia szczegółowych informacji dotyczących kodu

Zadania programu SonarQube MSBuild

Zadania programu SonarQube MSBuild są teraz dostępne z poziomu rozszerzenia dostarczonego przez firmę SonarSource. Aby uzyskać więcej informacji, zapoznaj się z artykułem SonarSource have announced their own SonarQube Team Services / TFS integration (Firma SonarSource ogłosiła integrację własnych usług SonarQube Team Services z programem TFS).

Ulepszenia administracji

Nowe środowisko ustawień powiadomień

Powiadomienia ułatwiają użytkownikom i ich zespołom dostęp do aktualnych informacji dotyczących aktywności w projektach usługi Team Services. Dzięki tej aktualizacji łatwiejsze jest zarządzanie tym, jakie powiadomienia mają być otrzymywane przez użytkowników i ich zespoły.

Ustawieniami powiadomień można teraz zarządzać na własnym koncie w menu profilu (Rysunek 43).

(Rysunek 43) Ustawienia powiadomień

Widok ten umożliwia zarządzanie utworzonymi przez siebie subskrypcjami osobistymi (Rysunek 44). Znajdują się w nim również subskrypcje utworzone przez administratorów zespołów dla wszystkich projektów w ramach konta.

(Rysunek 44) Zarządzanie subskrypcjami osobistymi

Dowiedz się więcej o zarządzaniu ustawieniami powiadomień osobistych.

Polecenie addProjectReports jest teraz dostępne w narzędziu TfsConfig

Można teraz dodawać raporty do projektów zespołowych, korzystając z polecenia addProjectReports. Wcześniej polecenie to było dostępne z poziomu narzędzia Power Tool, a teraz stanowi część programu TfsConfig.exe. Aby uzyskać więcej informacji, zobacz Przekazywanie raportów do projektu zespołowego.

Wycofanie funkcji pokoju zespołu

Wiedząc, że istnieje wiele dobrych rozwiązań zapewniających bezproblemową integrację z programem TFS i usługą Team Services, takich jak usługi Slack i Microsoft Teams, podjęliśmy decyzję o wycofaniu funkcji pokoju zespołu zarówno z programu TFS, jak i usługi Team Services. Podczas pracy w usłudze Team Services zostanie wyświetlony nowy żółty transparent z informacją o tym fakcie. W dalszej części tego roku planujemy całkowicie wyłączyć funkcję pokoju zespołu.

Istnieje kilka rozwiązań alternatywnych, których można użyć. Funkcja pokoju zespołu jest używana zarówno na potrzeby centrum powiadomień, jak również w celu prowadzenia rozmowy. W przypadku programu TFS i usługi Team Services miała już miejsce integracja z wieloma innymi produktami służącymi do współpracy, w tym Microsoft Teams, Slack, HipChat, Campfire i Flowdock. Można również użyć narzędzia Zapier do tworzenia własnych integracji lub uzyskać bardzo szczegółową kontrolę nad wyświetlanymi powiadomieniami.

Zobacz więcej informacji o wycofaniu pokojów zespołów w usługach Team Services.

W znacznikach markdown nie są już obsługiwane linki do plików

Wraz z aktualizacją Update 1 strony powitalne, widżet znaczników markdown na pulpitach nawigacyjnych zespołu i definicja ukończenia na tablicach Kanban nie obsługują już linków do plików w ramach swoich znaczników markdown. Aby obejść ten problem, można użyć linku do pliku jako tekstu w znacznikach markdown. Aby uzyskać więcej informacji, zobacz Wskazówki dotyczące znaczników markdown.

Wprowadzenie Edytora szablonów procesu

Udostępniliśmy rozszerzenie Edytor szablonów procesu dla programu Visual Studio 2017. Umożliwia ono wygodne wyświetlanie i aktualizowanie szablonów procesów, a także zawiera narzędzia do aktualizacji list globalnych i typów elementów roboczych oraz wyświetlania atrybutów pól elementów roboczych. Rozszerzenie współpracuje z serwerami z oprogramowaniem TFS 2017 i TFS 2017 Update 1.


Znane problemy

Kompilacja nie działa w przypadku uaktualnienia do programu TFS 2017 Update 1 (kompilacja 15.112.26301.0) z programu TFS 2013 lub wcześniejszej wersji

  • Problem:

    Należy pamiętać, że ten problem występuje tylko w przypadku uaktualnienia do programu TFS 2017 Update 1 (kompilacja 15.112.26301.0) wydanego w dniu 7 marca 2017 r. W przypadku uaktualnienia do kompilacji 15.112.26307.0 wydanej w dniu 9 marca problem nie będzie występować.

    Po uaktualnieniu programu w wersji TFS 2013 (RTM lub inna aktualizacja) lub wcześniejszej kompilacja pokazuje błąd „Licznik o nazwie TaskReferenceId nie istnieje”.

  • Obejście problemu:

    Na uaktualnionych bazach danych kolekcji należy uruchomić następujący skrypt:

    INSERT  tbl_Counter (PartitionId, DataspaceId, CounterName, CounterValue)
    SELECT  DISTINCT
              dpm.PartitionId,
              ds.DataspaceId,
              N'TaskReferenceId',
              1
      FROM    tbl_DatabasePartitionMap dpm
      INNER LOOP JOIN Task.tbl_Hub h
      ON      h.PartitionId = dpm.PartitionId
      INNER LOOP JOIN tbl_Dataspace ds
      ON      ds.PartitionId = dpm.PartitionId
              AND ds.DataspaceCategory = h.DataspaceCategory
              AND ds.DataspaceIdentifier <> '00000000-0000-0000-0000-000000000000'
      WHERE   dpm.PartitionId > 0
              AND dpm.HostType = 4
              AND NOT EXISTS (
                  SELECT  *
                  FROM    tbl_Counter c
                  WHERE   c.PartitionId = dpm.PartitionId
                          AND c.DataspaceId = ds.DataspaceId
                          AND c.CounterName = N'TaskReferenceId'
              ) 
    

Klienci powinni zaktualizować Git LFS do wersji 1.3.1 lub nowszej

  • Problem:

    Wersje rozszerzenia Git LFS wcześniejsze niż 1.3.1 nie są już obsługiwane.

  • Obejście problemu:

    Użytkownicy korzystający z rozszerzenia Git LFS powinni je zaktualizować do wersji 1.3.1 lub nowszej. Starsze wersje klienta LFS nie są zgodne ze zmianami uwierzytelniania w tej wersji programu TFS.

Formularze elementów roboczych nie są poprawnie renderowane

  • Problem:

    Jeśli używasz starszej kontrolki niestandardowej w ramach formularzy elementów roboczych, takiej jak starsza kontrolka o wielu wartościach, renderowanie formularzy elementów roboczych może zakończyć się niepowodzeniem.

  • Obejście problemu:

    Konieczne jest zaktualizowanie kontrolki do najnowszej wersji. Najnowszą wersję kontrolki o wielu wartościach dla programu TFS 2017 Update 1 można znaleźć tutaj.

Formularze elementów roboczych nie są poprawnie renderowane w sieci Web

Pola tylko do odczytu nie są ukrywane w formularzach elementów roboczych

  • Problem:

    Jeśli używasz w układzie starego formularza elementu roboczego z właściwością HideReadonlyEmptyFields o wartości true, pola tylko do odczytu i puste pola nie będą ukrywane w formularzu.

  • Obejście problemu:

    Obecnie nie istnieje obejście tego problemu. Ten problem zostanie rozwiązany w wersji TFS 2017 Update 2.

Formularze elementów roboczych stają się zanieczyszczone podczas wyświetlania

  • Problem:

    Ten problem jest specyficzny dla programu Internet Explorer 11 na serwerze TFS 2017 Update 1 w przypadku zgadzania się na uczestnictwo w nowym formularzu elementu roboczego. Jeśli masz swój profil ustawiony na język francuski, koreański, rosyjski, turecki, japoński lub chiński, a element roboczy zostanie przypisany do dowolnej tożsamości, podczas wyświetlania elementu roboczego zobaczysz zanieczyszczony formularz elementu roboczego. Jeśli zapiszesz element roboczy, pole Przypisane do zostanie ustawione na wartość „nie przypisano”.

  • Obejście problemu:

    Użyj przeglądarki innej niż Internet Explorer 11. Jeśli używasz programu Internet Explorer 11, kliknij przycisk Cofnij/Odśwież na pasku narzędzi elementu roboczego, aby przywrócić prawidłową wartość pola Przypisane do.

Niepowodzenie buforowania wychodzących pakietów NPM

  • Problem:

    Jeśli dany serwer programu TFS znajduje się za serwerem proxy, buforowanie wychodzących pakietów NPM zakończy się niepowodzeniem.

  • Obejście problemu:

    Jeśli dany serwer TFS znajduje się za firmowym serwerem proxy, wprowadź w pliku web.config (tj. %ProgramFiles%\Microsoft Team Foundation Server 15.0\Application Tier\Web Services\web.config) serwera programu TFS poniższe zmiany.

    Zamień ten blok konfiguracji:

      <!-- ASP.NET Proxy Usage for HttpWebRequests 
            "usesystemdefault" 
               false - stops the server using the default proxy configuration or proxy
                     auto-detection. 
            "bypassonlocal"
               true - this tells all requests to a local address to ignore configured proxies.
        -->
      <defaultProxy>
        <proxy usesystemdefault="False" bypassonlocal="True" />
      </defaultProxy>
    

    Na ten:

      <defaultProxy useDefaultCredentials="true" />
    

Menu rozwijane Kod zawiera niepoprawne strony kontroli wersji

  • #### Problem: Po przejściu na stronę administratora w repozytorium Git (jak pokazano na ilustracji poniżej) (Rysunek 45) i kliknięciu centrum Kod zobaczysz linki Grupy zmian i Zmiany odłożone na półkę zamiast linku Historia.

(Rysunek 45) Menu rozwijane Kod

  • #### Obejście problemu: Wyjdź ze strony administratora w repozytorium Git, a zostaną wyświetlone poprawne linki.

Rozszerzenia nie są automatycznie aktualizowane

  • Problem:

    W przypadku uaktualnienia poprzedniej wersji programu TFS do TFS 2017 oraz uruchomienia programu TFS 2017 w trybie połączonym rozszerzenia nie będą automatycznie aktualizowane zgodnie z zamierzeniami.

  • Obejście problemu:

    Obecnie nie istnieje obejście tego problemu. Problem został rozwiązany. Funkcja automatycznych aktualizacji będzie dostępna w programie TFS 2017 Update 2. Jeśli z jakiegoś powodu nie możesz czekać na wersję Update 2, skontaktuj się z nami na kanale pomocy technicznej, a my udostępnimy poprawkę wcześniej.

Nie można pobrać rozszerzeń lub nie będą one działać prawidłowo, jeśli publiczny adres URL nie jest poprawnie ustawiony

  • Problem:

    Pobieranie rozszerzenia z usługi Visual Studio Marketplace kończy się niepowodzeniem.

    Rozszerzenia, które zostały już pobrane, często nie działają zgodnie z oczekiwaniami.

  • Obejście problemu:

    Problem ten został rozwiązany w wersji TFS 2017 Update 2, dlatego zalecamy przeprowadzenie uaktualnienia. Jeśli musisz korzystać z wersji Update 1, ustaw opcję „Publiczny adres URL” w konsoli administratora serwera TFS tak, aby adres URL był osiągalny z innego systemu w środowisku firmowym (Rysunek 46).

(Rysunek 46) Menu Kod