Visual Studio Team System
Buck Hodges ha appena pubblicato un'update dei Power Tools per Team Foundation Server e Visual Studio 2005 Team System edition. Fra le molte novita', vi e' un potenziamento dei TestToolsTask, attraverso il quale e' possibile categorizzare i test cases (si, piu' o meno come in NUnit).
Io l'ho provato :-)
Qualche tempo fa annunciai un webcast su Team Test. Come successe per MSF vi propongo i temi che verranno affrontati.
- Problematiche delle applicazioni distribuite
- Come affrontare il problema del testing in ambiente distribuito
- Web testing e unit testing a confronto
- QoS
- Come estendere VSTT per raggiungere in miglior risultato
Sebbene lo sbilanciamento verso tematiche del testing sembra avere poco a che fare con l'architetto, credo che sia un utile momento di 'pensiero' per capire come architettare i processi e le sessioni di testing.
Qualche tempo fa annunciai un webcast su MSF. Questo webcast è inserito nella track "Architect". Voi direte "che c'azzecca?"
Si, MSF è un tipico problema di project management. Ma, il taglio che voglio dare (se avete suggerimenti fatevi sotto...posso cambiare idea :-) ) è MSF dal punto di vista dell'architetto. Vorrei riuscire a dare risposte a domande tipo:
- Ma che devo fare come architetto nel team project ?
- Quali sono le mie attività principali ?
- Se i templates di MSF Agile non sono sufficienti come posso crearne di nuovi ?
- Come posso modificare il template di MSF Agile per censire tutte...
Il branching è una funzionalità estremamente interessante del nuovo Source control targato Microsoft, ma pone problematiche di non poco conto per chi lo deve usare.
Questo post aiuta a capire una delle tante vie...
Guardando le varie versioni di Visual Studio Team System mi chiedo perchè dovrei scegliere la versione developer ! Sinceramente, se acquisto un banalissimo profiler .NET (ne trovo anche gratis anche se non integrati in VS.NET), perchè dovrei rinunciare agli innumerevoli strumenti di testing disponibili nella versione Team Test ?
Mi sto sempre più convincendo che la version Team Test è la più interessante delle tre.
Sin dalle prime versioni di Visual Studio Team System (parlo della beta 1) ho notato una grossa mancanza: un test type dedicato ai web services. Ho sempre pensato (sperato) che prima o poi l'avrebbero introdotto, ma ahimè siamo arrivati all'RTM e niente.
Quindi, la mia scelta è caduta sullo Unit testing. Perchè unit testing ? Semplice, la classe proxy (del web service) è una classe che può essere testata come un OM, al pari di qualsiasi class library.
Nota: E' importante ricordare che se volete il supporto dei wizard per la generazione automatica dello scheletro delle test classe e test methods dovete...
In questo periodo, con il lancio di Visual Studio Team System, molte persone si stanno chiedendo se passare a Team Foundation Server o continuare ad usare SourceSafe.
Ok, il parallelismo non non è corretto in quanto i servizi dati a disposizione di TFS sono decisamente superiori a SourceSafe (che fa solo quello), ma molti hanno ben in mente che cosa sia SourceSafe e TFS rappresenta la prima isola della salvezza :-)
In questo articolo si cerca di dare una risposta. Immagino che la voce più interessante siano i costi :-))
Team Foundation Server Version Control introduce il concetto di workspace eliminando i vecchi shared folders. Un workspace contiene la mappatura dei folder e files in VC (Version Control) su proprio file system. Senza addentrarmi nelle potenzialità (ne parlerò alla WPC) nel workspace possiamo definire sia il mapping (come mappo i files sul mio file system) che il cloacking (come escludo alcuni files/folders).
Una limitazione che mi sento di NON approvare è quella di non poter mappare lo stesso folder su più workspaces. Mi vengono a mente molti scenari (soprattutto nel mondo web) e quindi non mi spiego il come mai di...
A volte capita di dover cancellare un Team Project da TFS (Team Foundation server). Dato che è una operazione molto pericolosa, Microsoft ha deciso di renderla meno accessibile (condivido la scelta). Purtroppo la documentazione commette un errore, suggerisce infatti di usare l'utility: DeleteTeamProject.exe
L'utility corretta nella beta 3 refresh si chiama invece TFSDeleteProject.exe.
Sto installando un pc con Team Foundation server (b3 refresh) e VS 2005 Team Suite (VSTS). Dopo l'installazione (ho seguito scrupolosamente il file di help) mi sono reso conto che mancava Team Explorer. Rob spiega che è stato scelto di toglierlo dal setup di VSTS per lasciarlo nel setup di TFS in modalità stand alone e integrata.
Quest'anno, per la prima volta, presenterà due sessioni alla WPC:
SVI315 - Introduzione a Team System - il 17 novembre dalle 15:30 alle 16:45
SVI316 - Sviluppo di applicazioni complesse con Team System - il 17 novembre dalle 17:15 alle 18:30
Lo so, snocciolare Team System in così poche sessioni (ricordo anche la sessione sul source control il 18 novembre) non è facile, ma del resto l'agenda di quest'anno è veramente ricca.
Per chi è interessato a capire meglio Team System è una buona occasione per chiarirsi le idee :-)
Akash è il PM del tool di conversione da VSS a TFS. Sul suo blog ha presentato una serie di istruzioni su come utilizzare lo strumento al meglio.
Team Foundation Server verrà rilasciato in due versioni: una workgroup e l'altra enterprise (non conosco ancora i nomi ufficiali). L'unica differenza sostanziale è che la prima non necessita dell'active directory mentre si.
Team Foundation Server beta 3 sta arrivando. In accordo con quanto detto da Buck, sarà scaricabile nel giro di un paio di giorni dai sottoscrittori MSDN.
Oltre al bugfix e ai miglioramenti di performances ci sarà una grossa novità, la beta 3 avrà la licenza go-live :-)
Quando si sviluppa un progetto web test in Team System vi è la possibilità di utilizzare le regole di estrazione (extraction rules) le quali permettono di estrarre valori dei messaggi scambiati fra client e server. By default troviamo delle regole preconfezionate, come l'estrazione di un valode nel campo nascosto, piuttosto che un testo e così via. Manca la possibilità di estrarre un parametro dalla query string (in realtà è fattibile ma un poco laborioso). Ecco allora che mi sono scritto una nuova regola (in C#). Tempo di implementazione circa 30 minuti (senza sapere come si facesse!). Il codice è disponibile...
Un test case è un insieme di condizioni attreverso le quali il tester determina se l'applicazione soddisfa i requisiti oppure no. E' definito da tre elementi, elementi di input, path e risoltato (elementi di output).
Normalmente, ogni applicazione deovrebbe avere un insieme test case per tutti gli scenari applicativi che possono avvenire, errori compresi. Nel caso del performance testing non è necessario utilizzare tutti i test case applicativi, in quanto non è in discussione la funzionalità applicativa, bensì la sua resistenza. Allora dovremo sceglere i test case che hanno un uso significativo (almeno oltre il 5%) e quelli dove il...
Nei test di performance c'è una netta distinzione fra utenti concorrenti ed utenti simultanei.
I primi sono quel gruppo di utenti che utilizzano il sito (o l'applicazione o il servizio) nello stesso attimo di tempo. Gli utenti simulntanei sono invece tutti quelli che hanno una connessione attiva (sessione) con l'applicazione. In generale si segue l'equazione
Utenti Simultanei = Utenti Concorrenti * 10
Il numero di utenti concorrenti ha una forte incidenza nello stress test mentre gli utenti simultanei sono importanti per il load test. In Team System è possibile scindere i due scenari azzerando (utenti concorrenti) od incrementando (utenti simultanei) il Think time, come...
Vi siete mai chiesti, dopo aver sviluppato l'applicazione multi-user (es. web, smart client, ecc.), quanti utenti può reggere la vostra soluzione ? Se un cliente ha 100 utenti quanti server e che tipo di server gli proponete ? E se questi diventano 200 dopo un'anno di attività ? C'è chi usa la logica del pollicione (che però funziona solo per sapere da che parte arriva il vento) e chi invece fa acquistare i server della Nasa...tanto per stare tranquilli.
In realtà esiste la possibilità di fare dei test di perfomance. I test di performance sono generalmente di tre tipi (molti ancora...
Team Foundation Server è praticamente estendibile in ogni sua parte. Una delle più intriganti è la possibilità di sottoscrivere ai vari eventi da una applicazione e/o servizio. Jeff Lucovsky sta sperimentando la possibilità di creare un feed RSS per visualizzare check-in effettuati.
La scorsa settimana ho effettuato una prova di load test in Team System e all'avvio mi si bloccava. Il messaggio diceva che non trovava il database.
Il Load test infatti usa un database (SQL 2005 express o superiore) per storicizzare i dati di test. Qualora vi mancasse questo database, sarà necessario definirlo. Lo script del DB si trova nel folder: C:\Program Files\Microsoft Visual Studio 8\Common7\IDE e si chiama loadtestresultsrepository.sql.
Per settare la stringa di connessione, andate in VSTS, selezionate la voce di menu "test" quindi "Administer test controllers" ed infine il controller "local" (ne potreste avere più di un controller). Basta ora...
A detta di Rob, a breve potremo scaricare la nuova CTP di Team Foundation Server e Team System. Ecco le modifiche più importanti
Team Projects & Portal Sites
Improved error reporting, and rollback/deletion of a project that wasn’t successfully created.
Windows SharePoint Services site templates are now built on the standard Windows SharePoint Services site definition instead of our own custom site definition, so they’re a little more stable (there were a number of Beta 2 issues around this).
Team Explorer
Enhanced copy behavior.
Can open files read-only, or for edit (it used to be only for edit). Read-only is now the default.
More Process...
Un interessante confronto di Buck Hodges fra TF Version Control e CVS
Chi implementa AddIn's in Visual Studio troverà delle grandi novità con la prossima versione dell'ambiente di sviluppo. Innanzi tutto cambia totalmente il deployment, nel senso che non c'è più bisogno di registrare la componente con regasm (non si passa più da COM esplicitamente), poi si hanno miglioramenti sensibili sull'object model dell'IDE (_DTE). La registrazione ora passa da un file xml (con estensione addin) contenente le informazioni dell'addin e di come questo venga letto dall'IDE.
Nello sviluppo però ci si trova di fronte ad una piccola difficoltà, come 'deregistrare' l'addin ? Si è vero, se per deployare un addin basta xcopy,...
Riprendo il posto del blog di Team Foundation. E' stato aggiornato l'extensibility kit di Team Foundation Server. A differenza dell'extensibility kit di Visual Studio 2005 (VSIP) penso che questo sia fondamentale per tutti coloro i quali usarenno Team Foundation Server. A tutti noi infatt capiterà di dove personalizzare i report, i work items e così via...
Chi ha installato la beta 2 di Team System (in particolare Team Foundation Server) avrà trovato una serie di nomi ufficiali e nomignoli. E noto che in MS (ma non solo) si usano i nomignoli prima del rilascio. Bene, per fare chiarezza enuncio i nomi che potrebbero comparire in qualche modo:
"Burton" è un pò tutto Visual Studio team System"Currituck" è il work item tracking system"F1" è il profiling system"FxCop", "PREfast" sono static code analyzers per codice managed e C++ rispetivamente"Hatteras" è il source code controller (l'evoluzione di Visual Source Safe)"Okracoke" è il web testing system"Whitehorse" sono i designer dei sistemi distribuiti
Gli altri...
Siamo abituati, da buoni sviluppatori a gestire le build con i comandi di menu "Build Solution", "Rebuild solution", oppure F6 e così via. Quando si sviluppa in team la cosa diventa un pò più complessa e solitamente si sceglie chi si occupa del build della soluzione, il quale deve attenedere che tutti abbiano fatto checkin per poter procedere. In alternativa ci si può appoggiare a msbuild, nant e così via che però non sono integrati con il source control, la reportistica, gli strumenti di testing e code analysis...
In Team System il problema viene risolto a monte con Team Build. In...
Lorenzo ha evidenziato il post di Rob riguardante un chiarimento (sinceramente ci voleva) sulle innumerevoli versioni (saranno 7) di Visual Studio 2005. Ce ne sarà per tutti i gusti :-)
Molti dicono che Visual Studio Team System va bene solo per le grandi aziende con team di oltre 50/60 persone. Se fosse così probabilmente in Italia non ci sarebbero tanti casi !
Mi sono chiesto il perchè di questa affermazione e probabilmente è legato ai costi delle varie licenze (abbastanza alti comparati a quelli attuali). Sinceramente la vedo come una 'scusa' debole in quanto il costo va rapportato al valore. Se Team...