Topics Covered Today Overview of Software Testing Software Testing methods Software test Types 2. 1 Implementing Classes 2.1.4 Unit Testing
2 Topics Covered Today • Overview of Software Testing • Software Testing Methods • Software Test Types • 2.1 Implementing Classes – 2.1.4 Unit Testing
Overview of Software Testing Purpose of software Testin Role of testers Truths and realities
3 Overview of Software Testing • Purpose of Software Testing • Role of Testers • Truths and Realities
Software Testing Any activity designed to evaluate an attribute or capability of a program to determine that it meets required standards
4 Software Testing • Any activity designed to evaluate an attribute or capability of a program to determine that it meets required standards
Purpose of software Testing Measure Quality Validation i: Prove it works(do the right thing Verification证明: Do it right Provide information To development and management For risk evaluation Watching the process not just the product
5 Purpose of Software Testing • Measure Quality – Validation确认: Prove it works (Do the right thing) – Verification证明: Do it right • Provide information – To development and management – For risk evaluation • Watching the process not just the product
Software Quality Doing the right things right at the right time Conformance to applicable standards Customer focus · Features vs. Flaws Engineering focus Maintainability, sustainability可维护, testability,etc Quality is defined as conformance一致to requirements, not as goodness”or“ elegance Quality also means“ meet customer needs
6 Software Quality • Doing the right things right at the right time • Conformance to applicable standards – Customer focus • Features vs. Flaws – Engineering focus • Maintainability, sustainability可维护, testability, etc. • Quality is defined as conformance一致 to requirements, not as “goodness” or “elegance” • Quality also means “meet customer needs
Role of testers Find bugs Break Software Keep Developers Honest Defect prevention Quality Measurement Drive quality upstream · Customer focus Goal: ensure the quality
7 Role of Testers • Find Bugs • Break Software • Keep Developers Honest • Defect Prevention • Quality Measurement • Drive quality upstream • Customer focus Goal: ensure the quality
Truths and realities The earlier a bug is fixed the less costly it is Before code review by code review by testing By beta testers After product is released Prevention vs. detection The mere act of designing a test is a powerful bug preventer
8 Truths and Realities • The earlier a bug is fixed, the less costly it is. – Before code review – By code review – By testing – By Beta testers – After product is released • Prevention vs. Detection – “The mere act of designing a test is a powerful bug preventer
Truths and realities Thorough Testing vS. Risk-based testing Thorough Testing: testing for everything Risk-based Testing Identify and analyze risks to enable informed and calculated decisions Look for the best use of test resource Risks can be categorized by severity and likelihood
9 Truths and Realities • Thorough Testing vs. Risk-based testing – Thorough Testing: testing for everything – Risk-based Testing • Identify and analyze risks to enable informed and calculated decisions • Look for the best use of test resource • Risks can be categorized by severity and likelihood