Team Foundation Server 2017 Update 1

Last Update: 01/09/2017

Per visualizzare gli aggiornamenti più recenti, visitare la pagina delle note sulla versione in lingua inglese.

Data di rilascio: 7 marzo 2017

Microsoft è lieta di annunciare il rilascio di Team Foundation Server 2017 Update 1. Questa nuova versione include le innovazioni e i miglioramenti più recenti delle funzionalità. Le informazioni sui requisiti sono disponibili nella pagina Team Foundation Server Requirements and Compatibility (Requisiti e compatibilità di Team Foundation Server).

Download: Team Foundation Server 2017 Update 1

Per altre informazioni sui download correlati, vedere la pagina Download di Visual Studio.

Novità in TFS 2017 Update 1


Problemi noti


Novità

Esperienze più personali

Home page della raccolta personalizzata

In questa versione è estremamente facile accedere agli elementi più importanti. La nuova pagina della raccolta (figura 1) offre un'esperienza personalizzata visualizzando progetti, preferiti, lavoro e richieste pull specifici dell'utente. Un ottimo modo per iniziare la giornata di lavoro. Sarà possibile individuare rapidamente tutte le operazioni da eseguire e gli elementi desiderati da un'unica posizione. Per altre informazioni, vedere le pagine dell'hub dell'account.

<img src="media/tfsrc1_18-2.png" "Nuova pagina della raccolta" width="650" height="376" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 1) Nuova pagina della raccolta

Il progetto acquisisce un'identità

È ora disponibile un'unica posizione che offre una panoramica del progetto. La nuova pagina del progetto consente di visualizzare e modificare la descrizione del progetto, visualizzare o aggiungere i membri e verificare l'ultima attività in modo semplice. Ancora più semplice risulta la creazione di un nuovo progetto e l'utilizzo della funzionalità DevOps incorporata di TFS.

Miglioramenti al controllo della versione

Modifiche alle autorizzazioni per l'amministratore di repository

Per i repository Git, l'autorizzazione Amministrazione è stata suddivisa in varie autorizzazioni più granulari. Questo consente una maggiore flessibilità per decidere chi può eseguire specifiche azioni. Ad esempio, si può consentire a chiunque nell'account di creare nuovi repository, ma non consentire di eliminare repository o aggiungere nuovi utenti a un repository. Le nuove autorizzazioni sono:

  • Gestisci autorizzazioni: aggiungere/rimuovere utenti e autorizzazioni.
  • Crea: creare un nuovo repository.
  • Elimina: eliminare un repository.
  • Rinomina: rinominare un repository.
  • Modifica criteri: configurare i criteri per i rami.
  • Rimuovi blocchi di altri: rimuovere i blocchi per i rami impostati da un altro utente.

Queste autorizzazioni possono essere applicate a tutti i repository in un progetto o a singoli repository.

Miglioramenti ai criteri per i rami

Nella sezione Criteri (figura 2) i criteri obbligatori e facoltativi sono ora raggruppati in sezioni. In questo modo è possibile individuare in modo preciso i criteri necessari per completare un richiesta di pull. Nella sezione dei criteri obbligatori sono anche riepilogati i revisori obbligatori e la sezione sarà contrassegnata per indicare il superamento dei test solo dopo l'approvazione di tutti i revisori obbligatori.

<img src="media/tfsrc2_01.png" "Sezione dei criteri" width="306" height="197" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 2) Sezione dei criteri

Se è necessario ignorare i criteri e si hanno le autorizzazioni necessarie, verrà visualizzata una nuova esperienza nella finestra di dialogo Completato (figura 3). Tutti i criteri non soddisfatti verranno visualizzati in un messaggio di avviso e verrà presentata una nuova opzione specifica per acconsentire in modo esplicito all'override dei criteri. Selezionando l'opzione di override verrà abilitata l'azione Override & Complete (Override e completa) che completerà la richiesta di pull eseguendo l'override di eventuali criteri non soddisfatti.

<img src="media/tfsrc2_02.png" "Finestra di dialogo Completato" width="421" height="412" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 3) Finestra di dialogo Completato

Supporto delle esclusioni di file nei criteri dei revisori obbligatori

Quando si specificano i revisori obbligatori per percorsi di file specifici è ora possibile escludere i percorsi usando il prefisso "!" per il percorso che si vuole escludere. Ad esempio, è possibile usare il prefisso per escludere la cartella docs dall'approvazione normalmente richiesta (figura 4).

<img src="media/tfsrc1_31.png" "Supporto delle esclusioni di file" width="823" height="103" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 4) Supporto delle esclusioni di file

Importare un repository

È ora possibile importare un repository Git da GitHub, BitBucket, GitLab o altre posizioni. Eseguire l'importazione in un nuovo repository o in un repository vuoto esistente. Per altre informazioni, vedere Import a Git repo (Importare un repository Git).

Aggiungere un file con estensione gitignore durante la creazione del repository

Durante la creazione di un nuovo repository Git, è ora possibile aggiungere e associare un file con estensione gitignore al repository. Un file con estensione gitignore specifica i file che devono essere ignorati da Git durante l'esecuzione di un commit.

La finestra di dialogo consente di selezionare uno dei numerosi modelli gitignore disponibili (figura 5).

