Browsing articles from "December, 2007"

Dude, where’s my job?

Dec 20, 2007

4c 10Logo tag RGB Dude, wheres my job? I found out recently that I will be available for exciting, new job opportunities at the start of next month. It’s not my fault, honestly. These things happen. In this case, things happen to me and 22 of my co-workers.

Company President and CEO Brian Jones said Wednesday that the layoffs would be necessary if the Defense Information Systems Agency follows through with a plan to reduce the amount of a software development contract with the Oak Ridge National Laboratory.

ORNL spokesman Billy Stair said the contract’s annual appropriation has varied. The agency is considering reducing the amount from about $12 million to about $7 million, he said.

There you have it kids.  That’s seven meeellion dollars that used to pay my bills, and it’s going bye bye.  Such is life.

I’ve had a good run with DPRA.  If you recall, I was very happy to come on board, and I have no regrets. I am, however, ready to start my next geeky adventure.

If you, or someone you know, is looking for a first class geek for hire, I may be your man.  Have a look at my resume. Download copies and share them with friends. icon smile Dude, wheres my job?

Cheers,

++Alan

tt twitter Dude, wheres my job? tt delicious Dude, wheres my job? tt facebook Dude, wheres my job?

Bringing Cheer to West Nokomis Circle

Dec 10, 2007
Comments Off

I stood on a ladder and cursed for a couple of hours yesterday.   Oh, and some lights got hung somewhere between the expletives. icon smile Bringing Cheer to West Nokomis Circle

 Bringing Cheer to West Nokomis Circle

Feliz Navidad,

++Alan

tt twitter Bringing Cheer to West Nokomis Circle tt delicious Bringing Cheer to West Nokomis Circle tt facebook Bringing Cheer to West Nokomis Circle

Getting Started With TDD in Visual Studio

Dec 7, 2007

I’ve given talks on doing test-driven development (TDD), and I’ve had lots of conversations with other developers interested in giving it a try.  What I’ve found is that the simple setup and configuration hurdle is intimidating to most people at the start.  In this entry, I intend to remove that initial hurdle (and excuse).

The professional version of Visual Studio 2008 now includes MSTest unit testing framework.  I’ve been working with MSTest since the release of Visual Studio 2005 Team Developer Edition.  If you want to get started doing TDD in Visual Studio, I recommend you get the Professional version of VS2008 and learn MSTest.  I’m not recommending MSTest over any other unit testing framework.  I am asserting that the easiest way to get started is to use an integrated tool.

logo Getting Started With TDD in Visual StudioUnfortunately, purchasing the latest and greatest from Microsoft is too large a commitment for many people coming to TDD or Visual Studio for the first time.  I believe that TDD is essential, and I want to remove as many barriers as I can for people interested in implementing TDD in their development practice.  To that end, I have created project and item templates which enable a simple TDD workflow using the FREE NUnit testing framework and the FREE Visual Studio 2008 Express editions.

It should be noted at the start that I could use some VSX-fu to enable even more automation in the standard edition of VS2008, but the license expressly forbids the use of VSX APIs in the express editions of Visual Studio.  If you already have the standard edition of VS2008, or the standard or professional editions of VS2005, check out testdriven.net for seamless integration of NUnit, and several other unit testing frameworks, with Visual Studio.  For this discussion, however, we will stick with templates to avoid angering the “powers that be” in Redmond.  That being said, the templates and instructions for their use should work as advertised in any version of Visual Studio 2005 or 2008.

You will need to download and install the express edition of Visual C# (or Visual Basic) from here.  Next download this version of the NUnit framework and install it into the default location.  The references and paths in the project and item templates are specific to the 2.4.3 version of NUnit.  Finally, you will need to grab my templates and extract them.

TemplateList Getting Started With TDD in Visual Studio

There are four templates which are zip files, so don’t extract them individually.  There is a project template and a new item template each for C# and Visual Basic.  I will be using the C# templates for this walkthrough, but everything here applies equally to VB.

You will need to manually copy the templates to the appropriate folders.  Typically user templates reside somewhere under Documents/My Documents.  You can verify the location by opening Visual C# Express Edition, selecting the tools menu, then the options pad.  In the resulting dialog, check show all settings in the bottom left corner.  You should now be able to select the Projects and Solutions node in the treeview.  This will display the current locations for item templates and project templates.

TemplateLocations Getting Started With TDD in Visual Studio

Once you know the proper template locations, copy NUnit Test Project – CS.zip to the project template location and NUnit Test Fixture – CS.zip to the item template location.  If you have touched all the bases to this point, you should see the new project template option when you select the file menu and click the New Project pad.

ProjectTemplates Getting Started With TDD in Visual Studio

Select the NUnit Tests template under My Templates, give the project a name and click OK.  After the generation process is complete, press F5.  After a brief pause for compilation, the NUnit form should display and run the tests.  You can then enjoy watching the default tests happily fail.  Close the NUnit form to return to the IDE.

NUnitGUI Getting Started With TDD in Visual Studio

If you open the <projectname>.cs file, you will see a test fixture (class) with three default test methods included.  You can add as many tests as you want to this class, but you will probably want to group your tests into separate classes.  When you want to add another test fixture, simply right-click on the project and select add -> new item.  You will most likely have to scroll to the bottom of the item templates list to find the NUnit Test Fixture listed under my templates.

AddNewItem Getting Started With TDD in Visual Studio

ItemTemplates Getting Started With TDD in Visual Studio

I like having my tests run on every compile, but you may want more options.  If you add a new NUnit test project to an existing solution, you will need to configure the solution for it to launch the NUnit GUI as the default start action.  Alternately, you can configure the solution to launch the currently selected project.  Right-click the solution in Solution Explorer and choose properties.  There you can select the Unit Test project if you want a single startup project.  You can choose the Current selection to have more control, or you can choose the multiple startup projects option, if you are feeling especially frisky.

SolutionProperties Getting Started With TDD in Visual Studio

If you have made it this far, then you have everything you need to practice TDD in Visual Studio.  From here, I recommend you get familiar with NUnit by reading their documentation.  Next, you should learn more about TDD and how to be effective with it.  I have compiled some extensive bookmarks for your convenience.

I hope this tutorial has helped eliminate your concerns and alibis over taking the TDD plunge.  I want to make it as simple as I can for interested developers to get started.  If you have any feedback or suggestions for this entry, please post it in the comments so that I can make this a “go to” reference for aspiring TDDers.

Cheers,

++Alan

tt twitter Getting Started With TDD in Visual Studio tt delicious Getting Started With TDD in Visual Studio tt facebook Getting Started With TDD in Visual Studio

Pages:12»
Alan on stage
Photo courtesy of David Giard

Latest Twitter Updates

East Tennessee .Net Users Group
DevLink
No-www.org
Creative Commons License