Testing in the Cloud using Panda
Upcoming SlideShare
Loading in...5
×
 

Testing in the Cloud using Panda

on

  • 249 views

 

Statistics

Views

Total Views
249
Views on SlideShare
244
Embed Views
5

Actions

Likes
0
Downloads
1
Comments
0

1 Embed 5

http://www.linkedin.com 5

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Testing in the Cloud using Panda Testing in the Cloud using Panda Presentation Transcript

  • 06/06/2010 Panda: Cloud Computing in Testing Tao Jiang www.linkedin.com/in/taojiang2000/ Rohitasva
  • 22 Objectives Cloud Computing in Latitude System Testing What is Panda? Things behind Panda
  • 33 Latitude Advanced Patient Management
  • 4 Previous Testing Experience 4 Manages Enrollment, Device Ordering/Replacement, Fax and CRM • EAI: Enterprise Applications Integration. – Uses IBM WebSphere MQ to broker messages between systems • SAP: Finished Goods / LAT hardware • KMS / RMI: Marries the communicator and the PG • TRaCII: Physician/Patient Information and Device Registration • RightFax: Fax yellow alert • Siebel: Customer Relationship Management tool Latitude System Testing heavily involved in Business System.
  • 55 Testing Experience in Release 6.0 Business System Testing using MQ Tool • Messages are generated Manually based on Templates • Manually configure MQ Tool for target test environment • Manually play messages into the flow between LAT & EAI Some use Business System Simulator, called iBot. • Hard coded default value and limited customization in generated Messages. Not usable for Validation team. • Resource hog: Each environment runs as 5 windows services. • Cannot support all Release 6.0 environments at the same time. • Work Less and Crash Often: one dedicated engineer for maintenance • Cost More: Often takes 1-2 hours for crash analysis and recover. The time put other test engineers idle was enormous. Others use DTS • Very easy and fast • Use SQL enrollment by tweaking database. • Cause data issues in testing. • Not the way how the real system works
  • 66 Panda: System Overview
  • 77 What Panda Does? Panda is a collection of: • Panda Service Cloud: Core Functionalities • Panda Web Application – Software on Demand – Support All Aspects of Latitude Enrollment Process • Panda API: Python Interface to Panda, APM Web and DTS – Automated Testing – Batman: Hardware BAT Tool Host all Latitude Release 7.0 test environments Broker to IBM WebSphere MQ XML Message Signing Service for Secure Messaging Business System Message Generator Latitude Business System Simulator LDAP Client Tool Enrollment Data Validation Tool
  • 88 Design Highlights: Technologies Multi-Tenancy Architecture • One App Fits All test environments. • Scale up to thousands or down to just one • Upgrade available to all tenants immediately. Embedded Jetty Web Server • Efficient, embeddable and pluggable web server and servlet container. • Panda Core Service is only 150K in Size! RESTful JSON Web Service • Completely stateless web service • Highly tuned SQL Queries for great performance • JSON instead of XML for Efficiency and Flexibility • Platform and Language Neutral Solution jQuery and jQuery UI: write less, do more • Use AJAX/JSON, No Page Reload • Web Application with Desktop Application User Experience
  • 99 Panda Core Service EnvironmentJetty SAP Sim TRaC Sim KMS/RMI Sim OracleDB LDAP MQ Writer RegFGServlet EnvInfoServlet MsgSignServlet MqWriterServlet DBUtilServlet MessengerServlet UtilityServlet MQ Reader
  • 1010 Panda API: Overview Panda Core Service APM Web DTS Protocol Data Panda API HTTP POST Enrollment Python Functions HTTP GET · Generate Business System message · Send Message to IBM WebSphere MQ · Register device to server for auto response on shipment and device data response message. · Get Test Team List. · Get Test Protocol List. · Get Test Data List · Get Test Data Detail. · Test engineer can start with getting test protocol data from DTS. · Create business system message based on protocol data. · Send out business system message via Panda server. · Call APM Web functions to finish enrollment.
  • 1111 Scalability HTTP HTTP HTTP Panda Core Service (6,0) Panda Core Service (7.0) Panda Core Service (8.0) Apache HTTP Server Proxy Panda Web Application Static Content HTTP/HTTPS HTTP/HTTPS Panda API Currently, there are two instances of Panda Services in the cloud: • Release 7.0 for System Testing: 23 environments in 5 geographic regions. • Release 7.0 for App Dev: 5 environments in 5 geographic regions. • In fact, One Panda instance is capable of supporting all environments we currently have. Multiple Panda instances are used to support different Latitude releases. The front end Apache HTTP Server can be configured as: • SSL Proxy • Load Balancer • Request Dispatcher
  • 1212 Results Simplify Test Development • Common test tasks are handled by Panda Service • Upgrade on Server makes available to all clients instantaneously • Centralized Control means less chance to break test • Focus on application issue other than testing issue Improve Test Efficiency and Quality • Fully compliant with message schema and behavior of real business system • Tools and API make it easy for End to End testing • Save the need for environments with business system during test debug phase • Speeds up test development and execution
  • 1313 Results (cont) Stability • Auto-Recover from connection lose, even power outage • Eliminated testing downtime Reduce Cost • No more dedicated person for maintenance • Only 150K in size with Low Memory Footprint • Can be efficiently run even on a $300 Netbook • 30 minutes for deploying Panda from scratch; 5 minutes for Upgrade • Multiple Panda instances for supporting multiple Latitude releases
  • 1414 Conclusions Cloud computing is efficient and cost effective in software testing. Lots of success stories from our customers. We expect wider use of cloud computing inside Boston Scientific.
  • 06/06/2010 Thank You