SlideShare a Scribd company logo
1 of 12
Thought on Effective Testing

             By Qingsong Yao
1. User Scenario driven testing
When writing test plan, separate what with How
  – First, only think about the user scenario
  – Then, think about how you to test the scenario
When write tests, separate what with how
  – First, write use scenario
  – Second, implement the test cases which test the
    scenario
User Scenario Example
• Scenario – Block of upgrade SQL Express during VS
  2010 Installation (Priority 0)
• Action:
   – When a use install VS 2010 on a AMD64 machine with SSE
     2005 install, existing SSE instance can’t upgrade SSE 2008
• Success criteria:
   – Make sure that Setup program detect existing SSE instance
     correctly.
   – Make sure that Setup program disable the upgrade/install
     of SSE correctly.
   – Make sure SSE is not upgraded if upgrade is not needed.
   – Existing SSE instance works after setup.
2. Understand the feature
Knowing:
  – how the feature will be implemented.
  – the risks in term of implementation.
  – the risks in term of the impact on customer.
Example of “Risk Factors and
        Mitigation strategies”
• We are testing product which is not shipped
  by SQL Group.
• Setup is sensitive to change, and easy to be
  broken.
• Dependence of SSE, such as MSI 4.5 is one of
  the main factors of causing setup failing.
• Huge Test Matrix
3. Define your Test Strategy
• Test Strategy
  – How to address the risk areas?
  – Manual Test v.s. Automation Test?
• Examples:
  – Align Test tasks with Dev tasks.
  – For larger dev check-ins, test with a private build
    before checking-in.
  – Encourage writing programming based tests
    instead of writing static Meta tests.
Example of Test Strategy
• Manual Testing during Improvement Phase
   – Avoid huge investigation of test automation
   – We define high-level user scenario Success criteria
     and China VAT team help us to verify
• Run test as a real customer to find usability issue.
   – Verify UI, setup option, and no. reboots
   – Verify localized strings
• For bug fix, we drive user scenario and test
  dimension from the nature of the fix
• Long term, will take advance of VS setup
  automation in SQL Lab
4. Define test patterns
• Test Types:
   – Recorded tests, Scripted tests or Data Driven tests, Declarative
     Tests
   – Model-based or static tests
• Design Patterns:
   – Layer Tests
   – Repository Pattern, Factory Patterns, Visitor pattern
• Test Dimensions:
   – Pair wise or all combination; Parameterized Tests
• Verification Pattern:
   – State Verification; Oracle based Verification; Custom Assertion
• Deal with Dependence:
   – Dependence Injection
   – Mock Object
From User Scenario to Test Case
Test Case Example
Test Case: Mismatch between SSE language with VS language
  if the language of installed SSE instance does not match
   with the localized SSE 2008, we should not provide options
   to install SSE.
Test Dimension
   – VS Language: ENU
   – SSE: SSE 2005, SSE 2008
   – SSE Language: JPN
Test Case:
  use pict tool to use generate 3 test cases
Verification:
• Verify that user can not choose SSE during VS Setup
• Verify that VS setup succeed without any error
Conclusion
1.   User Scenario driven testing
2.   Understand the Feature to Be Tested
3.   Define Test Strategy
4.   From User Scenario to Test Case
5.   Write good Tests
6.   Define measurable success critical
Reference: Test Strategy
• http://en.wikipedia.org/wiki/Test_strategy
• http://www.projectperfect.com.au/info_test_
  strategy.php
• http://www.satisfice.com/presentations/strat
  egy.pdf

More Related Content

What's hot (20)

test plan
test plan test plan
test plan
 
Test plan
Test planTest plan
Test plan
 
Ieee829mtp
Ieee829mtpIeee829mtp
Ieee829mtp
 
Test plan
Test planTest plan
Test plan
 
03 software test-plan-template
03 software test-plan-template03 software test-plan-template
03 software test-plan-template
 
Software Test Planning and Design
Software Test Planning and DesignSoftware Test Planning and Design
Software Test Planning and Design
 
