SlideShare a Scribd company logo
Quality Assurance in Software Industry

              Smiler Yang
              2012/12/13
Outline

• About me
• Roles in a project
• Why a software needs QA
• QA tasks
• Testing Methodology
• Examples
• Some stories in real world
• Happy and Unhappy
• Q&A
Roles in a project

• PM (Product Manager)
• JM (Project Manager)
• DM (Developer Manager)
• QM (QA Manager)
• Architecture
• RD
• QA
• UI Designer
• Technical Writer
Why a software needs QA?

• Did you test your program?
  – I think it’s “Yes”
  – But you might not consider everything…


So, we need---
• Different people
• Different knowledge
• Different environment
QA tasks

• Requirement Clarification   • Bug Reporting
• Test Plan                   • Bug Verification
• Test Spec                   • Document Testing
• Test Case                   • Test Automation
• Environment Preparation     • Beta training
• Functional Testing          • Customer on-site
• System Testing
• Exploratory Testing
Testing Methodology
Testing Methodology (1/5)

• Black Box Testing
  – Perform the tests on the basis of functional properties and
    requirements of a software
  – Focus on the selected test data and the interpretation of test
    results
  – Needs experience…
  – Includes
     •   Functional Test
     •   Error-handling Test
     •   Boundary Test
     •   Performance Test
     •   Stress Test
     •   Usability Test
     •   I18N Test (internationalization test)
     •   …
Testing Methodology (2/5)

• White Box Testing
  – Need to understand overall system architecture
  – Inspect code of function implementation
  – Focus on testing the paths of control flow and data flow
     • Go through all independent paths
     • Exercise logical decisions
     • Executed all loops with boundary condition checked
Testing Methodology (3/5)

• Test Plan
  – Purpose of Test Plan
     • Sync Testing Direction with JM/DM/RD
     • To Give all testing directions/information to QA Engineer
  – Information required in a test plan
     • MRD/PRD/Functional Spec/High Level Design
       – Schedule of each development process, Feature List, System
         Requirement, Product Team Information
     • Configuration Compatibility Testing
       – hardware compatibility / software (OS/Application) compatibility
     • What is the user expecting to the product?
       – How does Customer use the product?
       – on what kind of the environment?
Testing Methodology (4/5)

  • Define the Scope of testing of Features and Environments
    – Doing and not doing
    – Decide the priority of Features and Environment
  • Define of Bug Severity
    – Severity: Critical/Serious/Non-Critical/Enhancement/Suggestion
  • Define Testing methods
  • Resource Planning
    – People
    – Environment
  • Preparation of the testing
    – Knowledge: QA knowledge, product knowledge, …
    – Environment: Software, Hardware,…
  • Process for Testing/Management
    – Bug Tracking System
    – Checking method of the progress
    – Bug Review Meeting
    –…
Testing Methodology (5/5)

• Test Case
  – What is Test Case?
    • The set of input data, operation steps and expected result
    • Operation steps includes conditions, configurations, environment
      information, …
  – What is good Test Case?
    • The purpose of the testing is to improve the quality by finding the
      errors.
    • Test case should cover all requirements.
    • Test case should take the wrong input/output and wrong operation
      into consideration.
    • Test case should have clear description.
Examples
Example of Test Case Creation

• Use Case:
  – Account Login in a web portal




• Test cases??
  – Hint:
    •   Functional Test
    •   Error-handling Test
    •   Boundary Test
    •   Performance Test
    •   Stress Test
    •   Usability Test
    •   I18N Test
Example of Bug Reporting
• Issue: User failed to login the web portal
• How to describe a problem?
• The information of a bug should include:
  –   Title
  –   Environment
  –   Version/build number
  –   OS/Platform
  –   Priority
  –   Severity
  –   Defect Type
  –   Frequency
  –   Description
  –   Steps
  –   Expected results
  –   …
Some stories in real world
QA and JM

<Before the milestone day>
• JM: Any issues of the candidate build?
• QA: So far we found #358 is the problem for…, and
  #359 is the issue when user…., and…..
