SlideShare una empresa de Scribd logo
1 de 33
The Art Of
System and Solution Testing
Example
• A software developer/tester convention was being held. On the train to the convention, there were a
bunch of developer majors and a bunch of tester majors. Each of the developer majors had his/her
train ticket. The group of testers had only ONE ticket for all of them. The developer majors started
laughing and snickering. Then, one of the software testers said, "here comes the conductor" and
then all of the testers went into the bathroom. The developer majors were puzzled. The conductor
came aboard and said "tickets please" and got tickets from all the developer majors. He then went to
the bathroom and knocked on the door and said "ticket please" and the testers stuck the ticket under
the door. The conductor took it and then the testers came out of the bathroom a few minutes later.
The developer majors felt really stupid. So, on the way back from the convention, the group of
developer majors had one ticket for the group. They started snickering at the testers, for the whole
group had no tickets amongst them. Then, the tester lookout said "Conductor coming!" All the
testers went to one bathroom. All the developer majors went to another bathroom. Then, before the
conductor came on board, one of the testers left the bathroom, knocked on the other bathroom, and
said "ticket please."
Lesson learned: Any test that passed in unit testing can fail in system testing.
Goal
• Find bugs that can not be fund by feature
level testing but will most likely be found on
customer’s Usage.
• If no time, can even only do system level
and solution testing.
• Development is a science, testing is an art.
What Is a System Level Testing
• Company N has a testbed called “Mother of
All Testbed (MOAT). It is the superset of
almost all Company N’s product features.
• To fully execute a cycle, it takes 2 weeks.
• It has just one test case. Compare to feature
level testing where you have thousands of
test cases
What Is a Solution Level Testing
• Company C has a dedicated solution testing
team
• Each solution is an end-to-end application
and has a code name
– VoIP end-to-end solution
– Security end-to-end solution
– MPLS solution
– Cable/DSL solution.
Difference?
• Solution is customer oriented. Not just one
company’s product.
• System testing is product oriented.
• Feature testing is code oriented. (need a
functionality Specification as input)
• System/Solution: 30% strategy, 70%
experience
• Feature:60% strategy, 40% experience
What makes a System/Solution tester
• System/Solution testing is to test the
“Customer”.Input
Tester
Output
User Manual
Customer Secenrios.
Experience
Test Plan/Test Cases
System Level
Defects
System Tester’s 360 Degree Advantage
• They interface with Customer (understand
customer)
• They interface with SE, TME, Product
manager (understand marketing)
• They interface with developer (understand
development)
• They interface with feature tester.
(understand testing)
Trademark of System and Solution Testing
• Race condition
• Memory corruption
• Algorithm performance (routing protocol
convergence time for both uni-cast and
multicast)
• How system perform in low memory and
high CPU (timers will be stretched out)
Typical Bugs Found on System Testing
• Crash: Infrastructure design issue
• Crash: Race condition:
Malloc memory twice, crash only happens
when 1st one success and 2nd one fail.
• Solution : Interoperability with 3rd party
products
System Testing is a Time Capsule
• 99.9999% up time = 10 seconds down time
in 3 years
• What your customers will experience in 3
years?
• Emulate 3 years in 2 weeks
• That is why lots of stress testing
System Testing is a Time Capsule
正常 异常 1 异常 2 异常 3 异常 4 异常 5 异常 6
1-2 年
2 周
Ideas on Building Your System
Cases
• Defined the baseline
– Background traffic.
– # of clients
– Complexity of the configuration
• Identify scalability (performance) index.
• Get the typical customer scenarios and
topologies.
• Design test cases.
Build Your Background Traffic
• Background traffic need to drive CPU and
memory to 30%-40%.
• Need to be diverse among typical
applications
• Need to be measurable on
– Latency
– Transit loss.
• IMIX traffic may be considered
No Performance Index, No Testing
• Performance index means scalability
• Size of the routing tables
• Number of VPN tunnels
• Voice call per second
• Routing protocol convergence time
• Traffic throughput.
• Peer count (P2P)
• Connection Rate (P2P)
• Concurrent connections
QC Meets Customer
• The product is a solution. If the problem
isn't solved, the productdoesn't work.
• The best test case can ever be designed on
your product is in the customer’s real
network.
• The complexity of your test cases should be
equal to your most valuable customers.
• Customers like QC visit from vendor
company very much. You will be surprised
Define Your Scenarios
• This is the way customer use it.
• Different location, different area (signal
coverage)
• Barrtery
• Different combination way of using our
product
– GPRS browsing with MP3 in the background
while have an unidentified call
• Different speed for mobile devices
20/80 Rule in the consumer
market
• Satisfied customers seldom speak up
• Unhappy customers will complain
• 1% chance of reproducible rate is ok in the
network equipment market, but not ok in
the consumer market
• Higher testing standard in the consumer
market
Simulation Is Your Friends
• Customer level’s scalability can be achieved
in our lab by simulator
• Traffic simulator (commercial testing
equipment are expensive).
• Client simulator
• Protocol Simulator.
• Device Simulator.
Simulation Is Your Friends
• A 32 timer reverse Bug, happen once in
every 2 years, how you test that?
Steps to Design a System Level
Testing
• One liner for your testing goals.
• List the features you want to cover.
• Define your features performance index
(metrics)
• Design your topology
– Customer feedback
– Performance index requirement
• Pick your test simulator (budget conscious)
Give a Detail Example on DHCP server testing
• Definition: Carrier grade high availability DHCP server System level testing.
• Goals: testing system instability especially during the failover.
• Performance index:
– IP address release per second.
– Size of the database.
– Size of the log.
– Command and Control traffic (admin traffic)
– DNS traffic.
• Customer’s topology (simple)
• Simulator: DHCP client simulator
Give a Detail Example on DHCP server testing
• Scenarios:
1 Primary down, then come back after secondary switch over
2 Primary down, then come back right away before the switch over.
3 Primary down, then come back after switch over, the down again.
4 Primary keep flapping – up, down, up, down for a while (both before
and after the switch over).
5 Secondary down, then come back.
6 Secondary keep flapping – up, down, up, down for a while (both before
and after the switch over).
7 Both primary and secondary keep flapping for a while.
8 Both shut down then come back the same time.
9 Both shut down, the secondary come back first.
10 Both shut down, the primary come back first.
Get the Pass/Fail Criteria.
• DHCP servers can response DHCP request.
• No server performance down grade, the
DHCP can still response to a high rate of
DHCP request during the failover and
recovery
• The failover relationship between primary
and secondary, and the failover state is
working as expected.
• Database sync correctly. And the data
integrity is fine.
Overlap your System Test Cases
• Unlike feature testing, the impact among
features are welcomed
• Overlap your test cases one on top of
another increase the feature interaction.
• Carefully record your execution steps.
(reduce non-reproducible bugs)
Example: Firewall Instability
Testing• Definition: Testing a firewall system’s instability
• Goals: Discover critical issues when firewall is under severe network conditions
• Performance index:
– # of current sessions
– # of VPN tunnels
– # of content filtering rules.
– # of policies
– # of the NAT
• Customer’s topology (simple)
• Simulator: DHCP client simulator
Example: Firewall Instability
Testing
• Customer’s topology
Example: Firewall Instability
Testing
• Baseline traffic (pre-conditions)
– Valid traffic
• L3 traffic
• L7 traffic (HTTP/FTP, voice, rich application)
– Invalid traffic (noise)
• To the box
• Through the box
• Trust and un-trust zone
• Malicious (hacker traffic) and just invalid
Example: Firewall Instability
Testing
• Pass and fail criteria
– No crash
– No severe performance downgrade on
• Packet loss
• Long latency
– Major functionality working on each of the
performance index.
Example: Firewall Instability
Testing
• Customer Secenrios
– HA
– VPN
– Routing
– QoS
– DPI
14 Steps Firewall TestingPhase1: start valid traffics
Phase2: layer3 and layer4 attacks
Phase3: Inject firewall attack traffic
Phase4: Inject invalid frame
Phase5: Drop In
Phase6: management attacks
Phase7: standard security testing
Phase8: Internet applications
Phase9: IP fragmentation, ICMP
Phase10: HA function
Phase11: VPN function
Phase12: dynamic routing function
Phase13: QoS
Phase14: contents filter
System and Solution Automation
• System/Solution automation is to make
your life easy
• End-to-end full automation is hard, try to do
semi-automation first.
The art of system and solution testing

