Skip to main content

Agile with TFS Presentation Follow-up

Thanks for everyone attending my "Implementing an Agile Software Development Process with Team Foundation Server (TFS)" presentation today. We enjoyed some good discussion. I had a few TFS-related questions pop up which I thought I'd address in a post:

Q. Is it possible to fail the build but only if a specific test fails? So, let's say we have 3 tests. If Test01 or Test02 fail, fail the build. If Test03 fails, don't fail the build.

A. Not that I'm aware of. If any test fails in a build but compilation succeeded, that build lists a state of Partially Succeeded. With TFS 2008 SP1, we received a property to modify or control this behavior: TreatTestFailureAsBuildFailure. If true (false is the default), any test failure will set the build state to Failed (vs. Partially Succeeded). Nice write-up here.

You might take the approach of creating two separate builds: one that contains all your tests and one containing just mission critical tests. Set TreatTestFailureAsBuildFailure to true for that one and any test failure will fail the build. Not precisely what you want but close. It may also be beneficial or helpful to check the TestSuccess output parameter.

Q. Can I move a Work Item from one team project to another (prefer not to copy...delete)?

A. Unfortunately, no. One can use the TFS Migration Tool but it's a bit heavy. We typically copy to the destination team project and then Close the source work item. For one client, we even developed a desktop triage application to programmatically copy and then delete defects and task requests between team projects. The client wanted to triage out of one team project and then distribute the work item to the correct team [project].

Comments

Popular posts from this blog

Get Your Team Foundation Server Hate On!

[Google ranking skyrockets... ;-)]

I'm a big fan of TFS/VSTS. However, there are a good pocket of folks who take issue with the way TFS handles or implements a certain feature. Well this is your chance to vent!

I'm planning a presentation around the "Top 10 TFS/VSTS Hates and How to Alleviate Them"...or something along those lines. But I need your help. Post a comment below detailing your dislike. If it's legitimate, I'll highlight it in the presentation and [hopefully] provide an alternative, resolution, or work-around.

Thanks in advance!

Update 7/19/2008: Version Control and Microsoft

Rollback a Ooops in TFS with TFPT Rollback

Rhut roe, Raggie. You just checked in a merge operation affecting 100's of files in TFS against the wrong branch. Ooops. Well, you can simply roll it back, right? Select the folder in Source Control Explorer and...hey, where's the Rollback? Rollback isn't supported in TFS natively. However, it is supported within the Power Tools leveraging the command-line TFPT.exe utility. It's fairly straightforward to revert back to a previous version--with one caveot. First, download and install the Team Foundation Power Tools 2008 on your workstation. Before proceeding, let's create a workspace dedicated to the rollback. To "true up" the workspace, the rollback operation will peform a Get Latest for every file in your current workspace. This can consume hours (and many GB) with a broad workspace mapping. To work around this, I create a temporary workspace targeted at just the area of source I need to roll back. So let's drill down on our scenario...
I'm workin…

Shrinking WSS (Sharepoint) SQL Server Log Files

Yesterday, while migrating a source repository from StarTeam to TFS, I received the following error:
"TF30042: The database is full. Contact your Team Foundation Server administrator."Excuse you? Sure enough, my 100+ GB drive was full on the server. But I'd only migrated around 1000 items. Surely SQL wasn't consuming 100MB per file.

Turns out (yes, there was a lot of crud on the drive but...) the majority of the space, almost 40GB was being consumed by the Windows Sharepoint Services WSS Content data and log SQL Server files. Huh? I still need to investigate and understand why this portal, which is 100% unused, grew so large. Regardless, here's what I did to resolve:

Since this is not yet a production database, I flipped the SQL recovery option from Full to Simple for WSS Content and several other databases. Detail here and here.
Executed the maintenance plan for all the databases to get backups and clear out some of these files. That didn't help much. The Auto_…