• JM: Have RD found the root cause for these issues?
• ….
• …
• Then “3M” may have a meeting to review the issues.
QA and RD

< After QA submit a bug to RD>
• RD: This problem didn’t appear in my machine.
• QA: It did happen in my testing environment!
• …
• ..
• .
QA and Customer

<One day…>
• Customer: The service is not available after I used the
  system for only 2 days.
• QA: What did you do on the machine today? Do you
  think it’s normal yesterday?
• Customer: I don’t know. I just moved the machine from
  my office to server room.
• QA: Why did you move the machine?
• …
• ..
A day of a QA

• Read emails
• Clean environment and install new build.
• Testing, bug verification, …
• Find new bug and submit it to RD.
• Discussion for the current issues.
• Discussion for the new features.
• Write test plan / test spec / test case
• Clarify, reproduce issues and collect more debug log…
• Review document, write automation, …..
• Reading, study group, …
Happy and Unhappy

• Happy                          • Unhappy
  – Improve the quality of the     – Too many tasks
    software                       – “Why didn’t you find the bug
  – Provide the solution that        before the release?”
    customers really need          – Schedule VS Quality
  – Learn new things               – …
  – …
Q&A
Thank you~

More Related Content

What's hot

1 sqa and testing concepts
1 sqa and testing concepts1 sqa and testing concepts
1 sqa and testing concepts
sulaimanr85
 
Software testing
Software testingSoftware testing
Software testing
Preeti Mishra
 
Static testing techniques
Static testing techniquesStatic testing techniques
Static testing techniques
Mazenetsolution
 
Static Testing
Static Testing Static Testing
Static Testing
Suraj Vishwakarma
 
Testing tools
Testing toolsTesting tools
Testing JavaScript
Testing JavaScriptTesting JavaScript
Testing JavaScript
dhtml
 
Seminar on Software Testing
Seminar on Software TestingSeminar on Software Testing
Seminar on Software Testing
MD ISLAM
 
Software testing a guide from experience
Software testing a guide from experienceSoftware testing a guide from experience
Software testing a guide from experience
Rajakrishnan S, MCA,MBA,MA Phil,PMP,CSM,ISTQB-Test Mgr,ITIL
 
Sanjay Sharma
Sanjay SharmaSanjay Sharma
Sanjay Sharma
Sanjay Sharma
 
Software Testing
Software TestingSoftware Testing
Software Testing
Maneesha Caldera
 
Software testing and analysis
Software testing and analysisSoftware testing and analysis
Software Testing 4/5
Software Testing 4/5Software Testing 4/5
Software Testing 4/5
Damian T. Gordon
 
Static analysis and reliability testing (CS 5032 2012)
Static analysis and reliability testing (CS 5032 2012)Static analysis and reliability testing (CS 5032 2012)
Static analysis and reliability testing (CS 5032 2012)
Ian Sommerville
 
verification and validation
verification and validationverification and validation
verification and validation
Dinesh Pasi
 
Software Testing - Software V&V and selection processes
Software Testing - Software V&V and selection processesSoftware Testing - Software V&V and selection processes
Software Testing - Software V&V and selection processes
anasz3z3
 
Software Testing
Software TestingSoftware Testing
Software Testing
MayuriVerma6
 
Object Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesObject Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slides
Punjab University
 
Tools for Software Verification and Validation
Tools for Software Verification and ValidationTools for Software Verification and Validation
Tools for Software Verification and Validation
aliraza786
 

What's hot (18)

1 sqa and testing concepts
1 sqa and testing concepts1 sqa and testing concepts
1 sqa and testing concepts
 
Software testing
Software testingSoftware testing
Software testing
 
Static testing techniques
Static testing techniquesStatic testing techniques
Static testing techniques
 
Static Testing
Static Testing Static Testing
Static Testing
 
Testing tools
Testing toolsTesting tools
Testing tools
 
Testing JavaScript
Testing JavaScriptTesting JavaScript
Testing JavaScript
 
Seminar on Software Testing
Seminar on Software TestingSeminar on Software Testing
Seminar on Software Testing
 
