virtualization

6
Page | 1 Virtualization in Software Testing

Upload: colloquium

Post on 20-Jan-2015

1.647 views

Category:

Technology


3 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Virtualization

P a g e | 1

Virtualization in Software Testing

Presented by:-

Anil Jain

Page 2: Virtualization

P a g e | 2

AbstractThe explosive growth in the global software market demand with rapid advancement in computing technologies has shortened the software development life cycle and due to restrictive cost pressures, the focus has now shifted to optimizing/reducing software development lifecycle.

The term “virtualization” has become ubiquitous, representing any type of process obfuscation where a process is somehow removed from its physical operating environment. Because of this ambiguity, virtualization can almost be applied to any and all parts of an IT infrastructure.

Organization NeedSoftware Testing has became a complex & challenging undertaking that requires support for a diverse set of computer and network environments, typically involving collaboration between geographically distributed teams and composite nature of application having a large number of development tools and components.

Many of the projects do have questions in context of software testing which need to be addressed like

1. Running regression on application with continuous & quickly changing business demands.

2. How to create isolated “sand box” environments for Patch specific applications3. Matching compatibility with clients running on different operating systems and

connecting to applications via different technologies.4. Searching for cost effective way of hardware equipments & its maintenance.5. Testing of multiple

Virtualization accelerates deployment of new capabilities without needing to acquire new hardware and configure components. It also reduces application testing requirements and compatibility issues and simplifies disaster recovery and compliance.

Pragmatic ConsiderationIn order to address challenges mentioned above, a solution was required which will allow the tester to:

easily configure the test environment and test the application; establish unified test automation process across both physical and virtual machines; provide test environments that can be versioned and recreated for troubleshooting or

bug analysis

Following techniques were considered:

1. Multiple Physical Devices2. Partitioning of Devices (Multi OS Systems)3. Ghost Software for cloning4. Virtualization

Detailed analysis was performed for all the 4 techniques based on nature of application and the frequency of testing. Following are the limitations identified:

Page 3: Virtualization

P a g e | 3

Multiple Physical Devices

1. Additional cost to procure more hardware resources2. Additional involvement of Infrastructure team for setup of multiple devices3. Additional human resources to work on these systems4. Overall increase in testing time

Partitioning of Devices (Multi OS Systems)

1. Partition cannot be done for low configuration machines2. Although multiple OS can be installed but parallel execution is not possible3. Combination of different OS, platforms, browsers is limited to number of

partitions4. Significant underutilization of CPU cycles

Ghost Software for Cloning

1. Frequent Disk Cloning leads to hardware deterioration2. Limited scalability

Hence, virtualization is considered over the other 3 techniques as an optimal solution to overcome all the identified limitations/challenges of the various techniques.

References

http://en.wikipedia.org/wiki/

Multiple Physical devices

Multiple CPU and Input Output Devices

Ghost for Cloning

Disk cloning to get a Windows Explorer like program

Virtualization

Abstract of Computer Resources

System Partitioning

Partitioning for Multi OS installation