Más contenido relacionado

La actualidad más candente

Security-by-Design and -Default
 Security-by-Design and -Default Security-by-Design and -Default
Security-by-Design and -DefaultMehdi Mirakhorli
 
Risk based testing and random testing
Risk based testing and random testingRisk based testing and random testing
Risk based testing and random testingHimanshu
 
Unit Tests And Automated Testing
Unit Tests And Automated TestingUnit Tests And Automated Testing
Unit Tests And Automated TestingLee Englestone
 
STLC (Software Testing Life Cycle)
STLC (Software Testing Life Cycle)STLC (Software Testing Life Cycle)
STLC (Software Testing Life Cycle)Ch Fahadi
 
Regression testing
Regression testingRegression testing
Regression testingHarsh verma
 
Jenkins tutorial for beginners
Jenkins tutorial for beginnersJenkins tutorial for beginners
Jenkins tutorial for beginnersBugRaptors
 
Software Testing Basics
Software Testing BasicsSoftware Testing Basics
Software Testing BasicsBelal Raslan
 
What is Regression Testing? | Edureka
What is Regression Testing? | EdurekaWhat is Regression Testing? | Edureka
What is Regression Testing? | EdurekaEdureka!
 
ISTQB Foundation Level Basic
ISTQB Foundation Level BasicISTQB Foundation Level Basic
ISTQB Foundation Level BasicErol Selitektay
 
Test Early, Test Often, Test Left
Test Early, Test Often, Test LeftTest Early, Test Often, Test Left
Test Early, Test Often, Test LeftSmartBear
 
