Enterprise Library Logging
If you use the text formatters in the Enterprise Library Logging, it outputs the timestamp in UTC time, to get local time add the local keyword to the timestamp.
{timestamp(local)}
Labels: Development
If you use the text formatters in the Enterprise Library Logging, it outputs the timestamp in UTC time, to get local time add the local keyword to the timestamp.
{timestamp(local)}
Labels: Development
Today we reached 100 unit tests on our current project. They are all run every time we check in something to TFS.
This is by far the most unit test on any project that I've worked on, and I think it give me a lot of confidence in the code base. It certainly make me feel better about making significant changes.
Later on, I'll publish more metrics on the project.
Labels: Unit Testing
I'm using Rhino Mock in my unit tests and I needed a feature that was in version 3.3. So I downloaded the newer version and added it to my test project.
Then when I tried to run my tests I started getting this error:
Failed to Queue Test Run : Microsoft.VisualStudio.TestTools.TestManagement.ExecutionException: Test Run deployment issue: The location of the file or directory '...'\MockFramework\Rhino.Mocks.dll' is not trusted.
After a bit of digging I found a post that explained the issue. Basically, when you download a dll from the internet, XP will attach some extra information in the filesystem, which if you try to open the dll from windows it will say "Are you sure?" Well, if VS sees that this dll has this extra info, then it reports it as not being trusted, and VS doesn't support deployment items that are not fully trusted.
I was able to resolve this by going to the dll, right clicking, selecting properties and clicked the "Unblock" button.
Labels: Unit Testing
When we installed CC we had to run it on a different port than the default, so when you would go to cctray and double-click the project, it would fail with a page not found error. We tried to fix it briefly, then just decided to create a link to the correct url.
Well, today I happened to be looking at the Project Configuration Block for CC and found the WebURL property. It says:
"A reporting URL for this project. This is used by CCTray and the Email Publisher. Typically you should navigate to the Project Report on the Dashboard, and use its URL"
So I set this property on my project, went to cctray, double-clicked my project and now it navigates correctly.
If your project name has spaces in it, replace them with "+".
Labels: Continuous Integration
I was doing some work on our CI setup today and thought that it would be really cool to show the build status' in a screen saver.
So I decided to Google for Cruise Control screensavers. I got really excited when I found one here: http://sourceforge.net/projects/cruisesaver
The idea is that the status of each projects is represented by a colored floating orb, very nice. My excitement was soon tempered by the realization that this 1) was written for CC not CC.Net, 2) very early version that doesn't seem complete, 3) it's in java, crap!
I think this would be very cool and maybe they will create a .net version. Or I could work on this in my free time ;)
Labels: Continuous Integration
Since it's a new year, I guess I should make some resolutions:
work related...
personal...
Labels: Misc
The other day I was asked about setting up CI for a project that I'm not involved with, I think this is a good sign.
We are spreading the CI love!
Labels: Continuous Integration