tailieunhanh - Lecture Software engineering - Chapter 19: Testing object-oriented applications
Chapter 19 - Testing object-oriented applications. The architecture of object-oriented (OO) software results in a series of layered subsystems that encapsulate collaborating classes. Each of these system elements (subsystems and classes) performs functions that help to achieve system requirements. It is necessary to test an OO system at a variety of different levels in an effort to uncover errors that may occur as classes collaborate with one another and subsystems communicate across architectural layers. | Chapter 19 Testing Object-Oriented Applications Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman Slides copyright © 1996, 2001, 2005, 2009 by Roger S. Pressman For non-profit educational use only May be reproduced ONLY for student use at the university level when used in conjunction with Software Engineering: A Practitioner's Approach, 7/e. Any other reproduction or use is prohibited without the express written permission of the author. All copyright information MUST appear if these slides are posted on a website for student use. OO Testing To adequately test OO systems, three things must be done: the definition of testing must be broadened to include error discovery techniques applied to object-oriented analysis and design models the strategy for unit and integration testing must change significantly, and the design of test cases must account for the unique characteristics of OO software. ‘Testing’ OO Models The review of OO . | Chapter 19 Testing Object-Oriented Applications Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman Slides copyright © 1996, 2001, 2005, 2009 by Roger S. Pressman For non-profit educational use only May be reproduced ONLY for student use at the university level when used in conjunction with Software Engineering: A Practitioner's Approach, 7/e. Any other reproduction or use is prohibited without the express written permission of the author. All copyright information MUST appear if these slides are posted on a website for student use. OO Testing To adequately test OO systems, three things must be done: the definition of testing must be broadened to include error discovery techniques applied to object-oriented analysis and design models the strategy for unit and integration testing must change significantly, and the design of test cases must account for the unique characteristics of OO software. ‘Testing’ OO Models The review of OO analysis and design models is especially useful because the same semantic constructs (., classes, attributes, operations, messages) appear at the analysis, design, and code level Therefore, a problem in the definition of class attributes that is uncovered during analysis will circumvent side affects that might occur if the problem were not discovered until design or code (or even the next iteration of analysis). Correctness of OO Models During analysis and design, semantic correctness can be asesssed based on the model’s conformance to the real world problem domain. If the model accurately reflects the real world (to a level of detail that is appropriate to the stage of development at which the model is reviewed) then it is semantically correct. To determine whether the model does, in fact, reflect real world requirements, it should be presented to problem domain experts who will examine the class definitions and hierarchy for omissions and ambiguity. Class relationships (instance
đang nạp các trang xem trước