Fundamentals of Risk-based Testing
Fundamentals of Risk-based TestingFundamentals of Risk-based Testing
Fundamentals of Risk-based TestingTechWell
 
Lect5 improving software economics
Lect5 improving software economicsLect5 improving software economics
Lect5 improving software economicsmeena466141
 
Software maintenance ppt
Software maintenance pptSoftware maintenance ppt
Software maintenance pptAnas Usman
 
Test-Driven Development
Test-Driven DevelopmentTest-Driven Development
Test-Driven DevelopmentJohn Blum
 

La actualidad más candente (20)

Softwaretesting
SoftwaretestingSoftwaretesting
Softwaretesting
 
Test automation proposal
Test automation proposalTest automation proposal
Test automation proposal
 
Security-by-Design and -Default
 Security-by-Design and -Default Security-by-Design and -Default
Security-by-Design and -Default
 
Guide to Agile testing
Guide to Agile testingGuide to Agile testing
Guide to Agile testing
 
Risk based testing and random testing
Risk based testing and random testingRisk based testing and random testing
Risk based testing and random testing
 
Unit Tests And Automated Testing
Unit Tests And Automated TestingUnit Tests And Automated Testing
Unit Tests And Automated Testing
 
STLC (Software Testing Life Cycle)
STLC (Software Testing Life Cycle)STLC (Software Testing Life Cycle)
STLC (Software Testing Life Cycle)
 
Regression testing
Regression testingRegression testing
Regression testing
 
Basic malware analysis
Basic malware analysisBasic malware analysis
Basic malware analysis
 
Jenkins tutorial for beginners
Jenkins tutorial for beginnersJenkins tutorial for beginners
Jenkins tutorial for beginners
 
Software Testing Basics
Software Testing BasicsSoftware Testing Basics
Software Testing Basics
 
Introduction of sdlc
Introduction of sdlcIntroduction of sdlc
Introduction of sdlc
 
What is Regression Testing? | Edureka
What is Regression Testing? | EdurekaWhat is Regression Testing? | Edureka
What is Regression Testing? | Edureka
 
ISTQB Foundation Level Basic
ISTQB Foundation Level BasicISTQB Foundation Level Basic
ISTQB Foundation Level Basic
 
Test Early, Test Often, Test Left
Test Early, Test Often, Test LeftTest Early, Test Often, Test Left
Test Early, Test Often, Test Left
 
Fundamentals of Risk-based Testing
Fundamentals of Risk-based TestingFundamentals of Risk-based Testing
Fundamentals of Risk-based Testing
 
Lect5 improving software economics
Lect5 improving software economicsLect5 improving software economics
Lect5 improving software economics
 
Software maintenance ppt
Software maintenance pptSoftware maintenance ppt
Software maintenance ppt
 
Cocomo model
Cocomo modelCocomo model
Cocomo model
 
Test-Driven Development
Test-Driven DevelopmentTest-Driven Development
Test-Driven Development
 

Destacado

신용대출빠른곳『BU797』.『COM』현대기아자동차 과자추천
신용대출빠른곳『BU797』.『COM』현대기아자동차 과자추천신용대출빠른곳『BU797』.『COM』현대기아자동차 과자추천
신용대출빠른곳『BU797』.『COM』현대기아자동차 과자추천hjsoidjgo
 
The 7 Secrets of Performance Management in Virtualized Environments
The 7 Secrets of Performance Management in Virtualized EnvironmentsThe 7 Secrets of Performance Management in Virtualized Environments
The 7 Secrets of Performance Management in Virtualized EnvironmentseG Innovations
 
Test di valutazione dell’articolazione sottoastragalica
Test di valutazione dell’articolazione sottoastragalicaTest di valutazione dell’articolazione sottoastragalica
Test di valutazione dell’articolazione sottoastragalicaSamuele Passigli
 
Driving a future ready enterprise
Driving a future ready enterpriseDriving a future ready enterprise
Driving a future ready enterpriseIBM Sverige
 
ABCD's of WAN Optimization
ABCD's of WAN OptimizationABCD's of WAN Optimization
ABCD's of WAN OptimizationEdward Gilbert
 
Avere & AWS Enterprise Solution with Special Bundle Pricing Offer
Avere & AWS Enterprise Solution with Special Bundle Pricing OfferAvere & AWS Enterprise Solution with Special Bundle Pricing Offer
Avere & AWS Enterprise Solution with Special Bundle Pricing OfferAvere Systems
 
Parts Of A Story
Parts Of A StoryParts Of A Story
Parts Of A Storyamjanney
 
Should Businesses Move to the Cloud
Should Businesses Move to the CloudShould Businesses Move to the Cloud
Should Businesses Move to the Cloudnhainisaini
 
Should business move to the cloud
Should business move to  the cloud Should business move to  the cloud
Should business move to the cloud Zulkifflee Sofee
 