<img src="media/tfsrc1_26-2.png" "Aggiungere file con estensione gitignore durante la creazione del repository" width="400" height="260" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 5) Aggiungere file con estensione gitignore durante la creazione del repository

Cherry-pick e Ripristina

Sono state aggiunte due nuove funzionalità che rendono più semplice trasferire o annullare le modifiche dal portale Web: Cherry-pick e Ripristina.

Usare il comando Cherry-pick per trasferire le modifiche di una richiesta pull in più branch. Un caso di utilizzo tipico è l'hotfix di un bug che deve essere corretto anche nella riga principale. Dopo aver creato la richiesta pull contenente la correzione al branch dell'hotfix, è possibile eseguire facilmente il cherry-pick della stessa correzione nel branch principale. Per altre informazioni, vedere Copy changes with cherry-pick (Copiare le modifiche con il cherry-pick).

È possibile ripristinare le modifiche nelle richieste pull completate. Individuare la richiesta pull della modifica errata, fare clic su Ripristina e seguire la procedura per creare una richiesta pull che annulli le modifiche indesiderate. Per altre informazioni, vedere Undo Changes with Git (Annullare le modifiche con Git).

Branch di confronto configurabile

È ora possibile impostare il branch di confronto su un branch diverso da quello predefinito. Questa impostazione verrà mantenuta per ogni utente. Le richieste pull e i nuovi branch creati dalla pagina Branch saranno basati sul branch impostato come branch di confronto. Per altre informazioni, vedere Manage your branches (Gestire i branch).

Trovare un file o una cartella

È possibile cercare rapidamente un file o una cartella in un repository usando l'hub Codice nel progetto di Team Services. Nei risultati sono elencati gli elementi della cartella corrente seguiti da file e cartelle dell'intero repository.

Per tutti i repository Git, passare alla casella di controllo del percorso (figura 6) e iniziare a digitare per avviare un'esperienza di ricerca di navigazione per il file o la cartella che si sta cercando.

<img src="media/tfsrc1_04-2.png" "Trovare un file o una cartella" width="400" height="184" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 6) Trovare un file o una cartella

Conferma per l'eliminazione dei repository

Per impedire eliminazioni accidentali di repository, è ora necessario digitare il nome del repository che si vuole eliminare per confermare l'azione.

Repository preferiti

È ora possibile impostare come preferiti i repository usati più di frequente. Nella finestra di selezione dei repository (figura 7) verranno visualizzate le schede Tutti i repository e Preferiti. Fare clic sulla stella per aggiungere un repository all'elenco Preferiti.

<img src="media/tfsrc1_05-2.png" "Repository preferiti" width="171" height="171" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 7) Repository preferiti

Cercare un file o una cartella nella cronologia dei commit

Analogamente alla scheda dei file, è ora possibile cercare un file o una cartella in un repository e visualizzare la cronologia dei commit per il file o la cartella. Per tutti i repository Git, passare alla casella di controllo del percorso nella scheda Cronologia (figura 8) e iniziare a digitare per avviare un'esperienza di ricerca della cronologia per il file o la cartella che si sta cercando.

<img src="media/tfsrc1_27-2.png" "Cronologia dei commit" width="410" height="261" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 8) Cronologia dei commit

Miglioramenti della pagina dei commit

L'esperienza della pagina dei dettagli del commit e della pagina della cronologia dei commit è stata resa più moderna ed efficiente. È ora possibile trovare ed eseguire azioni su informazioni importanti correlate al commit in una visualizzazione dettagliata.

Di seguito è riportato un esempio della pagina dei dettagli del commit (figura 9):

<img src="media/tfsrc1_22-2.png" "Dettagli del commit" width="700" height="177" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 9) Dettagli del commit

Di seguito è illustrata la pagina della cronologia dei commit (figura 10):

<img src="media/tfsrc1_23-2.png" "Cronologia dei commit" width="700" height="160" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 10) Cronologia dei commit

Cercare i commit nei branch

È ora possibile cercare un commit in un branch specificato o in un tag facendo clic sul pulsante Cerca nei rami nella pagina dei dettagli del commit (figura 11).

<img src="media/tfsrc1_24-2.png" "Ricerca di commit" width="700" height="113" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 11) Ricerca di commit

È possibile selezionare nella finestra i tag e i branch da visualizzare, anche se i branch e i tag non contengono il commit specifico (figura 12).

<img src="media/tfsrc1_25-2.png" "Finestra di dialogo di ricerca di commit" width="700" height="365" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 12) Finestra di dialogo di ricerca di commit

Barra degli strumenti per il controllo discussione

Markdown è uno strumento potente durante l'aggiunta di commenti alle richieste di pull, ma può essere difficile ricordare la sintassi. Per semplificare questa operazione, è stata aggiunta una barra degli strumenti al controllo discussione (figura 13). In questo modo viene inserita la sintassi di Markdown appropriata per aggiungere elementi di formattazione comuni. È possibile usare i controlli della nuova barra degli strumenti per aggiungere titoli, elementi in grassetto e corsivo, collegamenti, codice ed elenchi, oltre a immettere elementi come le menzioni @ e #. Sono disponibili tasti di scelta rapida per il grassetto (CTRL+B), il corsivo (CTRL+I) e la creazione di collegamenti (CTRL+K).

