Staged execution of unit tests on Team Build

2015-01-19

When running Unit Tests in your build system, you may want to first run the most important suite, the one that should never fail, the ones that are currently being changed, finally the regression suite and integration tests that may be slower to execute.

Team Build supports this feature, though many probably never knew that this was in the system since the first release of the Workflow based Team Build 2010.

In your build definition you can easily add multiple test runs, and for each test run define which tests should run. Not a fixed list of tests (a vsmdi test list), but a dynamic list based on attributes of the test.

The following steps will take you through the basic gist to get this working on your Team Build instance.

Configure Git for Visual Studio to use a proxy server

2014-12-31

Unlike most features of Visual Studio, the Git tools do not (always) automatically pick up the Widows proxy settings, being dependent on a number of open source libraries which don't seem to be benefiting from the same Windows Proxy Auto-Detection.

This is a shame, really, but it doesn't make it impossible to have Git for Visual Studio to pick up a proxy server.

To configure your proxy server, you must  set an Environment Variable called "HTTP_PROXY". It follows the same configuration scheme as Team Explorer Everywhere. After setting the variable, restart Visual Studio if you had it open when changing the environment.

Most cross-platform applications will try to use this variable, if applications suddenly start to behave strangely, they might be under the influence of this variable. In my case I picked up such behavior in Calibre Ebook Management.

Enabling Requirement based suites for other work item types (without putting them on your backlog pages)

2014-12-20

A few weeks ago a client asked me whether they could link test cases to the Feature and Epic work items and whether they could create a Requirements Based Suite for these work items in Test manager. And while investigating the new "Bug on the Backlog" feature of TFS 2013 update 4 I found that there is a bug preventing MTM from showing bugs for requirements based suites. This little trick works for both problems.

Initially I thought it would not be possible, The work items that would show up in MTM needed to be in the Requirements Category and that is also the category that governs which work item types show up on the Backlog. Since Features can't be both in the Requirements Backlog and the Feature Backlog, I initially gave up.

Then I got an email from Martin Hinshelwood with hint of where to look. The ProcessConfiguration.xml allows you to decouple the Requirements Backlog from the Requirements Category. With these items decoupled, it would be possible to stick any work item in the "Requirements Category" without them showing up on the Product backlog.

Enabling "Bug on the Backlog" feature for the Scrum template

See also: StackOverflow

TFS 2013 update 4 has been out for a few weeks now and one of it's features allows you to easily put Bug work items on the backlog. This feature is very useful for users of the MSF Agile and MSF CMMI process templates, but is not enabled for users of the Scrum template. Teams using the scrum template will see teh "TF400917" error message and the checkbox will be disabled:



This makes sense, since Bugs have always been on the backlog for Scrum teams. I did look into what's needed to enable this feature and if you have custom templates the following tutorial may be useful to you as well.

To make this work you have two options, one is to take an existing process template and edit it, the other is to edit your process template in a lice project. I tend to prefer the first, but the latter will work as well.

Agile Chair Game - Some alternate suggestions

2014-11-23

If you've been at an Agile conference, been a Scrum Master for quite some time and joined an Agile meetup group (here in The Netherlands there are several), then you probably found that games can be very quick ways t energize any meeting and to drive learning through fun.

One game I've been doing a lot during Scrum Developer courses is a variation on the Agile Chair Game as described on Tasty Cupcakes.

Just to reiterate the goal of the game very quickly. Have the team learn quickly by failing in rapid succession and learning from their mistakes. The game drives short cycles, inspection and adaption and lays down a number of restrictions that they (initially) cannot work around (just like the real world does).

As I mentioned we've been doing a number of small changes to the game, so here's how we play it:

Amazons entry into the Dutch book market is not without issues...

2014-11-15

Amazon has finally announced that it opened its digital book store in The Netherlands. Due to the protected pricing on books in The Netherlands that took way longer than many people hoped for. Like me, a  lot of fellow Dutchmen have found their way to the US Amazon Kindle store and have been reading away happily for years now, as long as you don't mind hacking around with Calibre and removing the DRM protection from other sourced ebooks, reading on your Kindle works just fine that way :).