Software testing a guide from experience
Software testing a guide from experienceSoftware testing a guide from experience
Software testing a guide from experience
 
Sanjay Sharma
Sanjay SharmaSanjay Sharma
Sanjay Sharma
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Software testing and analysis
Software testing and analysisSoftware testing and analysis
Software testing and analysis
 
Software Testing 4/5
Software Testing 4/5Software Testing 4/5
Software Testing 4/5
 
Static analysis and reliability testing (CS 5032 2012)
Static analysis and reliability testing (CS 5032 2012)Static analysis and reliability testing (CS 5032 2012)
Static analysis and reliability testing (CS 5032 2012)
 
verification and validation
verification and validationverification and validation
verification and validation
 
Software Testing - Software V&V and selection processes
Software Testing - Software V&V and selection processesSoftware Testing - Software V&V and selection processes
Software Testing - Software V&V and selection processes
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Object Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesObject Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slides
 
Tools for Software Verification and Validation
Tools for Software Verification and ValidationTools for Software Verification and Validation
Tools for Software Verification and Validation
 

Viewers also liked

70-272 Chapter08
70-272 Chapter0870-272 Chapter08
70-272 Chapter08
Gene Carboni
 
Chapter12 -- troubleshooting networking problems
Chapter12  -- troubleshooting networking problemsChapter12  -- troubleshooting networking problems
Chapter12 -- troubleshooting networking problems
Raja Waseem Akhtar
 
Basic of ip subnet and addressing
Basic of ip subnet and addressingBasic of ip subnet and addressing
Basic of ip subnet and addressing
rahul_cuet
 
Networking basics
Networking basicsNetworking basics
Networking basics
Vadiraj Jahagirdar
 
Networking Basics
Networking BasicsNetworking Basics
Networking Basics
Carlo Fonda
 
Ip Addressing Basics
Ip Addressing BasicsIp Addressing Basics
Ip Addressing Basics
tmavroidis
 
Presentation on basic networking
Presentation on basic networkingPresentation on basic networking
Presentation on basic networking
qshamim07
 
IP Addressing and Subnetting Basics
IP Addressing and Subnetting BasicsIP Addressing and Subnetting Basics
IP Addressing and Subnetting Basics
Rowell Dionicio
 
FTTx Ftth Triple Play Solution
FTTx Ftth Triple Play SolutionFTTx Ftth Triple Play Solution
FTTx Ftth Triple Play Solution
suntelecomm
 
Networking Basics
Networking BasicsNetworking Basics
Networking Basics
SMC Networks Europe
 
Training on basic internet troubleshooting
Training on basic internet troubleshootingTraining on basic internet troubleshooting
Training on basic internet troubleshooting
Spandan Pradhan
 
Router vs switch
Router vs switchRouter vs switch
Router vs switch
IT Tech
 
Network Troubleshooting - Part 1
Network Troubleshooting - Part 1Network Troubleshooting - Part 1
Network Troubleshooting - Part 1
SolarWinds
 
The Basics of Network Troubleshooting
The Basics of Network TroubleshootingThe Basics of Network Troubleshooting
The Basics of Network Troubleshooting
zaisahil
 
Networking fundamentals
Networking fundamentalsNetworking fundamentals
Networking fundamentals
jpprakash
 
Lesson 2: Subnetting basics
Lesson 2: Subnetting basicsLesson 2: Subnetting basics
Lesson 2: Subnetting basics
Mahmmoud Mahdi
 
difference between hub, bridge, switch and router
difference between hub, bridge, switch and routerdifference between hub, bridge, switch and router
difference between hub, bridge, switch and router
Akmal Cikmat
 
Computer hardware troubleshooting
Computer hardware troubleshootingComputer hardware troubleshooting
Computer hardware troubleshooting
Jerome Luison
 
Ip address and subnetting
Ip address and subnettingIp address and subnetting
Ip address and subnetting
IGZ Software house
 
Network Hardware And Software
Network Hardware And SoftwareNetwork Hardware And Software
Network Hardware And Software
Steven Cahill
 

Viewers also liked (20)

70-272 Chapter08
70-272 Chapter0870-272 Chapter08
70-272 Chapter08
 
Chapter12 -- troubleshooting networking problems
Chapter12  -- troubleshooting networking problemsChapter12  -- troubleshooting networking problems
Chapter12 -- troubleshooting networking problems
 
Basic of ip subnet and addressing
Basic of ip subnet and addressingBasic of ip subnet and addressing
Basic of ip subnet and addressing
 
Networking basics
Networking basicsNetworking basics
Networking basics
 
Networking Basics
Networking BasicsNetworking Basics
Networking Basics
 
Ip Addressing Basics
Ip Addressing BasicsIp Addressing Basics
Ip Addressing Basics
 
Presentation on basic networking
Presentation on basic networkingPresentation on basic networking
Presentation on basic networking
 
IP Addressing and Subnetting Basics
IP Addressing and Subnetting BasicsIP Addressing and Subnetting Basics
IP Addressing and Subnetting Basics
 
FTTx Ftth Triple Play Solution
FTTx Ftth Triple Play SolutionFTTx Ftth Triple Play Solution
FTTx Ftth Triple Play Solution
 
Networking Basics
Networking BasicsNetworking Basics
Networking Basics
 
Training on basic internet troubleshooting
Training on basic internet troubleshootingTraining on basic internet troubleshooting
Training on basic internet troubleshooting
 
Router vs switch
Router vs switchRouter vs switch
Router vs switch
 
Network Troubleshooting - Part 1
Network Troubleshooting - Part 1Network Troubleshooting - Part 1
Network Troubleshooting - Part 1
 
The Basics of Network Troubleshooting
The Basics of Network TroubleshootingThe Basics of Network Troubleshooting
The Basics of Network Troubleshooting
 
Networking fundamentals
Networking fundamentalsNetworking fundamentals
Networking fundamentals
 
Lesson 2: Subnetting basics
Lesson 2: Subnetting basicsLesson 2: Subnetting basics
Lesson 2: Subnetting basics
 
difference between hub, bridge, switch and router
difference between hub, bridge, switch and routerdifference between hub, bridge, switch and router
difference between hub, bridge, switch and router
 
Computer hardware troubleshooting
Computer hardware troubleshootingComputer hardware troubleshooting
Computer hardware troubleshooting
 
Ip address and subnetting
Ip address and subnettingIp address and subnetting
Ip address and subnetting
 
Network Hardware And Software
Network Hardware And SoftwareNetwork Hardware And Software
Network Hardware And Software
 

Similar to 20121213 qa introduction smileryang

Test planning and software's engineering
Test planning and software's engineeringTest planning and software's engineering
Test planning and software's engineering
MansiganeshJawale
 
Software Project Management lecture 10
Software Project Management lecture 10Software Project Management lecture 10
Software Project Management lecture 10
Syed Muhammad Hammad
 
Agile Bureaucracy
Agile BureaucracyAgile Bureaucracy
Agile Bureaucracy
Return on Intelligence
 
Software testing-and-analysis
Software testing-and-analysisSoftware testing-and-analysis
Software testing-and-analysis
WBUTTUTORIALS
 
Fundamental of testing
Fundamental of testingFundamental of testing
Fundamental of testing
Dr. Ahmed Al Zaidy
 
What_is_Software_Testing.pdf
What_is_Software_Testing.pdfWhat_is_Software_Testing.pdf
What_is_Software_Testing.pdf
VuongPhm
 
ISTQB - CTFL Summary v1.0
ISTQB - CTFL Summary v1.0ISTQB - CTFL Summary v1.0
ISTQB - CTFL Summary v1.0
Samer Desouky
 
QA Basics and PM Overview
QA Basics and PM OverviewQA Basics and PM Overview
QA Basics and PM Overview
Ajay Mani Paudel
 
Manual Testing software testing all slide
Manual Testing software testing all slideManual Testing software testing all slide
Manual Testing software testing all slide
SmileySmiley39
 
UNIT IV.ppt
UNIT IV.pptUNIT IV.ppt
UNIT IV.ppt
Varshini62
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
Rizky Munggaran
 
Agile Acceptance testing with Fitnesse
Agile Acceptance testing with FitnesseAgile Acceptance testing with Fitnesse
Agile Acceptance testing with Fitnesse
ClareMcLennan
 
Lect3
Lect3Lect3
Spm lecture-3
Spm lecture-3Spm lecture-3
Spm lecture-3
Sulman Ahmed
 
manualtesting-170218090020 (1).pdf
manualtesting-170218090020 (1).pdfmanualtesting-170218090020 (1).pdf
manualtesting-170218090020 (1).pdf
peramdevi06
 
ISTQB CTAL - Test Analyst
ISTQB CTAL - Test AnalystISTQB CTAL - Test Analyst
ISTQB CTAL - Test Analyst
Samer Desouky
 
Alexander Podelko - Context-Driven Performance Testing
Alexander Podelko - Context-Driven Performance TestingAlexander Podelko - Context-Driven Performance Testing
Alexander Podelko - Context-Driven Performance Testing
Neotys_Partner
 
Testing strategy for agile projects updated
Testing strategy for agile projects updatedTesting strategy for agile projects updated
Testing strategy for agile projects updated
Tharinda Liyanage
 
_VoicePPT_QA_Testing_Training_4_Days_Schedule.ppt
_VoicePPT_QA_Testing_Training_4_Days_Schedule.ppt_VoicePPT_QA_Testing_Training_4_Days_Schedule.ppt
_VoicePPT_QA_Testing_Training_4_Days_Schedule.ppt
AnilKumarARS
 
Software Testing
Software TestingSoftware Testing
Software Testing
Krishna Sujeer
 

Similar to 20121213 qa introduction smileryang (20)

Test planning and software's engineering
Test planning and software's engineeringTest planning and software's engineering
Test planning and software's engineering
 
Software Project Management lecture 10
Software Project Management lecture 10Software Project Management lecture 10
Software Project Management lecture 10
 
Agile Bureaucracy
Agile BureaucracyAgile Bureaucracy
Agile Bureaucracy
 
Software testing-and-analysis
Software testing-and-analysisSoftware testing-and-analysis
Software testing-and-analysis
 
Fundamental of testing
Fundamental of testingFundamental of testing
Fundamental of testing
 
What_is_Software_Testing.pdf
What_is_Software_Testing.pdfWhat_is_Software_Testing.pdf
What_is_Software_Testing.pdf
 
ISTQB - CTFL Summary v1.0
ISTQB - CTFL Summary v1.0ISTQB - CTFL Summary v1.0
ISTQB - CTFL Summary v1.0
 
QA Basics and PM Overview
QA Basics and PM OverviewQA Basics and PM Overview
QA Basics and PM Overview
 
Manual Testing software testing all slide
Manual Testing software testing all slideManual Testing software testing all slide
Manual Testing software testing all slide
 
UNIT IV.ppt
UNIT IV.pptUNIT IV.ppt
UNIT IV.ppt
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Agile Acceptance testing with Fitnesse
Agile Acceptance testing with FitnesseAgile Acceptance testing with Fitnesse
Agile Acceptance testing with Fitnesse
 
Lect3
Lect3Lect3
Lect3
 
Spm lecture-3
Spm lecture-3Spm lecture-3
Spm lecture-3
 
manualtesting-170218090020 (1).pdf
manualtesting-170218090020 (1).pdfmanualtesting-170218090020 (1).pdf
manualtesting-170218090020 (1).pdf
 
ISTQB CTAL - Test Analyst
ISTQB CTAL - Test AnalystISTQB CTAL - Test Analyst
ISTQB CTAL - Test Analyst
 
Alexander Podelko - Context-Driven Performance Testing
Alexander Podelko - Context-Driven Performance TestingAlexander Podelko - Context-Driven Performance Testing
Alexander Podelko - Context-Driven Performance Testing
 
Testing strategy for agile projects updated
Testing strategy for agile projects updatedTesting strategy for agile projects updated
Testing strategy for agile projects updated
 
_VoicePPT_QA_Testing_Training_4_Days_Schedule.ppt
_VoicePPT_QA_Testing_Training_4_Days_Schedule.ppt_VoicePPT_QA_Testing_Training_4_Days_Schedule.ppt
_VoicePPT_QA_Testing_Training_4_Days_Schedule.ppt
 
Software Testing
Software TestingSoftware Testing
Software Testing
 

More from netdbncku

Jenkins hand in hand
Jenkins  hand in handJenkins  hand in hand
Jenkins hand in hand
netdbncku
 
Continuous integration
Continuous integrationContinuous integration
Continuous integrationnetdbncku
 
20121213 foundation of software development 2 2-ktchuang
20121213 foundation of software development 2 2-ktchuang20121213 foundation of software development 2 2-ktchuang
20121213 foundation of software development 2 2-ktchuangnetdbncku
 
Software development lifecycle_release_management
Software development lifecycle_release_managementSoftware development lifecycle_release_management
Software development lifecycle_release_management
netdbncku
 
2012 11-16 cloud practices-in_trend_micro_2012 - chung-tsai su
2012 11-16 cloud practices-in_trend_micro_2012 - chung-tsai su2012 11-16 cloud practices-in_trend_micro_2012 - chung-tsai su
2012 11-16 cloud practices-in_trend_micro_2012 - chung-tsai su
netdbncku
 
Intoduction of programming contest
Intoduction of programming contestIntoduction of programming contest
Intoduction of programming contestnetdbncku
 
Foundation of software development 2
Foundation of software development 2Foundation of software development 2
Foundation of software development 2netdbncku
 
Tutorial of eclipse
Tutorial of eclipseTutorial of eclipse
Tutorial of eclipsenetdbncku
 
Foundation of software development 1
Foundation of software development 1Foundation of software development 1
Foundation of software development 1netdbncku
 
3. java basics
3. java basics3. java basics
3. java basicsnetdbncku
 
2. java introduction
2. java introduction2. java introduction
2. java introductionnetdbncku
 

More from netdbncku (11)

Jenkins hand in hand
Jenkins  hand in handJenkins  hand in hand
Jenkins hand in hand
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
20121213 foundation of software development 2 2-ktchuang
20121213 foundation of software development 2 2-ktchuang20121213 foundation of software development 2 2-ktchuang
20121213 foundation of software development 2 2-ktchuang
 
Software development lifecycle_release_management
Software development lifecycle_release_managementSoftware development lifecycle_release_management
Software development lifecycle_release_management
 
2012 11-16 cloud practices-in_trend_micro_2012 - chung-tsai su
2012 11-16 cloud practices-in_trend_micro_2012 - chung-tsai su2012 11-16 cloud practices-in_trend_micro_2012 - chung-tsai su
2012 11-16 cloud practices-in_trend_micro_2012 - chung-tsai su
 
Intoduction of programming contest
Intoduction of programming contestIntoduction of programming contest
Intoduction of programming contest
 
Foundation of software development 2
Foundation of software development 2Foundation of software development 2
Foundation of software development 2
 
Tutorial of eclipse
Tutorial of eclipseTutorial of eclipse
Tutorial of eclipse
 
Foundation of software development 1
Foundation of software development 1Foundation of software development 1
Foundation of software development 1
 
3. java basics
3. java basics3. java basics
3. java basics
 
2. java introduction
2. java introduction2. java introduction
2. java introduction
 