<img src="media/tfsrc2_03-2.png" "Barra degli strumenti della discussione" width="700" height="157" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 13) Barra degli strumenti della discussione

Miglioramenti ai commenti per le richieste pull

Per consentire di identificare più facilmente i nuovi commenti nella loro richiesta pull, sono stati aggiunti alcuni elementi decorativi alle nuove risposte nei thread di discussione esistenti. Per i commenti nella visualizzazione dei file verranno anche evidenziati i thread con nuovi commenti (figura 14).

<img src="media/tfsrc2_04-2.png" "Commenti per le richieste pull" width="590" height="469" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 14) Miglioramenti ai commenti per le richieste pull

Visualizzare le richieste pull per un commit

È ora possibile visualizzare tutte le richieste pull associate per un commit nella pagina Dettagli commit. Nell'immagine seguente (figura 15) è possibile notare che:

  • Nell'elenco a discesa delle richieste pull associate sono associate due richieste pull a questo commit.
  • La richiesta di pull n. 2 ha inoltrato il commit al ramo master.
  • Lo stesso commit è stato inoltrato al ramo 4 tramite la richiesta pull n. 1.

<img src="media/tfsrc2_05-2.png" "Richiesta pull nei commit" width="700" height="223" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 15) Richiesta pull nei commit

Seguire una richiesta pull

È ora possibile seguire una richiesta pull per ricevere notifica di tutte le modifiche tramite avvisi di posta elettronica. L'opzione Segui è disponibile nel menu di scelta rapida (figura 16).

<img src="media/tfsrc1_28.png" "Seguire una richiesta pull" width="194" height="209" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 16) Seguire una richiesta pull

Riavviare il merge di una richiesta pull

È stata aggiunta un'altra opzione che consente di tentare di eseguire nuovamente il merge per una richiesta pull nel caso in cui il branch di destinazione sia stato aggiornato. L'opzione Riavvia merge è utile quando si vuole verificare che le ultime modifiche al branch di destinazione non abbiano creato conflitti o interrotto la compilazione della richiesta pull.

Completamento bloccato nelle richieste pull rifiutate

Nei branch per i quali sono stati impostati i criteri di revisione del codice la richiesta pull non potrà essere completata se è stata rifiutata da uno o più revisori. Poiché numerosi utenti prevedono questo comportamento, il comportamento predefinito è stato modificato. Per i team che preferiscono il comportamento originale, è disponibile una nuova opzione nella pagina di impostazione dei criteri del branch (figura 17).

<img src="media/tfsrc1_29-2.png" "Criteri di revisione del codice" width="400" height="114" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 17) Criteri di revisione del codice

Markdown nella descrizione della richiesta pull

Migliorare la descrizione della richiesta pull usando Markdown. Lo stesso supporto Markdown usato e apprezzato nei commenti delle richieste pull è ora disponibile nella descrizione della richiesta pull.

Allegati nelle discussioni delle richieste pull

È ora possibile aggiungere allegati ai commenti delle richieste pull (figura 18). Gli allegati possono essere aggiunti tramite trascinamento della selezione o ricerca. Per le immagini, gli allegati possono essere aggiunti semplicemente incollando il contenuto degli Appunti. L'aggiunta di un allegato aggiorna automaticamente il commento per includere un riferimento Markdown al nuovo allegato.

<img src="media/tfsrc1_30-2.png" "Allegati nelle discussioni delle richieste pull" width="700" height="233" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 18) Allegati nelle discussioni delle richieste pull

Evidenziare le richieste pull con aggiornamenti

Gli aggiornamenti alle richieste pull sono ora ancora più semplici da individuare. Nella visualizzazione elenco delle richieste pull (figura 19) le richieste con modifiche apportate dall'ultima visualizzazione vengono visualizzate con una nuova colonna degli aggiornamenti che mostra un rollup delle modifiche.

<img src="media/tfsrc1_32-2.png" "File aggiornati delle richieste pull" width="700" height="212" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 19) File aggiornati delle richieste pull

Quando si visualizza una richiesta pull con modifiche, verrà visualizzato un messaggio di riepilogo simile nella panoramica. I nuovi push e thread di commento sono evidenziati in blu (figura 20). Se si fa clic sul collegamento View code updates (Visualizza aggiornamenti codice) viene aperta la visualizzazione File che mostra un diff delle nuove modifiche rispetto all'ultima visualizzazione della richiesta pull. Questa funzionalità consente di seguire una richiesta pull il cui autore apporta modifiche in risposta ai feedback.

<img src="media/tfsrc1_33-2.png" "Riepilogo della richiesta pull" width="700" height="212" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 20) Riepilogo della richiesta pull

Criterio di branch per la strategia di merge delle richieste pull

È stato aggiunto un nuovo criterio di branch (figura 21) che consente di definire una strategia per eseguire il merge delle richieste pull per ogni branch. In precedenza, la scelta tra merge e squash veniva effettuata al completamento della richiesta pull. Se abilitato, questo criterio avrà priorità sulle proprie preferenze applicando i requisiti definiti dal criterio.

<img src="media/tfsrc1_34.png" "Criterio di branch" width="421" height="111" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 21) Criterio di branch

Esporre le informazioni sui conflitti di merge