PGM recovery from catalytic converters
PGM recovery from catalytic convertersPGM recovery from catalytic converters
PGM recovery from catalytic convertersOleg Kucheryavyi
 
Virtual Application Networks Innovations Advance Software-defined Network Lea...
Virtual Application Networks Innovations Advance Software-defined Network Lea...Virtual Application Networks Innovations Advance Software-defined Network Lea...
Virtual Application Networks Innovations Advance Software-defined Network Lea...Open Networking Summits
 
Specialty packaging corporation, part a
Specialty packaging corporation, part aSpecialty packaging corporation, part a
Specialty packaging corporation, part aaliyudhi_h
 
The 3 Most Important Aspects of Management
The 3 Most Important Aspects of ManagementThe 3 Most Important Aspects of Management
The 3 Most Important Aspects of ManagementMandarabhyankarslides
 
Swot marketing
Swot marketingSwot marketing
Swot marketinggradend
 
The missing piece meets the big O
The missing piece meets the big OThe missing piece meets the big O
The missing piece meets the big Ocyaneum
 
NAT64 and DNS64 in 30 minutes
NAT64 and DNS64 in 30 minutesNAT64 and DNS64 in 30 minutes
NAT64 and DNS64 in 30 minutesIvan Pepelnjak
 
Web Analytics Framework Guide
Web Analytics Framework GuideWeb Analytics Framework Guide
Web Analytics Framework Guidemeetcontent
 

Destacado (20)

신용대출빠른곳『BU797』.『COM』현대기아자동차 과자추천
신용대출빠른곳『BU797』.『COM』현대기아자동차 과자추천신용대출빠른곳『BU797』.『COM』현대기아자동차 과자추천
신용대출빠른곳『BU797』.『COM』현대기아자동차 과자추천
 
The 7 Secrets of Performance Management in Virtualized Environments
The 7 Secrets of Performance Management in Virtualized EnvironmentsThe 7 Secrets of Performance Management in Virtualized Environments
The 7 Secrets of Performance Management in Virtualized Environments
 
Test di valutazione dell’articolazione sottoastragalica
Test di valutazione dell’articolazione sottoastragalicaTest di valutazione dell’articolazione sottoastragalica
Test di valutazione dell’articolazione sottoastragalica
 
Driving a future ready enterprise
Driving a future ready enterpriseDriving a future ready enterprise
Driving a future ready enterprise
 
ABCD's of WAN Optimization
ABCD's of WAN OptimizationABCD's of WAN Optimization
ABCD's of WAN Optimization
 
Avere & AWS Enterprise Solution with Special Bundle Pricing Offer
Avere & AWS Enterprise Solution with Special Bundle Pricing OfferAvere & AWS Enterprise Solution with Special Bundle Pricing Offer
Avere & AWS Enterprise Solution with Special Bundle Pricing Offer
 
Parts Of A Story
Parts Of A StoryParts Of A Story
Parts Of A Story
 
Bio conference live 2013
Bio conference live 2013Bio conference live 2013
Bio conference live 2013
 
Should Businesses Move to the Cloud
Should Businesses Move to the CloudShould Businesses Move to the Cloud
Should Businesses Move to the Cloud
 
Should business move to the cloud
Should business move to  the cloud Should business move to  the cloud
Should business move to the cloud
 
PGM recovery from catalytic converters
PGM recovery from catalytic convertersPGM recovery from catalytic converters
PGM recovery from catalytic converters
 
space food technology
space food technologyspace food technology
space food technology
 
Virtual Application Networks Innovations Advance Software-defined Network Lea...
Virtual Application Networks Innovations Advance Software-defined Network Lea...Virtual Application Networks Innovations Advance Software-defined Network Lea...
Virtual Application Networks Innovations Advance Software-defined Network Lea...
 
Specialty packaging corporation, part a
Specialty packaging corporation, part aSpecialty packaging corporation, part a
Specialty packaging corporation, part a
 
The 3 Most Important Aspects of Management
The 3 Most Important Aspects of ManagementThe 3 Most Important Aspects of Management
The 3 Most Important Aspects of Management
 
Swot marketing
Swot marketingSwot marketing
Swot marketing
 
The missing piece meets the big O
The missing piece meets the big OThe missing piece meets the big O
The missing piece meets the big O
 
NAT64 and DNS64 in 30 minutes
NAT64 and DNS64 in 30 minutesNAT64 and DNS64 in 30 minutes
NAT64 and DNS64 in 30 minutes
 
Web Analytics Framework Guide
Web Analytics Framework GuideWeb Analytics Framework Guide
Web Analytics Framework Guide
 
Challenges and Opportunities for the Pharmaceutical Industry
Challenges and Opportunities for the Pharmaceutical IndustryChallenges and Opportunities for the Pharmaceutical Industry
Challenges and Opportunities for the Pharmaceutical Industry
 

Similar a The art of system and solution testing

Tools. Techniques. Trouble?
Tools. Techniques. Trouble?Tools. Techniques. Trouble?
Tools. Techniques. Trouble?Testplant
 
