I spent a week in early May at the Software Design Review (SDR) / Knowledge Transfer at our Microsoft campus in Bellevue, WA. The SDR is an opportunity for our AX development team to present and discuss release progress with the customers and partners that have been selected for the ‘AX6’ Technology Adoption Partner (TAP) program.

This is the first SDR that I’ve attended and the opportunity to mingle with customers and partners for five days is a fantastic experience. And the fact that these are some of our best customers and partners makes it even better. It even started before I arrived when I realized that I was sitting next to an attendee on the plane ride from Minneapolis to Seattle.

My formal participation in the event was a discussion on test tools for the AX ecosystem. This is something I’ve been working on for some time. The primary visible progress so far has been the white paper that we published after AX 2009 was released last year. Now we’re starting to formalize the concepts that we intend to bring forth in the AX6 timeframe and I wanted to get some feedback on the ideas.

There are two parts to the ‘story’ that I laid out for several people in the past week. I will elaborate some in this post.

The first part of the story is ‘Business Logic Acceptance Tests’. The name is very descriptive of these tests. The tests would exercise AX at the business logic layer; no user interface components would be engaged in these tests. An acceptance test is typically defined as a black box test that verifies basic functionality. These tests would be written by Microsoft and delivered to partners and customers as a regression suite.  We have to do some more investigation on a couple of different approaches for developing these tests, but conceptually there should not be an issue.

The second part of the story is one that I’ve been waiting to prove out for quite some time. The AX 2009 white paper references the Rosario release of Visual Studio and the test capabilities that are in the release. In fact, we’ve been discussing this capability with the Visual Studio team for over a year and a half!  We now know this release as Visual Studio 10 (VS10) and we have been using some pre-beta bits for a few months. Further, we have some prototype AX code that enables the Capture / Playback capability in VS10 to work better with AX. 

The proof of concept that I demoed features the Microsoft Test Runner (code name Camano) client executing a test case with AX. Camano builds on Team Foundation Server to provide Test Case Management capability. The Test Management capability by itself is very cool, but there’s more. When a tester executes a test for the first time, Camano has the capability to record the UI actions executed. On future executions, the tester can ‘fast forward’ through the test case using the recorded UI actions. But wait, there’s more… Camano has wonderful integration with the bug tracking capability in TFS so that the “No Repro” problem is significantly mitigated.

Amit Chatterjee has been detailing the test capabilities of VS10 in his blog.  There are a lot of good posts there, but check out this one for more information on Camano.  With the VS10 beta coming out last week, there’s an opportunity for you to play with the bits directly.

The feedback on this two prong approach was very positive. We need to take the next steps to flesh out the concepts further and work on some pilots in the coming months.  I look forward to working with others on the AX development team and the contacts made in the past week to make this approach a reality for AX6!