ABSTRACT

Both theoretical and practical work on the testing of object-oriented software has flourished since the second half of the 1990s, leading to the clear dominance of the paradigm in 2013. One of the original hopes for object-oriented software was that objects could be reused without modification or additional testing. This was based on the assumption that well-conceived objects encapsulate functions and data “that belong together,” and once such objects are developed and tested, they become reusable components. The new consensus is that there is little reason for this optimism—object-oriented software has potentially more severe testing problems than those for traditional software. On the positive side, the Unified Modeling Language (UML) is clearly the de facto framework for object-oriented software development.