June 2008 Entries

End2End Automated Testing: Second Day & More Thoughts on Why Automation

How about doing a full regression of the system under development every ten minutes? Second Day Automation Testing One of the things I neglected to mention (on purpose) in my End2End post the other day was that you also test for the second day. In this test you are sending in new items and updating some existing items. You also leave some of the items from the first day completely alone to see what happens to them. This is done in the same way as the first, except you look for a second input file ......

Subversion 1.5.0 Released

Subversion (SVN) just released version 1.5.0 recently on June 18, 2008. With it comes bug fixes and boosts in performance. It is highly recommended that you reference the release notes, and pay attention to merge tracking: Merge tracking means Subversion keeps track of what changes have been merged where. This reduces the overhead involved in maintaining branches, and gives users a way to inquire what changes are merged — or are available to be merged — on different lines of development. VisualSVN ......

End2End Automated Testing: Calling Applications Remotely

Calling a remote application, you want it to run almost always in its native directory and not against your calling End2End code's directory. Why? You don't want to have to verify whether the application uses or will use any kind of relative paths. You want your End2End Tests to work in any respect. So you can implement the basic code for starting a process using the System.IO and System.Diagnostics .Net libraries. Public Sub RunApplication(ByVal filePath As String, ByVal args As String, ByVal waitForExit ......

End2End Automated Testing: Setting Network Permissions Automatically

When setting network permissions, you are going to want to use a random permission name that you can clean up once the test is complete. The "-q" in the call for CasPol is very important, because it quietly and automatically sets the permission. You can implement the basic code for starting a process using the System.Diagnostics .Net library. Private Const FRAMEWORK_DIRECTORY As String = "Microsoft.NET\Framework\v2... Public Sub AssignNetworkPermission(ByVal remoteDirectory As String, ByVal ......

End2End Automated Testing

We have started an initiative this year. We call it End2End Automated Testing. The idea is based on a couple of factors. Many times in the past we have not had an easy way to verify our configuration, security and deployment to an environment in an automated way. The second is that regression testing is a very arduous process for our QA staff when it must be completed. How do we give time back to our testers and verify everything in a given environment is correct? With automation of course! So what ......

Weddings and High School

I worked sitting right next to a guy named Chris Stein for 2 years here in Topeka, KS. He had an interesting sense of humor, was really thin, and smokes. He left the company nearly a year ago, but we still remain friends. A few months ago I was reminded of one of my high school teachers named Mr. Stein. Mind you, I went to high school in a very small town about 200 miles from where I live and work now. It was worlds ago (and a different life) for me. I started thinking about his name and wondered ......

Develop for Maintenance

One thing I always keep noticing is that people will develop things without even giving a thought to maintenance. This somehow seems impolite to me. I suffer from Coder Alzheimer's, which means I can't remember a thing I wrote after not seeing after three weeks. That is why I think about things like maintenance. I am seeing all new code if I have been away from it for awhile! Now that is not completely true, but imagine how it may be for the guy who has never seen your stuff. Challenge: How Easy ......