virtualizing your testing with visual studio lab management n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Virtualizing your testing with Visual Studio Lab Management PowerPoint Presentation
Download Presentation
Virtualizing your testing with Visual Studio Lab Management

Loading in 2 Seconds...

play fullscreen
1 / 56

Virtualizing your testing with Visual Studio Lab Management - PowerPoint PPT Presentation


  • 278 Views
  • Uploaded on

Virtualizing your testing with Visual Studio Lab Management. Randy Pagels Sr. Developer Technology Specialist Microsoft Corporation www.teamsystemcafe.net. Application lifecycle management. Modern app development Continuous value delivery and rapid response to change. ALM your way.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Virtualizing your testing with Visual Studio Lab Management' - maire


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
virtualizing your testing with visual studio lab management
Virtualizing your testing with Visual Studio Lab Management

Randy Pagels

Sr. Developer Technology Specialist

Microsoft Corporation

www.teamsystemcafe.net

application lifecycle management
Application lifecycle management

Modern app development

Continuous value delivery and rapid response to change

alm your way
ALM your way

Agile Planning

Team Rooms

Source Repos

Test Case Management

Feedback Management

Build and Continuous Integration

Team Foundation Server

Visual Studio Online

continuous acceptance testing
Continuous acceptance testing

Testing toolbox

Role tailored tools

  • Manual testing
  • User testing
  • Ad-hoc exploratory testing
  • Planned manual testing
  • Automated testing
  • Keyword testing
  • UI automation testing
  • Performance testing

Continuous integrations

Build | Deploy | Test

Virtual lab automation

SIT

Dev

UAT

Prod

Automated testing

Unit testing

Integration testing

Performance testing

Load testing

Stress

Shortened cycle times

why lab management
Why Lab Management?

Test Matrix

Lots of configurations to test

Agile demands

Faster build, test, deploy cycles

Environments

Multi-tier, multi-machine

environments

Debugging

Significant % of bugs hard to repro

Reset Machines

Need build deployments on clean state

Hardware

Utilization is poor

what are the key features
What are the key features?

Standard environments

Simplified environment status

Auto installation of test agents

One test agent that does everything

Support for clustered hosts using SCVMM

lab management basics
Lab Management Basics

Environments

  • Create and manage virtual or physical dev/test environments

Snapshots

  • Take snapshots or revert to existing snapshots
  • Works on any virtual machine
  • Deploy current or any build to environment

Environment Viewer

  • Interact with machines through the environment viewer
  • Define test settings for environments
lab management automation
Lab management automation

Development and Testing

Environments

Repro environments

Development environments

Test environments

On-premise | Cloud

Lab management

services

Environment provisioning

Environment templates

Environment snapshots

benefits of virtualization
Benefits of Virtualization

Testing

Virtual test environments can be used for

Testing CI builds using GUI automation

Debugging

Debug hard to reproduce defects

Maintaining snapshots of older builds

Demos

Demos for customers

Test Production hot-fixes

Load Testing

testing architecture
Testing Architecture

Team Foundation Server

Test Controller

Team Build

System Center Virtual Machine Manager (SCVMM)

VM Template Library

SCVMM Environment

Standard Environment

VM Template 1

VM Template 2

Web Server

VM

Database Server

VM

VM Host

Database Server

Web Server

Test Agent

Test Agent

Test Agent

Test Agent

Test Agent

VMMAgent

Test Agent

build deploy test
Build-Deploy-Test

(1) Get Source Code

(2) Compile projects

Team Build

Team Foundation Server

(8) Publish results to

Team Foundation Server

(3) Copy build to running

environment

SCVMM Environment

Test Controller

(7) Send test

results

(4) Run deployment scripts for

each machine

(6) Execute

automated tests

Web Server

VM

Database Server

VM

VM Host

(5) Create environment snapshot

Test Agent

Test Agent

VMMAgent

test controller
Test Controller

Run automated tests remotely

Distribute automated tests to multiple environments

Run tests and collect test data remotely using Microsoft Test Manager

Run tests in a lab environment

Deploy applications using a build-deploy-test workflow

test agents
Test Agents

Manage testing, workflow, and network isolation

Scale out load generation

Distributed data collection

Distributed test execution

Automatically installs test environments

Can be manually installed/maintained using the VMPrepTool

sharing and libraries
Sharing and Libraries

Tester

