Using VDI as a software test environment

VDI isn't just for desktop delivery. Virtual desktops can also serve as a software test environment, where you can do OS and app testing quickly and easily.

VDI has lots of uses, but there's one you might not think of right away: using virtual desktops as a software test environment.

Your VDI deployment is a great place to test software, operating systems and more in a flexible, manageable and right-sized environment. Customers often ask me how to build clean systems for IT testing, but if you already have virtual desktop infrastructure (VDI) in any form, a simple software test environment is already right at your fingertips.

Most desktop developers rely on several different environments to create, test and prove their code. Before VDI caught on -- and even still today -- administrators used Type 2 client hypervisors such as VMware Workstation or Microsoft Virtual Server to develop software test environments. But now, the power and flexibility of VDI lends itself to app testing and more.

Before I go further, it's important to note that I'm not advocating the use of what I call "poor man's VDI" for IT testing purposes. Poor man's VDI is using a hypervisor platform such as VMware vSphere or Citrix XenServer to create static one-to-one virtual machines that have no broker service to control their creation, resources, state or destruction. This kind of VDI is difficult to manage and, as it scales, it becomes very costly.

To use VDI for IT testing, I'm specifically referring to a VDI deployment that incorporates a full-blown broker service, such as VMware View or Citrix XenDesktop. These products give you the best flexibility and scalability in a one-to-one or one-to-many desktop deployment.

Benefits of VDI for IT testing

Some of the really great advantages of using a VDI environment for your desktop application and OS testing needs are:

  • A VDI deployment allows you to quickly deploy multiple desktops.
  • The configuration or state of the desktop can be variable, which is beneficial for multiple IT testing landscapes and allows for more flexible OS and app testing.
  • Snapshots are always great for moment-in-time IT testing.
  • VDI offers wizards that can create as many as one to 1,000-plus desktops for you, and even add them to an Active Directory domain, with a few mouse clicks. (Couple this with PowerShell scripting to add testing users, and you've got a pretty great automated software test environment!)
  • thin provisioning makes great use of limited (and costly) disk space.
  • Did I mention that it's quick?

You could also use a VDI deployment for testing server operating systems, but I'll be the first to tell you that some VDI vendors won't officially support it. That being said, I tend to walk on the side of risk and have deployed VDI broker-controlled Windows Server 2003 R2 and 2008 R2 virtual machines without any issue using Citrix XenDesktop and VMware View.

More software test environment resources:

FAQ: Virtual testing and development environments

Using test labs for virtual software testing

Plus, VMware View actually supports Windows Server 2008 R2 as a configuration, so there's no risk there. I have used both, but the lack of support for server OSes on Citrix's part (outside of Provisioning Server) can be a deal-breaker for some, while View embraces them and it works very well. (I believe VMware planned to support server OSes in View because it combined all of Lab Manager's capabilities into that product.)

Chances are you already have the tools to use VDI as a software test environment. If you don't, look into virtual desktop tools that can help you create a fast-working IT testing space.

Mike Nelson
has been in IT for more than 20 years, with exposure to a very diverse field of technologies and solutions. He has devoted over half a decade to virtualization and server-based computing. Nelson is currently a senior analyst at a Fortune 100 company in the U.S. Midwest.

Dig Deeper on Virtual desktop infrastructure and architecture