Test plan presentation
Test plan presentationTest plan presentation
Test plan presentation
 
Test Documentation Based On Ieee829 155261
Test Documentation Based On Ieee829 155261Test Documentation Based On Ieee829 155261
Test Documentation Based On Ieee829 155261
 
Test plan
Test planTest plan
Test plan
 
02 test planning
02   test planning02   test planning
02 test planning
 
06 template test plan
06 template test plan06 template test plan
06 template test plan
 
Test planning
Test planningTest planning
Test planning
 
Testing strategies
Testing strategiesTesting strategies
Testing strategies
 
Fundamental test process
Fundamental test processFundamental test process
Fundamental test process
 
How to create a 'Master Test Plan'
How to create a 'Master Test Plan'How to create a 'Master Test Plan'
How to create a 'Master Test Plan'
 
Test Plan Template
Test Plan TemplateTest Plan Template
Test Plan Template
 
Qa documentation pp
Qa documentation ppQa documentation pp
Qa documentation pp
 
TestPlan for IIT website
TestPlan for IIT websiteTestPlan for IIT website
TestPlan for IIT website
 
Paper review
Paper reviewPaper review
Paper review
 
Ieee 829 1998-a3
Ieee 829 1998-a3Ieee 829 1998-a3
Ieee 829 1998-a3
 

Viewers also liked

English Language Learners and NCLB testing
English Language Learners and NCLB testingEnglish Language Learners and NCLB testing
English Language Learners and NCLB testingTaren Parsons
 
Mattias Ratert - Incremental Scenario Testing
Mattias Ratert - Incremental Scenario TestingMattias Ratert - Incremental Scenario Testing
Mattias Ratert - Incremental Scenario TestingTEST Huddle
 
Scenario Testing and Sensitivity Analysis for 3-D Kinematic Models and Geophy...
Scenario Testing and Sensitivity Analysis for 3-D Kinematic Models and Geophy...Scenario Testing and Sensitivity Analysis for 3-D Kinematic Models and Geophy...
Scenario Testing and Sensitivity Analysis for 3-D Kinematic Models and Geophy...The University of Western Australia
 
Role+Of+Testing+In+Sdlc
Role+Of+Testing+In+SdlcRole+Of+Testing+In+Sdlc
Role+Of+Testing+In+Sdlcmahendra singh
 
14.2. курс лекций афу
14.2. курс лекций афу14.2. курс лекций афу
14.2. курс лекций афуGKarina707
 
Embedded software development using BDD
Embedded software development using BDDEmbedded software development using BDD
Embedded software development using BDDItamar Hassin
 
Testing and Test Construction
Testing and Test ConstructionTesting and Test Construction
Testing and Test Constructionsongoten77
 
Test Case Design
Test Case DesignTest Case Design
Test Case Designacatalin
 
Test Case, Use Case and Test Scenario
Test Case, Use Case and Test ScenarioTest Case, Use Case and Test Scenario
Test Case, Use Case and Test ScenarioLokesh Agrawal
 
Writing Test Cases 20110808
Writing Test Cases 20110808Writing Test Cases 20110808
Writing Test Cases 20110808slovejoy
 
Qualities of a good test (1)
Qualities of a good test (1)Qualities of a good test (1)
Qualities of a good test (1)kimoya
 
Characteristics of a good test
Characteristics of a good testCharacteristics of a good test
Characteristics of a good testALMA HERMOGINO
 
Characteristics of a good test
Characteristics of a good test Characteristics of a good test
Characteristics of a good test Arash Yazdani
 
Kinds of testing (2nd)
Kinds of testing (2nd)Kinds of testing (2nd)
Kinds of testing (2nd)Harry Subagyo
 
Test construction edited
Test construction editedTest construction edited
Test construction editedArnel Rivera
 
Characteristics of a good test
Characteristics of a good testCharacteristics of a good test
Characteristics of a good testBoyet Aluan
 
stages of test construction
stages of test constructionstages of test construction
stages of test constructionirshad narejo
 

Viewers also liked (20)