IT Administrator

  • Import VMs
  • Create Environments
  • Test in Environments
  • Store Environments
  • Manage virtual machine infrastructure
  • Create, deploy, and manage virtual machines
  • Monitor and manage hosts/library servers
  • Manage global configuration settings

Self Provisioned VM Environment

VM Template Library

SysPrepped “golden images’

Domain Controller

Client VM

Web Server VM

Database Server VM

Create Active Environments

Win Server 2008

Win Server 2012

Win XP SP 3

Win Vista SP 2

Win 7 SP 1

Win 8

Save Environments in Library

Test Agent

OS Support

4 machine environment

slide19
DEMO

Lab Management

value prop for developers testers
Value Prop for Developers/Testers
  • Improved Productivity
  • Improved Quality
  • Improved dev/test relationship & collaboration

Save costs by virtualizing your labs

slide21
FAQ
  • Licensing
    • Lab Management is per CPU license for the hosts you want to manage
    • For client you need either Ultimate/Test Professional
    • SCVMM license for dev/test is included.
    • Guest OS license is part of MSDN subscriptions
  • VMWare Support
    • Support through use of Standard Environments
slide23
Visit Team System Café Today!The door is open 24/7 at the café! Stop by for a cup of joe and delicious tidbits on AppDev topics!

blog’s

blogroll

freshly brewed news

downloads

evidence

documents

slides

freshly brewed news

training

links

lab

management

links

user groups

events

in person

webinars

most popular

items

popular

items

help & how too

training

books

FAQs

FAQs

TFS

ALM

azure & windows 8

resource links

http://www.teamsystemcafe.net

lab management case studies
Lab Management Case Studies
  • Confused.com - Price Comparison Site Increases Revenue Opportunities with Automated Development Tools
  • ICONICS - Global Software Developer Expects to Double Productivity, Cut Costs by 10 Percent
  • Notion Solutions - Consulting Company Uses Latest Development Tools to Improve Software Test Process
  • Minitab - Software Developer Uses Integrated Tool Set to Cut Costs and Streamline Development
  • Fujitsu Canada - Consulting Firm Improves Productivity with Expanded Reporting, Version Control Tools
lab management case studies cont
Lab Management Case Studies (cont.)
  • EPiServer - Web Content Management Firm Streamlines Development, Testing with Integrated Tools
  • Readify - Software Vendor Speeds Testing, Improves Collaboration, and Wins New Business
  • Länsförsäkringar AB - Insurance Company Expects to Cut Software Development Time and Costs by 20 Percent
  • Equiniti - Share Registrar Cuts Testing Time and Improves Application Lifecycle Management
  • K2 - Software Company Improves Testing and Debugging Efficiency by 20 Percent
lab management resources
Lab Management Resources
  • Using a Lab Environment for Your Application Lifecycle
    • Getting Started with Lab Management
    • Guidance for Creating and Managing SCVMM Environments
    • Cloning Virtual Machines through Network Isolation
    • Creating Lab Environments
    • Managing Lab Environments and Virtual Machines
    • Testing for Continuous Delivery with Visual Studio 2012
    • Setting Up Automated Build-Deploy-Test Workflows
best practice topology g uide
Best Practice Topology Guide

Topology 1 - Multiple AT, Load Balancer and Test network with firewall settings, controlling the test traffic in and out of Corp network

Network load balancer

Firewall rules

Topology 2 - Multiple ATs and DTs without load balancers and Test network with SAN based library and host

SAN support

Topology 3 - TMG, Windows NLB and with Test apps having DB tier outside of virtual environment

Setting up rules in Threat Management Gateway

Deployment and testing on a shared machine outside the envt

Topology 4 - Multiple ATs and DTs, load balancers and environments joined to a different domain

DNS conditional forwarding

other resources
Other resources
  • Visual Studio ALM + Team Foundation Server Blog
    • Visual Studio Team
  • Installing TFS 2012 with Lab Management 2012 Blog
    • By Martin Hinshelwood
  • Visual Studio Lab Management videos
    • Lab Management Team
  • Visual Studio Lab Management Guide
    • By the Visual Studio Rangers
lab management summary
Lab Management Summary
  • Built on Hyper-V
  • Integrated with TFS 2012
  • Enabled by SCVMM 2012
    • Integrated management
    • Multi-hypervisor management
    • P2V and V2V
    • Template deployment
    • Cloning
    • Optimize resource usage
  • Managed by Microsoft Test Manager

Automated Build-Deploy-Test Workflow

Reduces Hardware Utilization