Se sono presenti file con conflitti in una richiesta pull, i dettagli dei conflitti sono ora visibili nella panoramica (figura 22). Verrà visualizzato l'elenco di ogni file in conflitto con una breve descrizione del tipo di conflitto tra il branch di origine e di destinazione.

<img src="media/tfsrc1_35-2-2.png" "Conflitti di merge" width="700" height="256" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 22) Conflitti di merge

Pulsante di anteprima di Markdown

Quando si visualizza un diff di un file markdown in un commit o una richiesta push o pull, è ora possibile passare facilmente alla visualizzazione di cui viene eseguito il rendering.

Miglioramenti alla verifica degli elementi di lavoro

Esperienza di ricerca migliorata per i campi di identità con ambito

Con questa versione è stato aggiornato il comportamento della selezione identità per i campi di identità con ambito, ovvero i campi di identità configurati per consentire solo l'assegnazione a un gruppo di utenti specifico. Nella nuova esperienza l'elenco MRU del controllo di selezione e i risultati di ricerca restituiranno solo i membri del gruppo configurato anziché i risultati per tutti gli utenti validi della raccolta.

Miglioramenti alla compilazione

Rollback delle definizioni di compilazione

È possibile eseguire il rollback di una definizione di compilazione a una versione precedente. L'operazione può essere eseguita quando si modifica una definizione di compilazione passando alla scheda Cronologia.

Disabilitare la sincronizzazione e l'estrazione delle origini in una compilazione

È possibile disabilitare la sincronizzazione automatica e l'estrazione delle origini per Git. Ciò consentirà di gestire le operazioni di origine in un'attività o uno script anziché basarsi sul comportamento predefinito dell'agente. Vengono impostate tutte le variabili standard correlate all'origine come Source.Version, Source.Branch e Build.SourcesDirectory.

Duplicato superficiale e LFS di Git

L'agente di compilazione supporta ora il duplicato superficiale e LFS di Git. Per altri dettagli, vedere la pagina Build definition repository (Repository delle definizioni di compilazione).

Controllo delle versioni delle attività per le definizioni di compilazione e versione

È ora possibile controllare la versione principale di un'attività eseguita nella compilazione o versione. Questa modifica ridurrà il numero di errori imprevisti causati da aggiornamenti automatici alla versione dell'agente e dell'attività. La versione principale dell'attività viene ora specificata nella scheda Compilazione della definizione o nella scheda Ambienti della definizione di versione.

Quando viene rilasciata una versione secondaria, ad esempio un aggiornamento dalla versione 1.2 alla versione 1.3, la modifica viene inserita automaticamente nella compilazione. Se viene invece rilasciata una versione principale, ad esempio la versione 2.0, la compilazione rimane bloccata alla versione 1.3 fino a quando non viene modificata la definizione e viene eseguito manualmente il passaggio alla nuova versione principale. Un flag nella definizione di compilazione segnala le nuove versioni principali.

Richiesto pagamento per Gestione pacchetti

Per continuare a usare Gestione pacchetti, è necessario avere una sottoscrizione a Visual Studio Enterprise o acquistare una licenza per Gestione pacchetti nel Marketplace. Altre informazioni sulle licenze per Gestione pacchetti sono disponibili qui.

Miglioramenti al pacchetto

Visualizzazioni delle versioni in Gestione pacchetti

Le visualizzazioni delle versioni sono una nuova funzionalità aggiunta in Gestione pacchetti (figura 23). Le visualizzazioni delle versioni sono costituite da un sottoinsieme di versioni pacchetto nel feed alzate di livello nella visualizzazione. La creazione di una visualizzazione delle versioni e la condivisione con gli utenti del pacchetto consentono di controllare le versioni sulle quali hanno una dipendenza. Ciò è particolarmente utile negli scenari di integrazione continua in cui vengono spesso pubblicate versioni del pacchetto aggiornate e non si vuole annunciare o supportare ogni versione pubblicata.

Per iniziare, vedere la guida introduttiva in Web Access o vedere le informazioni sulla visualizzazioni della versione per la creazione di pacchetti in scenari di integrazione continua/recapito continuo.

<img src="media/tfsrc2_12-2.png" "Visualizzazioni delle versioni in Gestione pacchetti" width="500" height="264" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 23) Visualizzazioni delle versioni

npm in Gestione pacchetti

I feed di Gestione pacchetti supportano ora i pacchetti npm per lo sviluppo di Node.js e JavaScript. Inoltre, i feed npm supportano npmjs.com come "origine di upstream con caching". Se si abilita questa opzione, poiché il feed userà un proxy e memorizzerà nella cache in modo trasparente i pacchetti provenienti da npmjs.com (Vedere Use packages from npmjs.com (Usare pacchetti da npmjs.com)), sarà sufficiente ottenere un determinato package@version da npmjs.com una sola volta. Le successive richieste del pacchetto verranno servite direttamente dal server TFS. Se un pacchetto viene rimosso da npmjs.com, sarà comunque possibile ottenere la versione memorizzata nella cache da TFS.

Per iniziare, cercare la nuova opzione npm nella finestra di dialogo Connetti a feed (figura 24).

<img src="media/tfsrc2_11-2.png" "npm in Gestione pacchetti" width="700" height="327" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 24) npm in Gestione pacchetti

Miglioramenti multipiattaforma

Formattazione xcpretty delle attività xcodebuild