Small is Beautiful- Fully Automate your Test Case Design
Small is Beautiful- Fully Automate your Test Case DesignSmall is Beautiful- Fully Automate your Test Case Design
Small is Beautiful- Fully Automate your Test Case DesignGeorgina Tilby
 
Manual Testing software testing all slide
Manual Testing software testing all slideManual Testing software testing all slide
Manual Testing software testing all slideSmileySmiley39
 
manualtesting-170218090020 (1).pdf
manualtesting-170218090020 (1).pdfmanualtesting-170218090020 (1).pdf
manualtesting-170218090020 (1).pdfperamdevi06
 
System design techniques and networks
System design techniques and networksSystem design techniques and networks
System design techniques and networksRAMPRAKASHT1
 
Testing strategies -2
Testing strategies -2Testing strategies -2
Testing strategies -2Divya Tiwari
 
Continuous Performance Testing
Continuous Performance TestingContinuous Performance Testing
Continuous Performance TestingC4Media
 
Ncerc rlmca202 adm m3 ssm
Ncerc rlmca202  adm m3 ssmNcerc rlmca202  adm m3 ssm
Ncerc rlmca202 adm m3 ssmssmarar
 
How to become a testing expert
How to become a testing expertHow to become a testing expert
How to become a testing expertgaoliang641
 
5 Steps on the Way to Continuous Delivery
5 Steps on the Way to Continuous Delivery5 Steps on the Way to Continuous Delivery
5 Steps on the Way to Continuous DeliveryXebiaLabs
 
Incremental Queries and Transformations for Engineering Critical Systems
Incremental Queries and Transformations for Engineering Critical SystemsIncremental Queries and Transformations for Engineering Critical Systems
Incremental Queries and Transformations for Engineering Critical SystemsÁkos Horváth
 
Test planning and software's engineering
Test planning and software's engineeringTest planning and software's engineering
Test planning and software's engineeringMansiganeshJawale
 
Alexander Podelko - Context-Driven Performance Testing
Alexander Podelko - Context-Driven Performance TestingAlexander Podelko - Context-Driven Performance Testing
Alexander Podelko - Context-Driven Performance TestingNeotys_Partner
 
SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!
SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!
SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!Richard Robinson
 
Backward thinking design qa system for quality goals
Backward thinking   design qa system for quality goalsBackward thinking   design qa system for quality goals
Backward thinking design qa system for quality goalsgaoliang641
 
IEEE Buenaventura cs Chapter March 9 2016 v4
IEEE Buenaventura cs Chapter March 9 2016  v4IEEE Buenaventura cs Chapter March 9 2016  v4
IEEE Buenaventura cs Chapter March 9 2016 v4Sailaja Tennati
 

Similar a The art of system and solution testing (20)

Tools. Techniques. Trouble?
Tools. Techniques. Trouble?Tools. Techniques. Trouble?
Tools. Techniques. Trouble?
 
Small is Beautiful- Fully Automate your Test Case Design
Small is Beautiful- Fully Automate your Test Case DesignSmall is Beautiful- Fully Automate your Test Case Design
Small is Beautiful- Fully Automate your Test Case Design
 
Manual Testing software testing all slide
Manual Testing software testing all slideManual Testing software testing all slide
Manual Testing software testing all slide
 
manualtesting-170218090020 (1).pdf
manualtesting-170218090020 (1).pdfmanualtesting-170218090020 (1).pdf
manualtesting-170218090020 (1).pdf
 
System design techniques and networks
System design techniques and networksSystem design techniques and networks
System design techniques and networks
 
G53 qat09pdf6up
G53 qat09pdf6upG53 qat09pdf6up
G53 qat09pdf6up
 
Man.ppt
Man.pptMan.ppt
Man.ppt
 
Testing strategies -2
Testing strategies -2Testing strategies -2
Testing strategies -2
 
Continuous Performance Testing
Continuous Performance TestingContinuous Performance Testing
Continuous Performance Testing
 
Ncerc rlmca202 adm m3 ssm
Ncerc rlmca202  adm m3 ssmNcerc rlmca202  adm m3 ssm
Ncerc rlmca202 adm m3 ssm
 
How to become a testing expert
How to become a testing expertHow to become a testing expert
How to become a testing expert
 
5 Steps on the Way to Continuous Delivery
5 Steps on the Way to Continuous Delivery5 Steps on the Way to Continuous Delivery
5 Steps on the Way to Continuous Delivery
 
Chapter6
Chapter6Chapter6
Chapter6
 
Incremental Queries and Transformations for Engineering Critical Systems
Incremental Queries and Transformations for Engineering Critical SystemsIncremental Queries and Transformations for Engineering Critical Systems
Incremental Queries and Transformations for Engineering Critical Systems
 
Test planning and software's engineering
Test planning and software's engineeringTest planning and software's engineering
Test planning and software's engineering
 
ASIC design verification
ASIC design verificationASIC design verification
ASIC design verification
 