I myself usually read my books in English anyway and thus order them directly through Amazon.com,

Now that the Dutch site has finally launched I went over to see if I'd switch my "Country of residence" on my Amazon account, but it looks like I'll be waiting to do that for a little while more. Why? Well let me tell you:

Amazon does not yet provide extended warranty on Kindle Devices
My Kindle Paperwhite was damaged on the plane back from Mumbai last week and the screen is no longer functional. I wanted to order a replacement device, but that is not (yet) possible directly through Amazon.nl. One used to be redirected to Amazon.com (and pay quite a bit of import taxes), but now it's possible to order through Amazon.co.uk or Amazon.de.

In the order now window Amazon offers you the option to extend the warranty and accident protected with another 2 years. It doesn't tell you at this stage that the warranty is not applicable to residents of The Netherlands.

I contacted Amazon support and they confirmed the option. It looks like Extended Warranty will be available in the future, but it's unsure if it will be in the next 30 days (extended warranty must be purchased in the first 30 days after receiving the Kindle).

The collection of books is miserable (if you read titles in their original language)
This is an interesting problem. If you've ever walked into a large Dutch Bookstore, you might have noticed the large US and UK imports section. Especially the Science Fiction and fantasy sections are often better stocked in their original language.

When you go to Amazon.nl right now you'll find quite a few titles in Dutch, but all of the English titles I looked for were not available in my country. I can order them through bol.com (Amazon's biggest Dutch competitor), it's probably a licensing issue.

The Dutch books are a different story. All major publishers seem to be present, but a lot of the smaller publishers are not present yet.

You can't have a best of both worlds option
I don't really understand why, but it's not possible to be subscribed to two Amazon stores at the same time. Even though I can at present buy any ebook from amazon.com and have it sent to my (now defective) Kindle, I can no longer when I activate the Dutch amazon store.

As long as I don't make the switch I can't order any books that were written by Dutch Authors, unless I order them in English.

Now that doesn't make any sense to a normal consumer. I suspect again that this is a legal and licensing issue, but that doesn't mean I want to understand it.

Concluding
I'll stay with Amazon.com for the time to come. I'm hoping that they'll offer the same extended library of Kindle books in the future on either site.

Changes to the Scrum 2013.4 process template

2014-10-27

In 2013.3 Microsoft did a number of massive changes to support Test Suites and Test Plans as work items. In 2013.4 only a few changes were made. There currently is no "upgrade my template" wizard, but you can always apply these changes manually.

A quick compare between the two template yields the following results:



C:\users\Jesse.Houwing\Desktop\Process Templates> tf folderdiff "Microsoft Visual Studio Scrum 2013.3" "Microsoft Visual Studio Scrum 2013.4 - RC" /recursive

Quickly comparing these different files shows the following changes:

ProcessTemplate.xml & Classification.xml & ProcessGuidance.html
Version and name changes only.

Backlog Overview.rdl & Velocity.rdl
There have been quite a few changes to the queries of these report. These make it quite a bit faster. You can use the TFS power tools to push it to your existing Team projects or you can manually overwrite the report in every place it has been deployed.

ProcessConfiguration.xml
The introduction of the Bug Work Items and Microsoft.BugsCategory to support switching bugs from showing up on the product backlog. Add the following category:

<BugWorkItems category="Microsoft.BugCategory" pluralName="Bugs" singularName="Bug">
    <States>
      <State value="New" type="Proposed" />
      <State value="Approved" type="Proposed" />
      <State value="Committed" type="InProgress" />
      <State value="Done" type="Complete" />
    </States>
  </BugWorkItems>

Bug.xml & ProductBacklogItem.xml
The removal of the BacklogPriority control from the work item form. With the Agile Tools now being part of the Standard features of TFS, it's no longer required for non-MSDN-subscribers to manually edit the BacklogPriority field. Plus, with the automatic regeneration of the field data, it was confusing to many users anyway. Remove the following line from both work item type definitions.

<Control FieldName="Microsoft.VSTS.Common.BacklogPriority" Type="FieldControl" Label="Backlog Priority" LabelPosition="Left" />
 

Search This Blog

Loading...

Most Reading