testing and debugging building adequate stubs is often challenge if the unit the stub is replacing is intended to perform some complex taskbuilding stub that performs actions consistent with the specification may be tantamount to writing the program that the stub is designed to replace one way to surmount this problem is to limit the set of arguments accepted by the stuband create table that contains the values to be returned for each combination of arguments to be used in the test suite one attraction of automating the testing process is that it facilitates regression testing as programmers attempt to debug programit is all too common to install "fixthat breaks something that used to work whenever any change is madeno matter how smallyou should check that the program still passes all of the tests that it used to pass debugging there is charming urban legend about how the process of fixing flaws in software came to be known as debugging the photo below is of september page in laboratory book from the group working on the mark ii aiken relay calculator at harvard university some have claimed that the discovery of that unfortunate moth trapped in the mark ii led to the use of the phrase debugging however the wording"first actual case of bug being found,suggests that less literal interpretation of the phrase was already common grace murray hoppera leader of the mark ii projectmade it clear that the term "bugwas already in wide use to describe problems with electronic systems during world war ii and well prior to thathawkinsnew catechism of electricityan electrical handbookincluded the entry"the term 'bugis used to limited extent to designate any fault or trouble in the connections or working of electric apparatus in english usage the word "bugbearmeans "anything causing seemingly needless or excessive