Alexander Podelko - Context-Driven Performance Testing
Alexander Podelko - Context-Driven Performance TestingAlexander Podelko - Context-Driven Performance Testing
Alexander Podelko - Context-Driven Performance Testing
 
SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!
SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!
SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!
 
Backward thinking design qa system for quality goals
Backward thinking   design qa system for quality goalsBackward thinking   design qa system for quality goals
Backward thinking design qa system for quality goals
 
IEEE Buenaventura cs Chapter March 9 2016 v4
IEEE Buenaventura cs Chapter March 9 2016  v4IEEE Buenaventura cs Chapter March 9 2016  v4
IEEE Buenaventura cs Chapter March 9 2016 v4
 

Más de gaoliang641

Why we didn't catch that
Why we didn't catch thatWhy we didn't catch that
Why we didn't catch thatgaoliang641
 
Why we didn't catch that application bugs
Why we didn't catch that   application bugsWhy we didn't catch that   application bugs
Why we didn't catch that application bugsgaoliang641
 
Understand release engineering
Understand release engineeringUnderstand release engineering
Understand release engineeringgaoliang641
 
Understand regression testing
Understand regression testingUnderstand regression testing
Understand regression testinggaoliang641
 
Tester performance evaluation
Tester performance evaluationTester performance evaluation
Tester performance evaluationgaoliang641
 
Tester developer interaction
Tester developer interactionTester developer interaction
Tester developer interactiongaoliang641
 
Tester career path
Tester career pathTester career path
Tester career pathgaoliang641
 
Agile testing for large projects
Agile testing for large projectsAgile testing for large projects
Agile testing for large projectsgaoliang641
 
Project management for qa manager
Project management for qa managerProject management for qa manager
Project management for qa managergaoliang641
 
Make good use of explortary testing
Make good use of explortary testingMake good use of explortary testing
Make good use of explortary testinggaoliang641
 
Bug best practice
Bug best practiceBug best practice
Bug best practicegaoliang641
 
Lessons learned on localization testing
Lessons learned on localization testingLessons learned on localization testing
Lessons learned on localization testinggaoliang641
 
Lessons learned on software testing automation
Lessons learned on software testing automationLessons learned on software testing automation
Lessons learned on software testing automationgaoliang641
 
Functionality testing techniqu
Functionality testing techniquFunctionality testing techniqu
Functionality testing techniqugaoliang641
 
Protocol Security Testing best practice
Protocol Security Testing best practiceProtocol Security Testing best practice
Protocol Security Testing best practicegaoliang641
 
Automation framework design and implementation
Automation framework design and implementationAutomation framework design and implementation
Automation framework design and implementationgaoliang641
 
Automation from start to finish
Automation   from start to finishAutomation   from start to finish
Automation from start to finishgaoliang641
 
Agile testing for large projects
Agile testing for large projectsAgile testing for large projects
Agile testing for large projectsgaoliang641
 

Más de gaoliang641 (18)

Why we didn't catch that
Why we didn't catch thatWhy we didn't catch that
Why we didn't catch that
 
Why we didn't catch that application bugs
Why we didn't catch that   application bugsWhy we didn't catch that   application bugs
Why we didn't catch that application bugs
 
Understand release engineering
Understand release engineeringUnderstand release engineering
Understand release engineering
 
Understand regression testing
Understand regression testingUnderstand regression testing
Understand regression testing
 
Tester performance evaluation
Tester performance evaluationTester performance evaluation
Tester performance evaluation
 
Tester developer interaction
Tester developer interactionTester developer interaction
Tester developer interaction
 
Tester career path
Tester career pathTester career path
Tester career path
 
Agile testing for large projects
Agile testing for large projectsAgile testing for large projects
Agile testing for large projects
 
Project management for qa manager
Project management for qa managerProject management for qa manager
Project management for qa manager
 
Make good use of explortary testing
Make good use of explortary testingMake good use of explortary testing
Make good use of explortary testing
 
Bug best practice
Bug best practiceBug best practice
Bug best practice
 
Lessons learned on localization testing
Lessons learned on localization testingLessons learned on localization testing
Lessons learned on localization testing
 
Lessons learned on software testing automation
Lessons learned on software testing automationLessons learned on software testing automation
Lessons learned on software testing automation
 
Functionality testing techniqu
Functionality testing techniquFunctionality testing techniqu
Functionality testing techniqu
 
Protocol Security Testing best practice
Protocol Security Testing best practiceProtocol Security Testing best practice
Protocol Security Testing best practice
 
Automation framework design and implementation
Automation framework design and implementationAutomation framework design and implementation
Automation framework design and implementation
 
Automation from start to finish
Automation   from start to finishAutomation   from start to finish
Automation from start to finish
 
Agile testing for large projects
Agile testing for large projectsAgile testing for large projects
Agile testing for large projects
 

Último

Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 

Último (20)

Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 

