dinsdag 5 februari 2008

Virtualized Test lab

Virtualization in IT is big big business, but for some reason virtualization is still very little known when it comes to testing. At the clients I’ve been in my career, only one used virtualization in the test environment and it was best described as a first step. Some observations about virtualizing in test environments:

- Virtual test data


Every test professional knows the problem with test-data. There’s a test database which is very nice after the first set-up, but over some months or years it gets to be a real garbage can of good data, bad data, corrupt data, …, you know what I’m talking about. So .. make it virtual. Make it so that your updates are non persistent. If you reboot the machine it will be back in it’s original state. Now you’ll probably say, “but we need to create new test data that’s persistent for our new tests”. Off course you need to do that. So here’s how you do it. Make two test databases. One that allows persistent updates and one virtual that doesn’t. when you need to create persistent test data, connect to the first, and add your data. Schedule a job at night that makes a non persistent virtual DB from this DB and the next day you’ll have your VM up and running with your new data, do all your dirty test work on this one, if you screw up, restart and voila, you’re all set to go again.

- Virtualize the complete test lab.


You need to test your applications on a whole array of setups? You have a whole room of PC’s that’s hardly ever used? Virtual machines are your answer. Make one for every setup that you can imagine. Dump them on a fileserver and your test lab is ready to go. Your test engineers enter the office choose their machine of choice and are happily burning test cases in no time. No more hardware that’s hardly used at all. You can make them persisten, non persistent, anything you want, it will save a lot of setup time.

-Performance testing


Do not use virtualization when doing performance tests. Although the technology is getting really mature, there will always be a performance penalty. And even if there’s almost none, prediction of scaling in an production environment will be quite impossible

So in short: When hearing 'test lab' or 'test environment', consider virtual machines, it won’t always be possible but test labs are made for this technology.

Geen opmerkingen: