Testing is part of quality assurance. Software Testing Chapter 3: Static Techniques 同海大学 TONGJI UNIVERSITY
Software Testing Testing is part of quality assurance. Chapter 3: Static Techniques
Outline Static techniques and the test process 。Review process Static analysis by tools 同桥大学 TONGJI UNIVERSITY Software Testing 15/5/182
Software Testing Outline • Static techniques and the test process • Review process • Static analysis by tools 15/5/18 2
Static Techniques and the Test Process Recognize software work products that can be examined by the different static techniques Describe the importance and value of considering static techniques for the assessment of software work products ● Explain the factors for successful performance of reviews Understand the objectives of static analysis and reviews,and comparison of objective with dynamic testing 同源大学 TONGJI UNIVERSITY SoftwareTesting 15/5/183
Software Testing Static Techniques and the Test Process 15/5/18 3 • Recognize software work products that can be examined by the different static techniques • Describe the importance and value of considering static techniques for the assessment of software work products • Explain the factors for successful performance of reviews • Understand the objectives of static analysis and reviews, and comparison of objective with dynamic testing
Static testing ·Reviews and tools -Reviews range from informal to very formal Tools can perform some types of static tests -Static techniques can be used for requirements and designs,plus code,database schemas,documentation,tests... Models and prototypes -A diagram of a complex system can often reveal design problems that can hide in words -An ugly diagram often means lots of bugs ·Test cases and data Test analysis and design based on requirements and design specs is a form of structured review Test analysis and design often reveals problems 同海大学 TONGJI UNIVERSITY SoftwareTesting 15/5/184
Software Testing Static testing 15/5/18 4 • Reviews and tools – Reviews range from informal to very formal – Tools can perform some types of static tests – Static techniques can be used for requirements and designs, plus code, database schemas, documentation, tests … • Models and prototypes – A diagram of a complex system can often reveal design problems that can hide in words – An ugly diagram often means lots of bugs • Test cases and data – Test analysis and design based on requirements and design specs is a form of structured review – Test analysis and design often reveals problems
Static Tools ·Static analysis Problematic wording:spell grammar checkers -Dangerous programming:J-Test,Safer C Measurement:complexity analysis ·System simulations General Purpose System simulator Performance modeling operations research tools Spreadsheets 同梅大学 TONGJI UNIVERSITY SoftwareTesting 15/5/18 5
Software Testing Static Tools 15/5/18 5 • Static analysis – Problematic wording: spell / grammar checkers – Dangerous programming: J-Test, Safer C – Measurement: complexity analysis • System simulations – General Purpose System simulator – Performance modeling / operations research tools – Spreadsheets
Costs and Benefits ·Costs Time required to perform reviews Effort required to gather and analyze metrics Process improvement ·Benefits -Shorter schedules (due to efficient bug removal) Shorter testing periods and lower testing costs Developer productivity Improved quality of product(which reduces downstream costs) 同海大学 TONGJI UNIVERSITY Software Testing 15/5/186
Software Testing Costs and Benefits 15/5/18 6 • Costs – Time required to perform reviews – Effort required to gather and analyze metrics – Process improvement • Benefits – Shorter schedules (due to efficient bug removal) – Shorter testing periods and lower testing costs – Developer productivity – Improved quality of product (which reduces downstream costs)
Static and Dynamic Testing Similarities Differences O Seek to identify defects Each technique can find OWork best when a broad different types of defects more effectively and cross-section of efficiently stakeholders are involved Static techniques find O Save the company money defects rather than and time failures 同源大学 TONGJI UNIVERSITY SoftwareTesting 15/5/18
Software Testing Static and Dynamic Testing 15/5/18 7 Similarities Seek to identify defects Work best when a broad cross-section of stakeholders are involved Save the company money and time Each technique can find different types of defects more effectively and efficiently Static techniques find defects rather than failures Differences
Exercise:E-mall Pocket Static Testing Do you see reviews and static analysis as useful for the E-mall Pocket project? If so,what kinds of problems do you think these reviews and static analyses would locate? What kinds of problems might they not locate? 。Discuss. 同海大学 TONGJI UNIVERSITY SoftwareTesting 15/5/188
Software Testing Exercise: E-mall Pocket Static Testing • Do you see reviews and static analysis as useful for the E-mall Pocket project? • If so, what kinds of problems do you think these reviews and static analyses would locate? • What kinds of problems might they not locate? • Discuss. 15/5/18 8
Outline Static techniques and the test process 。Review process Static analysis by tools 同梅大学 TONGJI UNIVERSITY Software Testing 15/5/189
Software Testing Outline • Static techniques and the test process • Review process • Static analysis by tools 15/5/18 9
Review Process Recall the activities,roles and responsibilities of a typical formal review Explain the differences between different types of reviews Informal review Technical review -Walkthrough inspection Explain the factors for successful performance of reviews 同濟大学 TONGJI UNIVERSITY Software Testing 15/5/1810
Software Testing Review Process 15/5/18 10 • Recall the activities, roles and responsibilities of a typical formal review • Explain the differences between different types of reviews – Informal review – Technical review – Walkthrough – inspection • Explain the factors for successful performance of reviews