The art of system and solution testing

  • 1. The Art Of System and Solution Testing
  • 2. Example • A software developer/tester convention was being held. On the train to the convention, there were a bunch of developer majors and a bunch of tester majors. Each of the developer majors had his/her train ticket. The group of testers had only ONE ticket for all of them. The developer majors started laughing and snickering. Then, one of the software testers said, "here comes the conductor" and then all of the testers went into the bathroom. The developer majors were puzzled. The conductor came aboard and said "tickets please" and got tickets from all the developer majors. He then went to the bathroom and knocked on the door and said "ticket please" and the testers stuck the ticket under the door. The conductor took it and then the testers came out of the bathroom a few minutes later. The developer majors felt really stupid. So, on the way back from the convention, the group of developer majors had one ticket for the group. They started snickering at the testers, for the whole group had no tickets amongst them. Then, the tester lookout said "Conductor coming!" All the testers went to one bathroom. All the developer majors went to another bathroom. Then, before the conductor came on board, one of the testers left the bathroom, knocked on the other bathroom, and said "ticket please." Lesson learned: Any test that passed in unit testing can fail in system testing.
  • 3. Goal • Find bugs that can not be fund by feature level testing but will most likely be found on customer’s Usage. • If no time, can even only do system level and solution testing. • Development is a science, testing is an art.
  • 4. What Is a System Level Testing • Company N has a testbed called “Mother of All Testbed (MOAT). It is the superset of almost all Company N’s product features. • To fully execute a cycle, it takes 2 weeks. • It has just one test case. Compare to feature level testing where you have thousands of test cases
  • 5. What Is a Solution Level Testing • Company C has a dedicated solution testing team • Each solution is an end-to-end application and has a code name – VoIP end-to-end solution – Security end-to-end solution – MPLS solution – Cable/DSL solution.
  • 6. Difference? • Solution is customer oriented. Not just one company’s product. • System testing is product oriented. • Feature testing is code oriented. (need a functionality Specification as input) • System/Solution: 30% strategy, 70% experience • Feature:60% strategy, 40% experience
  • 7. What makes a System/Solution tester • System/Solution testing is to test the “Customer”.Input Tester Output User Manual Customer Secenrios. Experience Test Plan/Test Cases System Level Defects
  • 8. System Tester’s 360 Degree Advantage • They interface with Customer (understand customer) • They interface with SE, TME, Product manager (understand marketing) • They interface with developer (understand development) • They interface with feature tester. (understand testing)
  • 9. Trademark of System and Solution Testing • Race condition • Memory corruption • Algorithm performance (routing protocol convergence time for both uni-cast and multicast) • How system perform in low memory and high CPU (timers will be stretched out)
  • 10. Typical Bugs Found on System Testing • Crash: Infrastructure design issue • Crash: Race condition: Malloc memory twice, crash only happens when 1st one success and 2nd one fail. • Solution : Interoperability with 3rd party products
  • 11. System Testing is a Time Capsule • 99.9999% up time = 10 seconds down time in 3 years • What your customers will experience in 3 years? • Emulate 3 years in 2 weeks • That is why lots of stress testing
  • 12. System Testing is a Time Capsule 正常 异常 1 异常 2 异常 3 异常 4 异常 5 异常 6 1-2 年 2 周
  • 13. Ideas on Building Your System Cases • Defined the baseline – Background traffic. – # of clients – Complexity of the configuration • Identify scalability (performance) index. • Get the typical customer scenarios and topologies. • Design test cases.
  • 14. Build Your Background Traffic • Background traffic need to drive CPU and memory to 30%-40%. • Need to be diverse among typical applications • Need to be measurable on – Latency – Transit loss. • IMIX traffic may be considered
  • 15. No Performance Index, No Testing • Performance index means scalability • Size of the routing tables • Number of VPN tunnels • Voice call per second • Routing protocol convergence time • Traffic throughput. • Peer count (P2P) • Connection Rate (P2P) • Concurrent connections
  • 16. QC Meets Customer • The product is a solution. If the problem isn't solved, the productdoesn't work. • The best test case can ever be designed on your product is in the customer’s real network. • The complexity of your test cases should be equal to your most valuable customers. • Customers like QC visit from vendor company very much. You will be surprised
  • 17. Define Your Scenarios • This is the way customer use it. • Different location, different area (signal coverage) • Barrtery • Different combination way of using our product – GPRS browsing with MP3 in the background while have an unidentified call • Different speed for mobile devices
  • 18. 20/80 Rule in the consumer market • Satisfied customers seldom speak up • Unhappy customers will complain • 1% chance of reproducible rate is ok in the network equipment market, but not ok in the consumer market • Higher testing standard in the consumer market
  • 19. Simulation Is Your Friends • Customer level’s scalability can be achieved in our lab by simulator • Traffic simulator (commercial testing equipment are expensive). • Client simulator • Protocol Simulator. • Device Simulator.
  • 20. Simulation Is Your Friends • A 32 timer reverse Bug, happen once in every 2 years, how you test that?
  • 21. Steps to Design a System Level Testing • One liner for your testing goals. • List the features you want to cover. • Define your features performance index (metrics) • Design your topology – Customer feedback – Performance index requirement • Pick your test simulator (budget conscious)
  • 22. Give a Detail Example on DHCP server testing • Definition: Carrier grade high availability DHCP server System level testing. • Goals: testing system instability especially during the failover. • Performance index: – IP address release per second. – Size of the database. – Size of the log. – Command and Control traffic (admin traffic) – DNS traffic. • Customer’s topology (simple) • Simulator: DHCP client simulator
  • 23. Give a Detail Example on DHCP server testing • Scenarios: 1 Primary down, then come back after secondary switch over 2 Primary down, then come back right away before the switch over. 3 Primary down, then come back after switch over, the down again. 4 Primary keep flapping – up, down, up, down for a while (both before and after the switch over). 5 Secondary down, then come back. 6 Secondary keep flapping – up, down, up, down for a while (both before and after the switch over). 7 Both primary and secondary keep flapping for a while. 8 Both shut down then come back the same time. 9 Both shut down, the secondary come back first. 10 Both shut down, the primary come back first.
  • 24. Get the Pass/Fail Criteria. • DHCP servers can response DHCP request. • No server performance down grade, the DHCP can still response to a high rate of DHCP request during the failover and recovery • The failover relationship between primary and secondary, and the failover state is working as expected. • Database sync correctly. And the data integrity is fine.
  • 25. Overlap your System Test Cases • Unlike feature testing, the impact among features are welcomed • Overlap your test cases one on top of another increase the feature interaction. • Carefully record your execution steps. (reduce non-reproducible bugs)
  • 26. Example: Firewall Instability Testing• Definition: Testing a firewall system’s instability • Goals: Discover critical issues when firewall is under severe network conditions • Performance index: – # of current sessions – # of VPN tunnels – # of content filtering rules. – # of policies – # of the NAT • Customer’s topology (simple) • Simulator: DHCP client simulator
  • 28. Example: Firewall Instability Testing • Baseline traffic (pre-conditions) – Valid traffic • L3 traffic • L7 traffic (HTTP/FTP, voice, rich application) – Invalid traffic (noise) • To the box • Through the box • Trust and un-trust zone • Malicious (hacker traffic) and just invalid
  • 29. Example: Firewall Instability Testing • Pass and fail criteria – No crash – No severe performance downgrade on • Packet loss • Long latency – Major functionality working on each of the performance index.
  • 30. Example: Firewall Instability Testing • Customer Secenrios – HA – VPN – Routing – QoS – DPI
  • 31. 14 Steps Firewall TestingPhase1: start valid traffics Phase2: layer3 and layer4 attacks Phase3: Inject firewall attack traffic Phase4: Inject invalid frame Phase5: Drop In Phase6: management attacks Phase7: standard security testing Phase8: Internet applications Phase9: IP fragmentation, ICMP Phase10: HA function Phase11: VPN function Phase12: dynamic routing function Phase13: QoS Phase14: contents filter
  • 32. System and Solution Automation • System/Solution automation is to make your life easy • End-to-end full automation is hard, try to do semi-automation first.

