Test Design and Management in context of IFDK reference product.

download Test Design and Management in context of IFDK reference product.

If you can't read please download the document

Transcript of Test Design and Management in context of IFDK reference product.

  • Slide 1

Slide 2 Test Design and Management in context of IFDK reference product Slide 3 About this course material -This material if for general training for Test Design and management -Material is more supportive in class room -Material will be updated during courses -FreeNest Portable Project Platform is used to demonstrate things only in practice. This is not limiting usage for material for other training environments (I hope ) About material Slide 4 Example of IFDK product concept IFDK = Internal Flame Drum Kit Requirement Management Slide 5 Ylotsikko Seller Customer Developer Different aspects to product QA Tester Slide 6 Different requirement levels Customer/Business/Stake Holder Requirements System Requirements Design Requirements Component Requirements Implementation Scalability Stability Performance Security Performance Stress Usabilty Slide 7 Customer Requirements Sub System Requirements Component RequirementsComponent/Unit Testing Integration Testing System Testing Acceptance Testing System Requirements Verification and Validation Verification = Are we building the product right? Validation = Are we building the right product? Ylotsikko Slide 8 System Testing Integration Testing Unit Testing Customer/Business/Stake Holder Requirements System Requirements Design Requirements Component Requirements Acceptance Testing Why we need requirements from testing point of view? Implementation Developer's Area Test Engineers Area Traditional Testing Levels Slide 9 Customer/Business Requirements Customer/Business Requirements Sub System Requirements Sub System Requirements Component Requirements Component Requirements Component / Unit Testing Component / Unit Testing Integration Testing Integration Testing System Testing System Testing Acceptance Testing Acceptance Testing System Requirements System Requirements IFDK System Verification and Validation IFDK System Verification and Validation Use Cases User Storys Features Requirements Validation = Are we building the right product? Verification = Are we building the product right? Validation = Are we building the right product? Verification = Are we building the product right? Architecture& Design& Implementation Architecture& Design& Implementation Product VALIDATION VERIFICATION IFDK Product Ideas Ylotsikko VALIDATION vs VERIFICATION? Slide 10 Features Test Case Use Cases User Storys Product Design & Implementation Requirements Test Case Ready to test Testing & Quality Assurance Can we deliver Product Ready to Deliver ? Customer Not ready to deliver Ylotsikko Slide 11 Features Test Case Use Cases User Storys Product Design & Implementation Requirements Test Case Ready to test Testing & Quality Assurance Can we deliver Product Ready to Deliver ? Customer Not ready to deliver Verification Validation Validation = Are we building the right product? Verification = Are we building the product right? Slide 12 SW Development Process (Waterfall) Requirement Gathering/Evaluatio n Requirement Gathering/Evaluatio n Design Implementation Verification & Validation Verification & Validation Maintenance Error Managment Process Error Managment Process Task1 Mile Stone 1 Mile Stone 2 Mile Stone 3 Task1 Slide 13 White Box Testing Grey Box Testing Black Box Testing SYSTEM TESTING Perspective CODE LEVEL TESTING Perspective Slide 14 Black Box vs White Box Testing Unit Testing is White Box testing Black Box Testing for selected component ? ? ? ? Ylotsikko Slide 15 TESTING LEVELS Slide 16 Unit/Module/Compone nt Testing Customer/Business Requirements Customer/Business Requirements Sub System Requirements Sub System Requirements Component Requirements Component Requirements Component / Unit Testing Component / Unit Testing Integration Testing Integration Testing System Testing System Testing Acceptance Testing Acceptance Testing System Requirements System Requirements Architecture& Design& Implementatio n Architecture& Design& Implementatio n Product VALIDATION VERIFICATION Ylotsikko Slide 17 What should be tested? How ? Slide 18 What should be tested? How ? Slide 19 How to verify component implementation -Unit Testing -Code Coverage -Branch Coverage -Complexity Analyse -Unit Testing -Code Coverage -Branch Coverage -Complexity Analyse Ylotsikko Slide 20 Component /Unit Testing Class Attributes Class Methods Class Attributes Class Methods Attributes TestClass TestMethodCall Unit Test Frame Work Test Method Call Method Result A=1 B=2 C=Class.TestMethodCo untValues(A+B) C3 FAIL C=3 PASS Implemented Class MethodCountValues( int x, int y) z=x+y+1 Return z Developer Slide 21 Code Coverage An analysis method that determines which parts of the software have been executed (covered) by the test suite and which parts have not been executed, e.g. statement coverage, decision coverage or condition coverage. http://en.wikipedia.org/wiki/Code_coverage http://www.atlassian.com/software/clover/ Ylotsikko Slide 22 Branch coverage The percentage of branches that have been exercised by a test suite. 100% branch coverage implies both 100% decision coverage and 100% statement coverage. Ylotsikko Slide 23 Code Complexity Example tool CCCC https://wiki.jenkins- ci.org/display/JENKINS/CCCC+Plugin http://sourceforge.net/projects/codeanalyze- gpl/?source=recommended Ylotsikko Slide 24 Integration Testing Customer/Business Requirements Sub System Requirements Component Requirements Component / Unit Testing Integration Testing System Testing Acceptance Testing System Requirements Architecture& Design& Implementatio n Product VALIDATION VERIFICATION Ylotsikko Slide 25 Slide 26 http://prosentti.vero.fi/veropros_tietojen_syotto2011.asp What should be tested? How ? Slide 27 Why Integrate first? Avoid Big Bang! HW Component Data Base Component/Application 10% tested Component/Application 10% tested Web Service Tested Component/Application Ylotsikko Slide 28 System Testing Customer/Business Requirements Sub System Requirements Component Requirements Component / Unit Testing Integration Testing System Testing Acceptance Testing System Requirements Architecture& Design& Implementatio n Product VALIDATION VERIFICATION Ylotsikko Slide 29 What should be tested? How ? Slide 30 What should be tested? How ? Sales DB Room Reserva tion DB DB ? CRM DB Application & Gateways Application & Gateways Application & Gateways Application & Gateways Slide 31 System Acceptance Testing Customer/Business Requirements Sub System Requirements Component Requirements Component / Unit Testing Integration Testing System Testing Acceptance Testing System Requirements Architecture& Design& Implementatio n Product VALIDATION VERIFICATION Ylotsikko Slide 32 What should be tested before so customer could be so happy ? How ? http://www.123rf.com Slide 33 Feature Pack Project Manager Designer/Coder Integration Test Engineer Integration Test Engineer Test Manager System Testing IFDK System Testing Feature Unit/Integration Testing IFDK System Acceptance Testing System Test Engineer System Test Engineer Error Manager Acceptance Test Engineer Acceptance Test Engineer Validation Verification IFDK Verification/Validation (Testing Organization) Regression Testing Integration Testing System Testing Acceptance Testing Test Automation Unit Testing Product Release Error Database Error Database Test Management Database Test Management Database Report Staus Report Staus Regression Testing Slide 34 Input ? Output? Slide 35 IDEAL Implementation REQ-X REQ-Y REQ-Z REQ-O REQ Ylotsikko What I should check ? Slide 36 Discuss about reasons for test design? Why we need to do design? Stupid work ! I want to progress!?? Slide 37 Test Case Design Slide 38 Feature Pack Project Manager Designer/Coder Integration Test Engineer Integration Test Engineer Test Manager System Testing IFDK System Testing Feature Unit/Integration Testing IFDK System Acceptance Testing System Test Engineer System Test Engineer Error Manager Acceptance Test Engineer Acceptance Test Engineer Validation Verification UNDERSTAND YOUR TEST LEVEL Regression Testing Integration Testing System Testing Acceptance Testing Test Automation Unit Testing Product Release Error Database Error Database Test Management Database Test Management Database Report Staus Report Staus Regression Testing Slide 39 Verify what? Using configuration? With tools? Verify what? Using configuration? With tools? What is verdict? Verify drum track player pause mode functionality. Do this with IFDK software release X and playing song Show must go on by Freddy Mercury Test should be done using android emulator environment and using your hands, ears and eyes Verify drum track player pause mode functionality. Do this with IFDK software release X and playing song Show must go on by Freddy Mercury Test should be done using android emulator environment and using your hands, ears and eyes Add Information about case Pre State: Android emulator is running Release X is installed on emulator Test Case Steps: 1. Open drum kit player application 2. Select song Show must go on 3. Start to play 4. Press Pause and check song is paused 5. Check memory usage from system application 6. Press Play 7. jump to 4 several time (