SlideShare a Scribd company logo
1 of 21
Download to read offline
Dolphin: Regression Test System for Latitude
Tao Jiang
www.linkedin.com/in/taojiang2000/
Yongjin Yan
Rohitasva Rohitasva
Objectives
• Infrastructure as a Service
• Latitude Regression Test System
2
Latitude System
3
Challenges in Latitude System Testing
4
First Step
Standardize Test Station (Dolphinize)
• Create private network for each test station
• Extensively Use PG system board
• Eliminate moving parts to reduce error
• Set it, and forget it!
5
Dolphin Test Station Configuration
6
Infrastructure as a Service
Dolphin delivers Testing Infrastructure as a Service (IaaS)
• Virtualized Test Station (Hardware Virtualization)
• A Controller (virtual test station manager)
– Manage test farm machines
– Testing Service Provider
• Device configuration and control
• Regression Testing
• On demand testing hardware resource
7
Dolphin: System Overview
8
What Dolphin does?
Dolphin is a collection of:
• Cloud Infrastructure: Testing Infrastructure
– Test Station on Demand
– Regression Testing
• Cloud Applications: Software as a service over Internet
– Dolphin Web Application: Software on Demand
• Automated Device Setup & Test Control
– Integrate with Panda Web Application
• Automated Account Enrollment
• Dolphin API: Client interface to Dolphin Cloud Service
– Get Virtual Test Station Instance via API
– Test can be run on any machine not just on test station
9
Device Setup using Dolphin
10
Test Control for Exploratory Testing
11
Demo: System BAT
• Run Real Device
• End to End
• Acceptance Testing Effort
Latitude 6.0: ~ 1 week
Latitude 7.0: ~ 1 day
Dragon 1.0: ~ 1 hour on a Dolphinized test station
12
Dolphin: Regression Test System
• Run test on different test station without manual intervention.
• Auto configure hardware per test requirement.
• Auto configure and update supporting software packages.
• Work order scheduling.
• Test result reporting.
13
Work Order Example
workorder = {
"Submitter": "fortyTwo/g041145",
"Test": {
"Arguments": ["-t", "Test1_Supported_PGs", "-c", "Case1_Supported_PGs", "-x", "JP_1.0_JAGJP", "-i", "W172-400-0", "-p", "pgsim=false,enroll=false,wac=10057,+auto"],
"Name": "Case1_Supported_PGs/W172-400-0/6443/JP",
"Protocol": "SDVT_DeviceData_Supported_Devices",
"Stream": "DVT_System_Dragon",
"TestScript": "SDVT_DeviceData_Supported_Devices.py"
},
"Environment" : { # environment to run against
"Type" : "REG", # Clock, Biz , When type is Clock but different region, regression system will do a deployment.
"Region" : "JP“ # region field is a required.
},
"Hardware": { # Hardware information in order to run the test.
"Setup" : “true", # True if the test script want s regression system setup hardware for it. False, test script will setup hardware by itself.
"Communicator": {
"ModelNumber": "6443",
"SerialNumber": "5077766",
"ServerConnectionType": "ethernet"
},
"PulseGenerator": {
"ModelNumber": "W172-400-0",
"SerialNumber": "5077766",
"PGFamily": "Ingenio",
"Type": "PGBoard"
}
},
# URL for test result notification
"NotifyUrl" : "http://yourTestManagementSite.com/regression/results/"
}
14
Implementation Strategy
• Dolphin Controller and Agent Service
• .Net application written in C#.
• Windows Communication Foundation (WCF): for building service-oriented applications.
• C# Selenium 2.0 WebDriver for driving Dragon App.
• Expose functionalities as a set of web services.
• Automated device setup and account enrollment
• Simplify test script development
15
Apache Server as a Cluster Service
• Cluster N + 1 application servers
– N farm machines and 1 controller
– Base URL: http://dolphin/dolphinws
– Forward command to target automatically
• Deliver static page content
16
Dolphin Web Service API
• Schedule regression test by submitting work order
• Test station rental service
• Configure and Control devices
17
Technology Highlights
• C# .NET 4.0
• WCF: Windows Communication Foundation
• Selenium 2.0 and WebDriver (C# version)
• jQuery and jQuery UI
• Apache HTTP Server
18
Results
• Standard hardware configuration
• On demand web application
• Integrated with Panda for automatic enrollment
• Centralized management reduces the maintenance cost
• Flexibility
– Hardware on demand
– Language-Neutral Solution to automated test development
– Platform-Neutral Solution to test execution
19
Conclusions
• Dolphin continues Panda's successful adventure of cloud
computing (Software as a Service)
• Dolphin brings hardware resource into cloud
(Infrastructure as a Service)
• Greatly simplifies Latitude system-level end-to-end
testing
• Reduces cost
20
21
Thank You

More Related Content

What's hot

Backend Server Validation
Backend Server ValidationBackend Server Validation
Backend Server Validation
Yu Tao Zhang
 
Windows Azure PowerShell Cmdlets
Windows Azure PowerShell CmdletsWindows Azure PowerShell Cmdlets
Windows Azure PowerShell Cmdlets
Pavel Revenkov
 

What's hot (20)

[UC4] Version and Automate Everything
[UC4] Version and Automate Everything[UC4] Version and Automate Everything
[UC4] Version and Automate Everything
 
Backend Server Validation
Backend Server ValidationBackend Server Validation
Backend Server Validation
 
Windows Azure PowerShell Cmdlets
Windows Azure PowerShell CmdletsWindows Azure PowerShell Cmdlets
Windows Azure PowerShell Cmdlets
 
OpenKilda: Stream Processing Meets Openflow
OpenKilda: Stream Processing Meets OpenflowOpenKilda: Stream Processing Meets Openflow
OpenKilda: Stream Processing Meets Openflow
 
Objective SQL Server Performance
Objective SQL Server PerformanceObjective SQL Server Performance
Objective SQL Server Performance
 
Automation Evolution with Junos
Automation Evolution with JunosAutomation Evolution with Junos
Automation Evolution with Junos
 
Nagios Conference 2014 - Leland Lammert - Distributed Heirarchical Nagios
Nagios Conference 2014 - Leland Lammert - Distributed Heirarchical NagiosNagios Conference 2014 - Leland Lammert - Distributed Heirarchical Nagios
Nagios Conference 2014 - Leland Lammert - Distributed Heirarchical Nagios
 
44CON 2014 - I Hunt TR-069 Admins: Pwning ISPs Like a Boss, Shahar Tal
44CON 2014 - I Hunt TR-069 Admins: Pwning ISPs Like a Boss, Shahar Tal44CON 2014 - I Hunt TR-069 Admins: Pwning ISPs Like a Boss, Shahar Tal
44CON 2014 - I Hunt TR-069 Admins: Pwning ISPs Like a Boss, Shahar Tal
 
Osic tech talk presentation on ironic inspector
Osic tech talk presentation on ironic inspectorOsic tech talk presentation on ironic inspector
Osic tech talk presentation on ironic inspector
 
Hosting Ruby Web Apps
Hosting Ruby Web AppsHosting Ruby Web Apps
Hosting Ruby Web Apps
 
EMEA Airheads- ArubaOS - Understanding Control-Plane-Security
EMEA Airheads-  ArubaOS - Understanding Control-Plane-SecurityEMEA Airheads-  ArubaOS - Understanding Control-Plane-Security
EMEA Airheads- ArubaOS - Understanding Control-Plane-Security
 
Power of Isolation
Power of IsolationPower of Isolation
Power of Isolation
 
Calico with open stack and chef
Calico with open stack and chefCalico with open stack and chef
Calico with open stack and chef
 
Understanding firewall-policies-their-effectiveness-in-defending-against-netw...
Understanding firewall-policies-their-effectiveness-in-defending-against-netw...Understanding firewall-policies-their-effectiveness-in-defending-against-netw...
Understanding firewall-policies-their-effectiveness-in-defending-against-netw...
 
Comparing ZooKeeper and Consul
Comparing ZooKeeper and ConsulComparing ZooKeeper and Consul
Comparing ZooKeeper and Consul
 
CENTRAL MANAGEMENT OF NETWORK AND CALL SERVICES
CENTRAL MANAGEMENT OF NETWORK AND CALL SERVICESCENTRAL MANAGEMENT OF NETWORK AND CALL SERVICES
CENTRAL MANAGEMENT OF NETWORK AND CALL SERVICES
 
Infrastructure as code
Infrastructure as codeInfrastructure as code
Infrastructure as code
 
Archivo de reseteo de a ps
Archivo de reseteo de a psArchivo de reseteo de a ps
Archivo de reseteo de a ps
 
Kubernetes at Datadog the very hard way
Kubernetes at Datadog the very hard wayKubernetes at Datadog the very hard way
Kubernetes at Datadog the very hard way
 
CCNA EIGRP Overview and Basic Configuration
CCNA EIGRP Overview and Basic ConfigurationCCNA EIGRP Overview and Basic Configuration
CCNA EIGRP Overview and Basic Configuration
 

Similar to Dolphin: Regression Test System for Latitude

Similar to Dolphin: Regression Test System for Latitude (20)

Modernizing Testing as Apps Re-Architect
Modernizing Testing as Apps Re-ArchitectModernizing Testing as Apps Re-Architect
Modernizing Testing as Apps Re-Architect
 
Getting started with RISC-V verification what's next after compliance testing
Getting started with RISC-V verification what's next after compliance testingGetting started with RISC-V verification what's next after compliance testing
Getting started with RISC-V verification what's next after compliance testing
 
Integrating Infrastructure as Code into a Continuous Delivery Pipeline | AWS ...
Integrating Infrastructure as Code into a Continuous Delivery Pipeline | AWS ...Integrating Infrastructure as Code into a Continuous Delivery Pipeline | AWS ...
Integrating Infrastructure as Code into a Continuous Delivery Pipeline | AWS ...
 
Andreas Grabner - Performance as Code, Let's Make It a Standard
Andreas Grabner - Performance as Code, Let's Make It a StandardAndreas Grabner - Performance as Code, Let's Make It a Standard
Andreas Grabner - Performance as Code, Let's Make It a Standard
 
Putting the Sec into DevOps
Putting the Sec into DevOpsPutting the Sec into DevOps
Putting the Sec into DevOps
 
Creating Complete Test Environments in the Cloud: Skytap & Parasoft Webinar
Creating Complete Test Environments in the Cloud: Skytap & Parasoft WebinarCreating Complete Test Environments in the Cloud: Skytap & Parasoft Webinar
Creating Complete Test Environments in the Cloud: Skytap & Parasoft Webinar
 
(APP307) Leverage the Cloud with a Blue/Green Deployment Architecture | AWS r...
(APP307) Leverage the Cloud with a Blue/Green Deployment Architecture | AWS r...(APP307) Leverage the Cloud with a Blue/Green Deployment Architecture | AWS r...
(APP307) Leverage the Cloud with a Blue/Green Deployment Architecture | AWS r...
 
Automation in Network Lifecycle Management - Bay Area Juniper Meetup
Automation in Network Lifecycle Management - Bay Area Juniper MeetupAutomation in Network Lifecycle Management - Bay Area Juniper Meetup
Automation in Network Lifecycle Management - Bay Area Juniper Meetup
 
Ntcip Device Tester
Ntcip Device TesterNtcip Device Tester
Ntcip Device Tester
 
DevSecOps: Putting the Sec into the DevOps
DevSecOps: Putting the Sec into the DevOpsDevSecOps: Putting the Sec into the DevOps
DevSecOps: Putting the Sec into the DevOps
 
Simics - Break the Rules of Product Development
Simics - Break the Rules of Product DevelopmentSimics - Break the Rules of Product Development
Simics - Break the Rules of Product Development
 
Free OpManager training Part1- Discovery and classification season#3
Free OpManager training Part1- Discovery and classification season#3Free OpManager training Part1- Discovery and classification season#3
Free OpManager training Part1- Discovery and classification season#3
 
IBM InterConnect 2015 - IIB in the Cloud
IBM InterConnect 2015 - IIB in the CloudIBM InterConnect 2015 - IIB in the Cloud
IBM InterConnect 2015 - IIB in the Cloud
 
LRITC introduction
LRITC introductionLRITC introduction
LRITC introduction
 
.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric
 
Cloud Performance Testing with LoadRunner
Cloud Performance Testing with LoadRunnerCloud Performance Testing with LoadRunner
Cloud Performance Testing with LoadRunner
 
Nonfunctional Testing: Examine the Other Side of the Coin
Nonfunctional Testing: Examine the Other Side of the CoinNonfunctional Testing: Examine the Other Side of the Coin
Nonfunctional Testing: Examine the Other Side of the Coin
 
NET Aspire - NET Conf IL 2024 - Tamir Dresher.pdf
NET Aspire - NET Conf IL 2024 - Tamir Dresher.pdfNET Aspire - NET Conf IL 2024 - Tamir Dresher.pdf
NET Aspire - NET Conf IL 2024 - Tamir Dresher.pdf
 
Integration Testing as Validation and Monitoring
 Integration Testing as Validation and Monitoring Integration Testing as Validation and Monitoring
Integration Testing as Validation and Monitoring
 
Deep Dive - Usage of on premises data gateway for hybrid integration scenarios
Deep Dive - Usage of on premises data gateway for hybrid integration scenariosDeep Dive - Usage of on premises data gateway for hybrid integration scenarios
Deep Dive - Usage of on premises data gateway for hybrid integration scenarios
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Recently uploaded (20)

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 

Dolphin: Regression Test System for Latitude

  • 1. Dolphin: Regression Test System for Latitude Tao Jiang www.linkedin.com/in/taojiang2000/ Yongjin Yan Rohitasva Rohitasva
  • 2. Objectives • Infrastructure as a Service • Latitude Regression Test System 2
  • 4. Challenges in Latitude System Testing 4
  • 5. First Step Standardize Test Station (Dolphinize) • Create private network for each test station • Extensively Use PG system board • Eliminate moving parts to reduce error • Set it, and forget it! 5
  • 6. Dolphin Test Station Configuration 6
  • 7. Infrastructure as a Service Dolphin delivers Testing Infrastructure as a Service (IaaS) • Virtualized Test Station (Hardware Virtualization) • A Controller (virtual test station manager) – Manage test farm machines – Testing Service Provider • Device configuration and control • Regression Testing • On demand testing hardware resource 7
  • 9. What Dolphin does? Dolphin is a collection of: • Cloud Infrastructure: Testing Infrastructure – Test Station on Demand – Regression Testing • Cloud Applications: Software as a service over Internet – Dolphin Web Application: Software on Demand • Automated Device Setup & Test Control – Integrate with Panda Web Application • Automated Account Enrollment • Dolphin API: Client interface to Dolphin Cloud Service – Get Virtual Test Station Instance via API – Test can be run on any machine not just on test station 9
  • 10. Device Setup using Dolphin 10
  • 11. Test Control for Exploratory Testing 11
  • 12. Demo: System BAT • Run Real Device • End to End • Acceptance Testing Effort Latitude 6.0: ~ 1 week Latitude 7.0: ~ 1 day Dragon 1.0: ~ 1 hour on a Dolphinized test station 12
  • 13. Dolphin: Regression Test System • Run test on different test station without manual intervention. • Auto configure hardware per test requirement. • Auto configure and update supporting software packages. • Work order scheduling. • Test result reporting. 13
  • 14. Work Order Example workorder = { "Submitter": "fortyTwo/g041145", "Test": { "Arguments": ["-t", "Test1_Supported_PGs", "-c", "Case1_Supported_PGs", "-x", "JP_1.0_JAGJP", "-i", "W172-400-0", "-p", "pgsim=false,enroll=false,wac=10057,+auto"], "Name": "Case1_Supported_PGs/W172-400-0/6443/JP", "Protocol": "SDVT_DeviceData_Supported_Devices", "Stream": "DVT_System_Dragon", "TestScript": "SDVT_DeviceData_Supported_Devices.py" }, "Environment" : { # environment to run against "Type" : "REG", # Clock, Biz , When type is Clock but different region, regression system will do a deployment. "Region" : "JP“ # region field is a required. }, "Hardware": { # Hardware information in order to run the test. "Setup" : “true", # True if the test script want s regression system setup hardware for it. False, test script will setup hardware by itself. "Communicator": { "ModelNumber": "6443", "SerialNumber": "5077766", "ServerConnectionType": "ethernet" }, "PulseGenerator": { "ModelNumber": "W172-400-0", "SerialNumber": "5077766", "PGFamily": "Ingenio", "Type": "PGBoard" } }, # URL for test result notification "NotifyUrl" : "http://yourTestManagementSite.com/regression/results/" } 14
  • 15. Implementation Strategy • Dolphin Controller and Agent Service • .Net application written in C#. • Windows Communication Foundation (WCF): for building service-oriented applications. • C# Selenium 2.0 WebDriver for driving Dragon App. • Expose functionalities as a set of web services. • Automated device setup and account enrollment • Simplify test script development 15
  • 16. Apache Server as a Cluster Service • Cluster N + 1 application servers – N farm machines and 1 controller – Base URL: http://dolphin/dolphinws – Forward command to target automatically • Deliver static page content 16
  • 17. Dolphin Web Service API • Schedule regression test by submitting work order • Test station rental service • Configure and Control devices 17
  • 18. Technology Highlights • C# .NET 4.0 • WCF: Windows Communication Foundation • Selenium 2.0 and WebDriver (C# version) • jQuery and jQuery UI • Apache HTTP Server 18
  • 19. Results • Standard hardware configuration • On demand web application • Integrated with Panda for automatic enrollment • Centralized management reduces the maintenance cost • Flexibility – Hardware on demand – Language-Neutral Solution to automated test development – Platform-Neutral Solution to test execution 19
  • 20. Conclusions • Dolphin continues Panda's successful adventure of cloud computing (Software as a Service) • Dolphin brings hardware resource into cloud (Infrastructure as a Service) • Greatly simplifies Latitude system-level end-to-end testing • Reduces cost 20