20121213 qa introduction smileryang

  • 1. Quality Assurance in Software Industry Smiler Yang 2012/12/13
  • 2. Outline • About me • Roles in a project • Why a software needs QA • QA tasks • Testing Methodology • Examples • Some stories in real world • Happy and Unhappy • Q&A
  • 3. Roles in a project • PM (Product Manager) • JM (Project Manager) • DM (Developer Manager) • QM (QA Manager) • Architecture • RD • QA • UI Designer • Technical Writer
  • 4. Why a software needs QA? • Did you test your program? – I think it’s “Yes” – But you might not consider everything… So, we need--- • Different people • Different knowledge • Different environment
  • 5. QA tasks • Requirement Clarification • Bug Reporting • Test Plan • Bug Verification • Test Spec • Document Testing • Test Case • Test Automation • Environment Preparation • Beta training • Functional Testing • Customer on-site • System Testing • Exploratory Testing
  • 7. Testing Methodology (1/5) • Black Box Testing – Perform the tests on the basis of functional properties and requirements of a software – Focus on the selected test data and the interpretation of test results – Needs experience… – Includes • Functional Test • Error-handling Test • Boundary Test • Performance Test • Stress Test • Usability Test • I18N Test (internationalization test) • …
  • 8. Testing Methodology (2/5) • White Box Testing – Need to understand overall system architecture – Inspect code of function implementation – Focus on testing the paths of control flow and data flow • Go through all independent paths • Exercise logical decisions • Executed all loops with boundary condition checked
  • 9. Testing Methodology (3/5) • Test Plan – Purpose of Test Plan • Sync Testing Direction with JM/DM/RD • To Give all testing directions/information to QA Engineer – Information required in a test plan • MRD/PRD/Functional Spec/High Level Design – Schedule of each development process, Feature List, System Requirement, Product Team Information • Configuration Compatibility Testing – hardware compatibility / software (OS/Application) compatibility • What is the user expecting to the product? – How does Customer use the product? – on what kind of the environment?
  • 10. Testing Methodology (4/5) • Define the Scope of testing of Features and Environments – Doing and not doing – Decide the priority of Features and Environment • Define of Bug Severity – Severity: Critical/Serious/Non-Critical/Enhancement/Suggestion • Define Testing methods • Resource Planning – People – Environment • Preparation of the testing – Knowledge: QA knowledge, product knowledge, … – Environment: Software, Hardware,… • Process for Testing/Management – Bug Tracking System – Checking method of the progress – Bug Review Meeting –…
  • 11. Testing Methodology (5/5) • Test Case – What is Test Case? • The set of input data, operation steps and expected result • Operation steps includes conditions, configurations, environment information, … – What is good Test Case? • The purpose of the testing is to improve the quality by finding the errors. • Test case should cover all requirements. • Test case should take the wrong input/output and wrong operation into consideration. • Test case should have clear description.
  • 13. Example of Test Case Creation • Use Case: – Account Login in a web portal • Test cases?? – Hint: • Functional Test • Error-handling Test • Boundary Test • Performance Test • Stress Test • Usability Test • I18N Test
  • 14. Example of Bug Reporting • Issue: User failed to login the web portal • How to describe a problem? • The information of a bug should include: – Title – Environment – Version/build number – OS/Platform – Priority – Severity – Defect Type – Frequency – Description – Steps – Expected results – …
  • 15. Some stories in real world
  • 16. QA and JM <Before the milestone day> • JM: Any issues of the candidate build? • QA: So far we found #358 is the problem for…, and #359 is the issue when user…., and….. • JM: Have RD found the root cause for these issues? • …. • … • Then “3M” may have a meeting to review the issues.
  • 17. QA and RD < After QA submit a bug to RD> • RD: This problem didn’t appear in my machine. • QA: It did happen in my testing environment! • … • .. • .
  • 18. QA and Customer <One day…> • Customer: The service is not available after I used the system for only 2 days. • QA: What did you do on the machine today? Do you think it’s normal yesterday? • Customer: I don’t know. I just moved the machine from my office to server room. • QA: Why did you move the machine? • … • ..
  • 19. A day of a QA • Read emails • Clean environment and install new build. • Testing, bug verification, … • Find new bug and submit it to RD. • Discussion for the current issues. • Discussion for the new features. • Write test plan / test spec / test case • Clarify, reproduce issues and collect more debug log… • Review document, write automation, ….. • Reading, study group, …
  • 20. Happy and Unhappy • Happy • Unhappy – Improve the quality of the – Too many tasks software – “Why didn’t you find the bug – Provide the solution that before the release?” customers really need – Schedule VS Quality – Learn new things – … – …
  • 21. Q&A