TFS 2010 Test Tools Blog
This is a great resources for questions about automated testing within TFS 2010.
This is a great resources for questions about automated testing within TFS 2010.
TFS TeamBuild has come along way with with 2010; the current version is almost a total rewrite of the previous versions. There are a ton of articles online about what’s great about the new TeamBuild (workflow, lab management, parallel tasks…), but I’m going to cover what’s not so great. Again Microsoft has really ignored the concept of application deployment and has just focused on compiling and testing. This is fine if you are building a DLL, but not if you are building a web application or database… or let alone an enterprises system. To be clear about what I mean by deployment; I’m referring to the process of taking built code and deploying it from a central server environment to the various code environments that exist in your organization (DEV, QA, PROD..). It really is a key step in the process… How are you supposed to test a N-tier web application without 1st deploying the web, service and database components? The closest they come is the new Lab Management functionality; but this is far more focused on managing virtual machines. They should have separated this all out… activities around TFS, activities around compiling, activities around the file system, activities around testing, activities around IIS, activities around databases and activities around virtual servers. A good example on how the default template is almost useless out of the box is that all the outputs from EVERY project in your solution get dropped into one big flat directory. This is the same behavior as in previous versions. What you really want is a folder for each application. this would make it easier to bridge from building to deploying as you have a folder that represents the output of a deployable component that can be copied to another server. You can see my MSDN post about this here…
Luckily though this all can be fixed; albeit with some work. It is possible to create both your own workflow activities and your own build process workflows. So I dove into the default build process template to understand what is going on there. From there I’ve started to create my own build process workflow. It’s a work in progress, but for now it at least drops each application’s output into it’s own directory in the drop folder. I will be adding the deployment and test tasks next.