È ora possibile formattare l'output xcodebuild con xcpretty (figura 25). xcodebuild può essere usato anche per pubblicare i risultati dei test JUnit in Team Services. In precedenza era necessario usare xctool come strumento di compilazione per pubblicare i risultati dei test. Ora, per abilitare xcpretty, selezionare Usa xcpretty e deselezionare Usa xctool nella sezione Avanzate dell'attività Xcode.

<img src="media/tfsrc1_19-2.png" "Formattazione xcodebuild" width="700" height="364" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 25) Formattazione xcpretty

Pubblicare i risultati dei test Jenkins e di code coverage

L'attività di compilazione e rilascio del processo di accodamento Jenkins è ora in grado di recuperare i risultati dei test e di code coverage da un processo Jenkins o da una pipeline. È necessario installare il plug-in TFS per Jenkins 5.2.0 o versione successiva nel server Jenkins e configurare l'azione post-compilazione Collect Results for TFS/Team Services (Raccogli risultati per TFS/Team Services). I risultati recuperati da Jenkins possono essere quindi pubblicati con le attività di compilazione Pubblica risultati test o Pubblica risultati di code coverage.

Firma Xcode 8 ed esportazione di pacchetti nell'attività di compilazione Xcode

L'attività Xcode supporta ora la compilazione dei progetti con la firma automatica Xcode 8 (figura 26). È possibile installare manualmente i certificati e i profili di provisioning nel server di compilazione o installarli tramite l'attività specificando le opzioni Contenuto file.

<img src="media/tfsrc1_20-2.png" "Firma automatica Xcode" width="675" height="180" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 26) Firma automatica Xcode

Xcode 8 richiede la specifica di un file plist delle opzioni di esportazione (figura 27) quando si esporta un pacchetto dell'app (IPA) da un archivio (file con estensione xcarchive). Se si usa Xcode 8 o Xcode 7, l'attività Xcode identifica automaticamente il metodo di esportazione. È possibile specificare il metodo di esportazione o un file plist personalizzato dall'attività Xcode. Se si usa una versione di Xcode precedente alla versione 7, l'attività usa lo strumento precedente (xcrun) per la creazione del pacchetto dell'app.

<img src="media/tfsrc1_21-2.png" "Opzioni di esportazione Xcode" width="675" height="212" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 27) Opzioni di esportazione Xcode

Miglioramenti ai test

Eseguire test compilati con Visual Studio 2017

È ora possibile usare le attività Distribuisci agente di test e Esegui test funzionali nella pipeline CI/CD (figura 28) per installare gli agenti di test per Visual Studio 2017 ed eseguire i test compilati con Visual Studio 2017.

<img src="media/tfsrc2_06-2.png" "Eseguire test" width="700" height="389" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 28) Eseguire test

Verificare i bug dall'elemento di lavoro

È ora possibile verificare un bug eseguendo di nuovo i test che hanno identificato il bug (figura 29). È possibile richiamare l'opzione Verifica dal menu di scelta rapida del form dell'elemento di lavoro bug per avviare il test case corrispondente nel runner Web. Eseguire la convalida tramite il runner Web e aggiornare l'elemento di lavoro bug direttamente all'interno del runner Web.

<img src="media/tfsrc1_01-2.png" "Verificare i bug dall'elemento di lavoro" width="700" height="327" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 29) Verificare i bug dall'elemento di lavoro

Helper di client REST per le operazioni dei passi del test

È ora possibile creare, modificare ed eliminare passi del test e allegati dei passi del test negli elementi di lavoro Test case usando le classi dell'helper aggiunte al client REST. Vedere RestApi-Sample (Esempio di API REST).

Aggiornare i bug esistenti dal Runner Web

Oltre alla creazione di nuovi bug dal runner Web, è ora possibile aggiornare un bug esistente (figura 30). Tutti i dati di diagnostica raccolti, i passi di ripetizione bug e i collegamenti per la tracciabilità dalla sessione corrente vengono aggiunti automaticamente al bug esistente.

<img src="media/tfsrc1_07-2.png" "Test Runner" width="700" height="282" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 30) Aggiornare i bug esistenti

Descrizione del test case nel runner Web

Il campo di descrizione del test case veniva spesso usato per acquisire i prerequisiti necessari per l'avvio dell'esecuzione del test case. Con questo aggiornamento è possibile visualizzare le informazioni di descrizione del test case nel runner Web usando l'opzione Mostra descrizione (figura 31).

<img src="media/tfsrc1_06-2.png" "Descrizione del test case" width="700" height="309" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 31) Descrizione del test case

Punto di aggiunta contributo dell'hub di test

È stato aggiunto un nuovo punto di aggiunta contributo ("ms.vss-test-web.test-plan-pivot-tabs") (figura 32) all'interno dell'hub Piano di test per consentire agli sviluppatori di scrivere le estensioni come scheda pivot visualizzata accanto alle schede Test e Grafici.

<img src="media/tfsrc1_08-2.png" "Punto di aggiunta contributo" width="400" height="250" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 32) Punto di aggiunta contributo

Eliminare gli elementi di test