Remote Diagnostic Collection

Virtual Environment Setup/Tear down

Hyper-V Host

Virtual Machines

questions
Questions?

Randy Pagels

rpagels@microsoft.com

www.teamsystemcafe.net

lab management highlights
Lab Management Highlights

Create richer actionable bugs

Simplifies environment setup and snapshots

Create checkpoints to aid defect resolution

Quickly debug issues in the same environment

Connect to the test environment snapshot with network isolation

Automate end-to-end workflow

Out of the box build-deploy-test automation workflow

Revert to baseline configuration

Requires

Visual Studio Ultimate or Visual Studio Premium

Team Foundation Server

Microsoft Test Manager

Includes

System Center Virtual Machine Manager license

network isolation
Network Isolation

Internal network

  • An internal virtual network is created for each environment
  • VMs get the same MAC, IP address and computer name in all copies
  • VMs are also connected to the lab network with a unique IP address and computer name
  • Domain-based apps require and internal domain controller

Copy 1

10.10.1.5

10.10.1.6

IIS

DB

172.22.48.16

172.22.48.15

Lab

network

Copy 2

10.10.1.5

10.10.1.6

IIS

DB

172.22.48.18

172.22.48.17

reviewing a rich bug
Reviewing a Rich Bug

Detailed test steps including indexed video recording of test session and exact failed step

A

  • Environment snapshot taken and attached
  • Screen capture showing exact point of failure

B

lab center tester experience
Lab Center – Tester Experience

Create new multi-machine environment choices

Start or Shutdown environments

lab center tester experience1
Lab Center – Tester Experience

A

Choose between two environment types

slide40

A

Configure machine to run UI tests

slide41

A

Create a multi-machine environment as close to production as possible for testing

team build build setup
Team Build – Build Setup

A

Select the special lab build template

Select an environment to deploy a build to

C

B

Change the lab wizard workflow parameters

team build build setup1
Team Build – Build Setup

D

Queue a new build or deploy an existing one

team build build setup2
Team Build – Build Setup

Select the Test Plans and Test Suites to run in environment

Specify the deployment options to move application to servers

E

F

team build build deploy test
Team Build – Build~Deploy~Test

A

Workflow run for Deployment and Lab

B

Auto deployment of current build

C

Test against Lab Environments Automatically

lab center automated test execution
Lab Center – Automated Test Execution

Test Agent automatically started

Thumbnail view of each machine in the environment

visual studio a rich bug
Visual Studio – A Rich Bug

Developers can quickly debug issues on the exact same testing environment

B

A

Environment snapshot taken and attached as a link with bug

lab center storing environments
Lab Center – Storing Environments

Select environment to store

A

B

Storing in Library

lab center retrieving environments
Lab Center – Retrieving Environments

Easily deploy currently stored environments

A

B

Names of all the environments stored in the library

lab center connecting to machines
Lab Center – Connecting to Machines

Right-click to connect to an environment

A

Connect to individual machines via the environment viewer

B

lab center connecting to machines1
Lab Center – Connecting to Machines

Shows desktop on individual machine via the environment viewer

D

C

See each machine in environment

lab center connecting to machines2
Lab Center – Connecting to Machines

Shows test execution in environment

F

E

Complete Snapshot maintenance across ALL machines in environment

support for geo distributed labs
Support for GEO-Distributed Labs

US Lab - Redmond

Host Group-US

Host Machine

Host Machine

Host Machine

Library Share-US

Library Server

US Lab - Hyderabad

TFS App Tier

Host Group-India

Host Machine

Host Machine

Host Machine

Library Share-India

Library Server

continuous value delivery
Continuous Value Delivery

PRODUCT

BACKLOG

Define

Ideation

Measure

Actionable learning

REQUIREMENTS

  • PowerPoint Storyboarding
  • Agile Planning Tools
    • Sprint, Backlog, Portfolio
  • Continuous Integration

Operate

Deployment to feedback

Develop

Idea to working software

  • SCOM Integration
  • IntelliTrace in Production
  • PreEmptive Analytics

Sprint

Monitor

  • Code Lens
  • Team Rooms
  • Suspend & Resume
  • Code Reviews
  • Feedback Collection
  • Unit Testing
  • Exploratory Testing
  • Continuous Integrations
  • Continuous Deployments

Architect

Architectural Discovery

OPS

BACKLOG

  • Understand the Domain
  • Understand Code Complexity
  • Maintain Control

WORKING SOFTWARE