110 likes | 246 Views
Test Lab Automation Using Virtualization. Sameer Jagtap, Director Product Management sameer.jagtap@surgient.com. The Short Version. Manual configuration of test infrastructure is extending test cycle time, impacting quality
E N D
Test Lab Automation Using Virtualization Sameer Jagtap, Director Product Management sameer.jagtap@surgient.com
The Short Version • Manual configuration of test infrastructure is extending test cycle time, impacting quality • Virtualization can consolidate infrastructure and reduce time spent manually configuring systems • Virtualization by itself is not a complete solution • Virtual labs are applications that extend and automate virtual infrastructure environments • Virtual labsallow self-service access to complex computing infrastructure, on-demand • Virtual labs enable both IT and testing organizations to save time and resources allowing you to keep pace with those ever shrinking deadlines
What’s the Problem? • Increasing complexity of applications • N-tier, distributed architecture, SOA etc. • Increasing number of test cases • More systems, boundary conditions, components etc. • Distributed development/test teams • Remote offices, contractors, offshore etc • Lots of moving parts • Machines, Operating Systems, networks, patches, upgrades, databases, browsers, app servers etc
The Net Result.. • Managing resources and test-configurations in a lab is a serious bottleneck • Resulting in: • Elongated test cycles • Higher capital expenses • Inadequate coverage • Decreased quality • The test is automated. What about the test environment?
A Look at the Software Test Lab.. • Complex multi-tiered configurations • Constant set up and tear down of configurations • Resources shared, always being repurposed • Test environment set up must be repeatable • Remote access for distributed teams • Integrated with Test Automation tools Test Labs are highly dynamic & high rate of change environments
Current Approaches for Test Labs.. • Manual configuration of lab machines • Scripted application deployments • Imaging tools • Virtual Machines
Why Virtual Machines? • Consolidation (well known) • Multiple virtual machines in one box • Reduces Capital Expenses • Flexibility – the ability to… • Save • Restore • Reset • Move around • Share • Suspend • Isolate • Snapshot • etc Flexibility of Virtual Machines makes them ideal for rapidly changing Test Lab environments
But…Virtualization Has Limitations • Works great for individuals and small teams • More machines (virtual or physical) requires more management • Tools are targeted at technical IT user who is managing systems not application environments • Most existing tools focus on production workflows • No understanding of how to manage a test lab and sharing capacity among different test groups • No understanding of application architectures and dependencies • No support for remote access without compromising network security; no support for team collaboration • No understanding of test automation and the needs of these tools
Virtual Lab Automation Definition “Virtual Lab Automation applications leverage virtualization to automate the allocation, provisioning, access and tear down of test configurations in a completely self-service manner”
Core capabilities of an Automated Virtual Lab • Self-service usage model (24x7, no dependencies) • Pool and share lab machines/resources • Common library for storing configurations • Automated provisioning of configurations • Dynamic cloning of configurations • Snapshot and Restore of configurations • Remote Access to lab environment • Scheduled deployment of configurations • Ability to integrate with Test Automation tools (ASQ) • Team Collaboration • Reporting and Tracking
Out-of-the-Box Apps: • Roles • Business Processes • Personalized UIs Dev Test Stage Support • Virtual Lab Enabling Platform: • Manages teams and organizations • Automates key processes • Manages underlying virtual and physical infrastructure • Open standards: • .NET, SOAP, CSS, XML/XSLT • Packaged integrations: • ASQ tools Surgient Architecture Surgient VQMS Lab Automation Application Surgient Virtual Labs On-Demand Platform Team Enablement Self- Service Portal Admin Portal Remote Access Collab- oration Tools Process Automation Open API Usage Tracking Sched- uling Work- flow Role- Based Access Infrastructure Optimization & Management Dynamic Resource Pooling Library Mgmt Complex Config Mgmt Snap- shot Mgmt Virtual Infrastructure Physical Infrastructure