English Language Learners and NCLB testing
English Language Learners and NCLB testingEnglish Language Learners and NCLB testing
English Language Learners and NCLB testing
 
Mattias Ratert - Incremental Scenario Testing
Mattias Ratert - Incremental Scenario TestingMattias Ratert - Incremental Scenario Testing
Mattias Ratert - Incremental Scenario Testing
 
Scenario Testing and Sensitivity Analysis for 3-D Kinematic Models and Geophy...
Scenario Testing and Sensitivity Analysis for 3-D Kinematic Models and Geophy...Scenario Testing and Sensitivity Analysis for 3-D Kinematic Models and Geophy...
Scenario Testing and Sensitivity Analysis for 3-D Kinematic Models and Geophy...
 
Role+Of+Testing+In+Sdlc
Role+Of+Testing+In+SdlcRole+Of+Testing+In+Sdlc
Role+Of+Testing+In+Sdlc
 
Test 1
Test 1Test 1
Test 1
 
14.2. курс лекций афу
14.2. курс лекций афу14.2. курс лекций афу
14.2. курс лекций афу
 
Embedded software development using BDD
Embedded software development using BDDEmbedded software development using BDD
Embedded software development using BDD
 
Testing and Test Construction
Testing and Test ConstructionTesting and Test Construction
Testing and Test Construction
 
Test Case Design
Test Case DesignTest Case Design
Test Case Design
 
Test plan
Test planTest plan
Test plan
 
Test Case, Use Case and Test Scenario
Test Case, Use Case and Test ScenarioTest Case, Use Case and Test Scenario
Test Case, Use Case and Test Scenario
 
Writing Test Cases 20110808
Writing Test Cases 20110808Writing Test Cases 20110808
Writing Test Cases 20110808
 
Qualities of a good test (1)
Qualities of a good test (1)Qualities of a good test (1)
Qualities of a good test (1)
 
Characteristics of a good test
Characteristics of a good testCharacteristics of a good test
Characteristics of a good test
 
Characteristics of a good test
Characteristics of a good test Characteristics of a good test
Characteristics of a good test
 
Kinds of testing (2nd)
Kinds of testing (2nd)Kinds of testing (2nd)
Kinds of testing (2nd)
 
Test construction edited
Test construction editedTest construction edited
Test construction edited
 
Characteristics of a good test
Characteristics of a good testCharacteristics of a good test
Characteristics of a good test
 
stages of test construction
stages of test constructionstages of test construction
stages of test construction
 
Language Testing
Language TestingLanguage Testing
Language Testing
 

Similar to Writing good test plan and writing good tests

Test case management with MTM 2013
Test case management with MTM 2013Test case management with MTM 2013
Test case management with MTM 2013Raluca Suditu
 
Test Case Management with MTM 2013
Test Case Management with MTM 2013Test Case Management with MTM 2013
Test Case Management with MTM 2013Raluca Suditu
 
Mt s11 test_design
Mt s11 test_designMt s11 test_design
Mt s11 test_designTestingGeeks
 
Visual Studio 2010 for testers
Visual Studio 2010 for testersVisual Studio 2010 for testers
Visual Studio 2010 for testersArpit Dubey
 
Testing Frameworks
Testing FrameworksTesting Frameworks
Testing FrameworksMoataz Nabil
 
Automated testing overview
Automated testing overviewAutomated testing overview
Automated testing overviewAlex Pop
 
Meetup TestingUy 2017: Automating the Viewer: a cross-functional team approach
Meetup TestingUy 2017: Automating the Viewer: a cross-functional team approachMeetup TestingUy 2017: Automating the Viewer: a cross-functional team approach
Meetup TestingUy 2017: Automating the Viewer: a cross-functional team approachClaudia Badell
 
Meetup TestingUy 2017 - Automating the Viewer: a cross-functional team approach
Meetup TestingUy 2017 - Automating the Viewer: a cross-functional team approachMeetup TestingUy 2017 - Automating the Viewer: a cross-functional team approach
Meetup TestingUy 2017 - Automating the Viewer: a cross-functional team approachTestingUy
 