Prima di questa versione, l'opzione di eliminazione era limitata agli elementi di lavoro. Con questo aggiornamento è ora possibile eliminare definitivamente elementi di test (piani di test, gruppi di test, test case, parametri condivisi e passi condivisi) dall'hub Test e dall'hub Lavoro usando l'opzione Elimina permanentemente (figura 33) nel menu di scelta rapida del form dell'elemento di lavoro.

<img src="media/tfsrc1_12-2.png" "Eliminare gli elementi di test" width="700" height="463" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 33) Eliminare gli elementi di test

Piani di test preferiti

È ora possibile impostare come preferiti i piani di test usati più di frequente. Nella finestra di selezione Piani di test saranno disponibili le schede Tutti e Preferiti (figura 34). Fare clic sulla stella per aggiungere un piano di test all'elenco Preferiti. I piani di test preferiti sono accessibili dalla finestra di selezione Piani di test e dalla scheda Preferiti nella nuova home page dell'account. È anche possibile filtrare i piani di test eseguendo una ricerca nel campo del titolo (figura 35).

<img src="media/tfsrc1_16-2.png" "Piani di test" width="300" height="236" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 34) Piani di test

<img src="media/tfsrc1_17-2.png" "Test preferiti" width="600" height="216" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 35) Test preferiti

Analisi di impatto sui test per i test automatizzati gestiti

L'analisi di impatto sui test per i test automatizzati gestiti è ora disponibile tramite una casella di controllo nella versione di anteprima 2.* dell'attività VSTest (figura 36).

<img src="media/tfsrc1_36-2.png" "Analisi di impatto sui test" width="700" height="554" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 36) Analisi di impatto sui test

Se l'opzione è abilitata, verrà eseguito solo il gruppo di test automatizzati gestiti necessari per convalidare una modifica del codice specificata. L'analisi di impatto sui test richiede la versione più recente di Visual Studio ed è attualmente supportata negli elementi di configurazione per i test automatizzati gestiti.

Supporto di Firefox per l'estensione Test Feedback

Microsoft è lieta di annunciare la disponibilità generale dell'estensione Test Feedback per Firefox. È possibile scaricare il componente aggiuntivo Firefox dal sito marketplace.

Nota: è previsto anche il supporto del browser Microsoft Edge. Attendere comunicazioni sugli aggiornamenti.

Miglioramenti a Release Management

Supporto dei gruppi di variabili nelle definizioni di versione

I gruppi di variabili vengono usati per raggruppare le variabili e i relativi valori per renderli disponibili in più definizioni di versione. È anche possibile gestire la sicurezza per i gruppi di variabili e scegliere chi può visualizzare, modificare e usare le variabili dai gruppi nelle definizioni di versione.

Aprire la scheda Libreria nell'hub Compilazione e versione e scegliere + Gruppo di variabili nella barra degli strumenti (figura 37). Attualmente, i gruppi di variabili possono essere usati solo nelle definizioni di versione. Per altre informazioni sui gruppi di variabili, vedere rilasciare le definizioni di gestione del rilascio di Microsoft (Definizioni di versione in Microsoft Release Management).

Creare (figura 37), quindi modificare (figura 38) un gruppo di variabili come mostrato di seguito:

<img src="media/tfsrc2_08-2.png" "Creare un gruppo di variabili" width="700" height="358" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 37) Creare un gruppo di variabili

<img src="media/tfsrc2_09-2.png" "Modificare un gruppo di variabili" width="700" height="434" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 38) Modificare un gruppo di variabili

Più pianificazioni nelle versioni

Se si vuole pianificare la creazione delle versioni più di una volta al giorno È ora possibile configurare più attivazioni pianificate in una definizione di versione (figura 39).

<img src="media/tfsrc1_09-2.png" "Pianificazione delle versioni" width="700" height="389" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 39) Pianificazione delle versioni

Connessioni del servizio inline nella compilazione e nella versione

Questa funzionalità consente di creare connessioni del servizio direttamente nella definizione della compilazione o versione senza passare alla scheda Servizi. La funzionalità verrà abilitata automaticamente per tutte le estensioni definite in modo dichiarativo, ad esempio Docker, Jenkins, VMWare e SCVMM.

Fino ad ora, le definizioni di versioni potevano collegare soltanto origini di elementi del progetto corrente. Ora è possibile collegare anche elementi di compilazione (figura 40) di un altro progetto. Durante il collegamento di un elemento, l'elenco a discesa del progetto visualizzerà tutti i progetti nell'account.

<img src="media/tfsrc1_13-2.png" "Collegare gli elementi di compilazione" width="400" height="271" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 40) Collegare gli elementi di compilazione

Miglioramenti al gruppo di risorse di Azure

Prima di questa versione, l'attività del gruppo di risorse di Azure non era in grado di convalidare la sintassi del modello ARM o verificare se sarebbe stata accettata senza distribuire effettivamente le risorse. Questo miglioramento offre una nuova modalità di distribuzione denominata Solo convalida che consente di individuare eventuali problemi della creazione del modello prima di creare le risorse di Azure effettive.

Un altro miglioramento all'attività del gruppo di risorse di Azure è rappresentato dalla possibilità di eseguire distribuzioni incrementali o complete (figura 41). In precedenza, l'attività distribuiva i modelli ARM usando la modalità incrementale. Non venivano tuttavia modificate le risorse presenti nel gruppo di risorse non specificate nel modello. La modalità completa elimina le risorse che non sono presenti nel modello. Per impostazione predefinita viene usata la modalità incrementale.