Notas del editor

  1. 到底什么是系统测试,和解决方案测试。 我们可以给出一个定义,但那样子就太理论化了,所以我更愿意给出一个例子来。 看一看别的做的比较好的公司是怎么做的。
  2. Bob starts deposit transaction Mary Alyce starts deposit transaction Bob's ATM grabs the balance ($1000) Mary Alyce's ATM grabs the balance ($1000) Bob deposits $200 (his ATM updates the balance to $1200) Mary Alyce deposits $300 (her ATM updates the balance to $1300) Bob's ATM updates the main database with the new balance ($1200) Mary Alyce's ATM updates the main database with the new balance ($1300) This is a race condition.
  3. Bob starts deposit transaction Mary Alyce starts deposit transaction Bob's ATM grabs the balance ($1000) Mary Alyce's ATM grabs the balance ($1000) Bob deposits $200 (his ATM updates the balance to $1200) Mary Alyce deposits $300 (her ATM updates the balance to $1300) Bob's ATM updates the main database with the new balance ($1200) Mary Alyce's ATM updates the main database with the new balance ($1300) This is a race condition.
  4. Bob starts deposit transaction Mary Alyce starts deposit transaction Bob's ATM grabs the balance ($1000) Mary Alyce's ATM grabs the balance ($1000) Bob deposits $200 (his ATM updates the balance to $1200) Mary Alyce deposits $300 (her ATM updates the balance to $1300) Bob's ATM updates the main database with the new balance ($1200) Mary Alyce's ATM updates the main database with the new balance ($1300) This is a race condition.
  5. Bob starts deposit transaction Mary Alyce starts deposit transaction Bob's ATM grabs the balance ($1000) Mary Alyce's ATM grabs the balance ($1000) Bob deposits $200 (his ATM updates the balance to $1200) Mary Alyce deposits $300 (her ATM updates the balance to $1300) Bob's ATM updates the main database with the new balance ($1200) Mary Alyce's ATM updates the main database with the new balance ($1300) This is a race condition.