VCS_QAPerformanceSlides
VCS_QAPerformanceSlidesVCS_QAPerformanceSlides
VCS_QAPerformanceSlidesMichael Cowan
 
Software testing part
Software testing partSoftware testing part
Software testing partPreeti Mishra
 
Object Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesObject Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesPunjab University
 
Automated Testing Tutorial
Automated Testing TutorialAutomated Testing Tutorial
Automated Testing TutorialJohn Liebenau
 
Implementing test scripting Ian McDonald updated (minor changes) 26-04-2013
Implementing test scripting   Ian McDonald updated (minor changes) 26-04-2013Implementing test scripting   Ian McDonald updated (minor changes) 26-04-2013
Implementing test scripting Ian McDonald updated (minor changes) 26-04-2013Ian McDonald
 
Agile Acceptance testing with Fitnesse
Agile Acceptance testing with FitnesseAgile Acceptance testing with Fitnesse
Agile Acceptance testing with FitnesseClareMcLennan
 
10-Testing-system.pdf
10-Testing-system.pdf10-Testing-system.pdf
10-Testing-system.pdfn190212
 
Streamlining Testing with Visual Studio 2012
Streamlining Testing with Visual Studio 2012Streamlining Testing with Visual Studio 2012
Streamlining Testing with Visual Studio 2012Imaginet
 
Chowdappa Resume
Chowdappa ResumeChowdappa Resume
Chowdappa Resumechowdappa o
 
Chowdappa Resume
Chowdappa ResumeChowdappa Resume
Chowdappa Resumechowdappa o
 

Similar to Writing good test plan and writing good tests (20)

Test case management with MTM 2013
Test case management with MTM 2013Test case management with MTM 2013
Test case management with MTM 2013
 
Test Case Management with MTM 2013
Test Case Management with MTM 2013Test Case Management with MTM 2013
Test Case Management with MTM 2013
 
Mt s11 test_design
Mt s11 test_designMt s11 test_design
Mt s11 test_design
 
Visual Studio 2010 for testers
Visual Studio 2010 for testersVisual Studio 2010 for testers
Visual Studio 2010 for testers
 
Testing Frameworks
Testing FrameworksTesting Frameworks
Testing Frameworks
 
Software automation
Software automationSoftware automation
Software automation
 
Automation testing
Automation testingAutomation testing
Automation testing
 
Automated testing overview
Automated testing overviewAutomated testing overview
Automated testing overview
 
Meetup TestingUy 2017: Automating the Viewer: a cross-functional team approach
Meetup TestingUy 2017: Automating the Viewer: a cross-functional team approachMeetup TestingUy 2017: Automating the Viewer: a cross-functional team approach
Meetup TestingUy 2017: Automating the Viewer: a cross-functional team approach
 
Meetup TestingUy 2017 - Automating the Viewer: a cross-functional team approach
Meetup TestingUy 2017 - Automating the Viewer: a cross-functional team approachMeetup TestingUy 2017 - Automating the Viewer: a cross-functional team approach
Meetup TestingUy 2017 - Automating the Viewer: a cross-functional team approach
 
VCS_QAPerformanceSlides
VCS_QAPerformanceSlidesVCS_QAPerformanceSlides
VCS_QAPerformanceSlides
 
Software testing part
Software testing partSoftware testing part
Software testing part
 
Object Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesObject Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slides
 
Automated Testing Tutorial
Automated Testing TutorialAutomated Testing Tutorial
Automated Testing Tutorial
 
Implementing test scripting Ian McDonald updated (minor changes) 26-04-2013
Implementing test scripting   Ian McDonald updated (minor changes) 26-04-2013Implementing test scripting   Ian McDonald updated (minor changes) 26-04-2013
Implementing test scripting Ian McDonald updated (minor changes) 26-04-2013
 
Agile Acceptance testing with Fitnesse
Agile Acceptance testing with FitnesseAgile Acceptance testing with Fitnesse
Agile Acceptance testing with Fitnesse
 
10-Testing-system.pdf
10-Testing-system.pdf10-Testing-system.pdf
10-Testing-system.pdf
 