<img src="media/tfsrc1_10-2.png" "Gruppi di risorse di Azure" width="700" height="278" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 41) Gruppi di risorse di Azure

Attività dell'interfaccia della riga di comando di Azure

La nuova attività dell'interfaccia della riga di comando di Azure (figura 42) supporta l'esecuzione dei comandi dell'interfaccia su agenti multipiattaforma come Windows, Linux e Mac. L'attività supporta le sottoscrizioni classica e ARM. Lo script può essere fornito in due modi: come elemento collegato o come script inline.

<img src="media/tfsrc1_11-2.png" "Attività dell'interfaccia della riga di comando di Azure" width="700" height="135" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 42) Attività dell'interfaccia della riga di comando di Azure

In TFS 2017 Update 1 il servizio Code Search include Elasticsearch versione 2.4.1. Se il servizio Code Search è configurato in un server che esegue TFS 2017, il servizio Code Search verrà aggiornato durante l'aggiornamento di TFS. Se il servizio Code Search è configurato in un server remoto, copiare il contenuto del pacchetto del servizio di ricerca incluso nel programma di installazione nel computer remoto e seguire le istruzioni del file Readme per aggiornare il servizio di ricerca manualmente.

Miglioramenti agli approfondimenti di codice

Attività SonarQube MSBuild

Le attività SonarQube MSBuild sono ora disponibili tramite un'estensione fornita da SonarSource. Per informazioni dettagliate, vedere SonarSource have announced their own SonarQube Team Services / TFS integration (SonarSource ha annunciato l'integrazione SonarQube Team Services/TFS).

Miglioramenti all'amministrazione

Nuova esperienza delle impostazioni di notifica

Le notifiche consentono all'utente e al team di rimanere aggiornati sull'attività nei progetti di Team Services. Con questo aggiornamento è ora più facile gestire le notifiche ricevute dall'utente e dai team.

È ora disponibile un'esperienza a livello di account nel menu del profilo per la gestione delle impostazioni di notifica (figura 43).

<img src="media/tfsrc1_14.png" "Impostazioni di notifica" width="330" height="194" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 43) Impostazioni di notifica

Questa visualizzazione consente agli utenti di gestire le sottoscrizioni personali create (figura 44). Vengono anche visualizzate le sottoscrizioni create dagli amministratori dei team per tutti i progetti nell'account.

<img src="media/tfsrc1_15-2.png" "Gestire le sottoscrizioni personali" width="800" height="382" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 44) Gestire le sottoscrizioni personali

Vedere le informazioni sulla gestione delle impostazioni di notifica personali.

addProjectReports si trova ora in TfsConfig

È ora possibile usare il comando addProjectReports per aggiungere report ai progetti team. Si tratta di un comando di Power Tools precedente ora incluso nel comando TfsConfig.exe. Per altre informazioni, vedere Upload reports to a team project (Caricare report in un progetto team).

Funzionalità Chat team deprecata

Considerata la disponibilità di valide soluzioni ben integrate con TFS e Team Services, ad esempio Slack e Microsoft Teams, è stato deciso di deprecare la funzionalità Chat team per TFS e Team Services. Se si usa Team Services, sarà visibile un nuovo banner di colore giallo che comunica il piano. Nei prossimi mesi è prevista la disattivazione completa della funzionalità Chat team.

Sono disponibili numerose alternative che è possibile usare. Chat team veniva usata sia per un hub di notifica sia per la chat. TFS e Team Services sono già integrati con diversi prodotti di collaborazione che includono Microsoft Teams, Slack, HipChat, Campfire e Flowdock. È anche possibile usare Zapier per creare integrazioni personalizzate o ottenere un controllo granulare sulle notifiche visualizzate.

Per altre informazioni, vedere Deprecation of Team Rooms in Team Services (Chat room deprecate in Team Services).

Markdown non supporta più i collegamenti ai file

Con la versione Update 1, le pagine di benvenuto, il widget Markdown nei dashboard dei team e la definizione di Completato sulle lavagne Kanban non supporteranno più i collegamenti ai file in Markdown. In alternativa, è possibile includere il collegamento al file come testo nel Markdown. Per altre informazioni, vedere Markdown guidance (Linee guida per Markdown).

Presentazione dell'editor dei modelli di processo

Microsoft ha rilasciato l'estensione Process Template Editor per Visual Studio 2017. Questa estensione offre un metodo pratico per la visualizzazione e l'aggiornamento dei modelli di processo, oltre a strumenti per l'aggiornamento di elenchi globali e tipi di elementi di lavoro, nonché per la visualizzazione degli attributi dei campi elemento di lavoro. Questa estensione funziona con i server TFS 2017 e TFS 2017 Update 1.


Problemi noti

La compilazione non funziona quando si esegue l'aggiornamento a TFS 2017 Update 1 build 15.112.26301.0 da TFS 2013 o versioni precedenti

  • Problema:

    Si noti che questo problema si verifica solo con l'aggiornamento a TFS 2017 Update 1 build 15.112.26301.0, rilasciato il 7 marzo 2017. Se è stato eseguito l'aggiornamento alla build 15.112.26307.0, rilasciata il 9 marzo, questo problema non si presenterà.

    Dopo l'aggiornamento da TFS 2013 (RTM o qualsiasi aggiornamento) o versioni precedenti, durante la compilazione viene visualizzato l'errore "Il contatore denominato TaskReferenceId non esiste".

  • Soluzione alternativa:

    Eseguire lo script seguente sui database della raccolta aggiornati:

    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'
              ) 
    

