tailieunhanh - Lecture Software testing and analysis - Chapter 3: Basic principles
This chapter advocates six principles that characterize various approaches and techniques for analysis and testing: sensitivity, redundancy, restriction, partition, visibility, and feedback. Some of these principles, such as partition, visibility, and feedback, are quite general in engineering. | Basic Principles c 2007 Mauro Pezze Michal Young Ch 3 slide 1 Main A T Principles General engineering principles - Partition divide and conquer - Visibility making information accessible - Feedback tuning the development process Specific A T principles - Sensitivity better to fail every time than sometimes - Redundancy making intentions explicit - Restriction making the problem easier SOFTWARE TESTING AND ANALYSIS c 2007 Mauro Pezze Michal Young Ch 3 slide 3 Learning objectives Understand the basic principles undelying A T techniques Grasp the motivations and applicability of the main principles c 2007 Mauro Pezze Michal Young Ch 3 slide 2 Sensitivity better to fail every time than sometimes Consistency helps - a test selection criterion works better if every selected test provides the same result . if the program fails with one of the selected tests it fails with all of them reliable criteria - run time deadlock analysis works better if it is machine independent . if the program deadlocks when analyzed on one machine it deadlocks on every machine c 2007 Mauro Pezze Michal Young Ch 3 slide 4 Redundancy making intentions explicit Redundant checks can increase the capabilities of catching specific faults early or more efficiently. - static type checking is redundant with respect to dynamic type checking but it can reveal many type mismatches earlier and more efficiently. - Validation of requirement specifications is redundant with respect to validation of the final software but can reveal errors earlier and more efficiently. - Testing and proof of properties are redundant but are often used together to increase confidence SOFTWARE TESTING ANDANALYSIS c 2007 Mauro Pezze Michal Young Ch 3 slide 5 Restriction making the problem easier Suitable restrictions can reduce hard unsolvable problems to simpler solvable problems - A weaker spec may be easier to check it is impossible in general to show that pointers are used correctly but the simple Java requirement that .
đang nạp các trang xem trước