Streamlining Testing with Visual Studio 2012
Streamlining Testing with Visual Studio 2012Streamlining Testing with Visual Studio 2012
Streamlining Testing with Visual Studio 2012
 
Chowdappa Resume
Chowdappa ResumeChowdappa Resume
Chowdappa Resume
 
Chowdappa Resume
Chowdappa ResumeChowdappa Resume
Chowdappa Resume
 

Recently uploaded

Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesExploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesSanjay Willie
 
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
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
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
 
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
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
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
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
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
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
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
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dashnarutouzumaki53779
 
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
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 

Recently uploaded (20)

Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesExploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
 
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
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
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.
 
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
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
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
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
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
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
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!
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dash
 
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
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 

Writing good test plan and writing good tests

  • 1. Thought on Effective Testing By Qingsong Yao
  • 2. 1. User Scenario driven testing When writing test plan, separate what with How – First, only think about the user scenario – Then, think about how you to test the scenario When write tests, separate what with how – First, write use scenario – Second, implement the test cases which test the scenario
  • 3. User Scenario Example • Scenario – Block of upgrade SQL Express during VS 2010 Installation (Priority 0) • Action: – When a use install VS 2010 on a AMD64 machine with SSE 2005 install, existing SSE instance can’t upgrade SSE 2008 • Success criteria: – Make sure that Setup program detect existing SSE instance correctly. – Make sure that Setup program disable the upgrade/install of SSE correctly. – Make sure SSE is not upgraded if upgrade is not needed. – Existing SSE instance works after setup.
  • 4. 2. Understand the feature Knowing: – how the feature will be implemented. – the risks in term of implementation. – the risks in term of the impact on customer.
  • 5. Example of “Risk Factors and Mitigation strategies” • We are testing product which is not shipped by SQL Group. • Setup is sensitive to change, and easy to be broken. • Dependence of SSE, such as MSI 4.5 is one of the main factors of causing setup failing. • Huge Test Matrix
  • 6. 3. Define your Test Strategy • Test Strategy – How to address the risk areas? – Manual Test v.s. Automation Test? • Examples: – Align Test tasks with Dev tasks. – For larger dev check-ins, test with a private build before checking-in. – Encourage writing programming based tests instead of writing static Meta tests.
  • 7. Example of Test Strategy • Manual Testing during Improvement Phase – Avoid huge investigation of test automation – We define high-level user scenario Success criteria and China VAT team help us to verify • Run test as a real customer to find usability issue. – Verify UI, setup option, and no. reboots – Verify localized strings • For bug fix, we drive user scenario and test dimension from the nature of the fix • Long term, will take advance of VS setup automation in SQL Lab
  • 8. 4. Define test patterns • Test Types: – Recorded tests, Scripted tests or Data Driven tests, Declarative Tests – Model-based or static tests • Design Patterns: – Layer Tests – Repository Pattern, Factory Patterns, Visitor pattern • Test Dimensions: – Pair wise or all combination; Parameterized Tests • Verification Pattern: – State Verification; Oracle based Verification; Custom Assertion • Deal with Dependence: – Dependence Injection – Mock Object
  • 9. From User Scenario to Test Case
  • 10. Test Case Example Test Case: Mismatch between SSE language with VS language if the language of installed SSE instance does not match with the localized SSE 2008, we should not provide options to install SSE. Test Dimension – VS Language: ENU – SSE: SSE 2005, SSE 2008 – SSE Language: JPN Test Case: use pict tool to use generate 3 test cases Verification: • Verify that user can not choose SSE during VS Setup • Verify that VS setup succeed without any error
  • 11. Conclusion 1. User Scenario driven testing 2. Understand the Feature to Be Tested 3. Define Test Strategy 4. From User Scenario to Test Case 5. Write good Tests 6. Define measurable success critical
  • 12. Reference: Test Strategy • http://en.wikipedia.org/wiki/Test_strategy • http://www.projectperfect.com.au/info_test_ strategy.php • http://www.satisfice.com/presentations/strat egy.pdf