I clienti devono eseguire l'aggiornamento a Git LFS versione 1.3.1 o successiva

  • Problema:

    Le versioni di Git LFS precedenti la 1.3.1 non sono più supportate.

  • Soluzione temporanea:

    Se si usano Git LFS è necessario eseguire l'aggiornamento a Git LFS versione 1.3.1 o successiva. Le versioni precedenti del client LFS non sono compatibili con le modifiche di autenticazione in questa versione di TFS.

Il rendering dei form dell'elemento di lavoro non viene eseguito correttamente

  • Problema:

    Se si usa un controllo personalizzato legacy nei form dell'elemento di lavoro, ad esempio il controllo multivalore legacy, è possibile che il rendering dei form dell'elemento di lavoro non venga eseguito.

  • Soluzione alternativa:

    È necessario eseguire l'aggiornamento alla versione più recente del controllo. La versione più recente del controllo multivalore per TFS 2017 Update 1 è disponibile qui.

Il rendering dei form dell'elemento di lavoro non viene eseguito correttamente nel Web

I form dell'elemento di lavoro non nascondono i campi di sola lettura

  • Problema:

    Se si usa il form dell'elemento di lavoro precedente con la proprietà HideReadonlyEmptyFields impostata su true nel layout, il form non nasconde i campi di sola lettura e vuoti.

  • Soluzione alternativa:

    Attualmente non esiste alcuna soluzione. Questo problema verrà risolto in TFS 2017 Update 2.

Quando vengono visualizzati, i form degli elementi di lavoro risultano modificati

  • Problema:

    Questo problema è specifico di Internet Explorer 11 in TFS 2017 Update 1 quando si sceglie un nuovo form di elemento di lavoro. Se il proprio profilo è impostato su Francese, Coreano, Russo, Turco, Giapponese o Cinese e l'elemento di lavoro è assegnato a una qualsiasi entità, al momento della visualizzazione il form dell'elemento di lavoro apparirà modificato. Se si salva l'elemento di lavoro, il campo Assegnato a verrà impostato su Non assegnato.

  • Soluzione temporanea:

    Usare un browser diverso da Internet Explorer 11. Se si usa Internet Explorer 11, fare clic su Annulla/Aggiorna sulla barra degli strumenti dell'elemento di lavoro per ripristinare il valore corretto del campo Assegnato a.

Memorizzazione nella cache di pacchetti NPM upstream non riuscita

  • Problema:

    Se il server TFS è protetto da un proxy, la memorizzazione nella cache di pacchetti NPM upstream ha esito negativo.

  • Soluzione alternativa:

    Se il server TFS è protetto da un proxy aziendale, apportare le modifiche seguenti al file web.config del server TFS (%ProgramFiles%\Microsoft Team Foundation Server 15.0\Application Tier\Web Services\web.config).

    Sostituire questo blocco di configurazione:

      <!-- 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>
    

    Con il seguente:

      <defaultProxy useDefaultCredentials="true" />
    

Il menu a discesa Codice mostra pagine di controllo della versione non corrette

  • #### Problema: Se si passa alla pagina di amministrazione di un repository git, come illustrato nell'immagine seguente (figura 45), e si fa clic sull'hub Codice, vengono visualizzati i collegamenti Insiemi di modifiche e Shelveset anziché il collegamento Cronologia.

<img src="media/tfsrc2_10.png" "Menu a discesa Codice" width="412" height="230" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 45) Menu a discesa Codice

  • #### Soluzione temporanea: Uscire dalla pagina di amministrazione del repository git per visualizzare i collegamenti corretti.

Le estensioni non vengono aggiornate automaticamente

  • Problema:

    Se si aggiorna una versione precedente di TFS a TFS 2017 e si esegue questa versione in modalità connessa, le estensioni non verranno aggiornate automaticamente in modo corretto.

  • Soluzione alternativa:

    Attualmente non esiste alcuna soluzione. Il problema è stato risolto e il comportamento di aggiornamento automatico sarà attivo in TFS 2017 Update 2. Se per qualsiasi motivo non è possibile attendere questo aggiornamento, contattare Microsoft attraverso il canale di supporto per ottenere prima la correzione.

Le estensioni non possono essere acquisite o non funzioneranno correttamente se l'URL pubblico non è impostato correttamente

  • Problema:

    L'acquisizione di estensioni da Visual Studio Marketplace avrà esito negativo.

    È probabile che le estensioni già acquisite non funzionino come previsto.

  • Soluzione temporanea:

    Questo problema è stato risolto in TFS 2017 Update 2 e si consiglia di eseguire l'aggiornamento. Per usare l'Update 1, impostare l'URL pubblico nella Console di amministrazione del server TFS in modo che l'URL sia raggiungibile da un altro sistema all'interno dell'ambiente aziendale (Figura 46).

<img src="media/adminconsole-2.png" "Menu Codice" width="700" height="471" style="border:2px solid Silver; display: block; margin: auto;">

(Figura 46) Menu Codice