1.The Value of Healthy Software.健康的軟件比帶有缺陷的軟件更有優(yōu)越性,它們有更好的結(jié)構(gòu)和設(shè)計、擴展性、可重用性,健壯性和可測試性,能夠開發(fā)健康軟件的組織,他們能更快響映新的需求和需求的變化,更能夠滿足好客戶的需要,操作的成本比起他們的競爭對手更低,他們能看到對軟件質(zhì)量的關(guān)注會以他們的商業(yè)成果的提高來回報。
2.The Role of Developer Testing .很多方案都被提議去幫助提升軟件的質(zhì)量,但是沒有那一種方案象開發(fā)者測試那樣對對軟件的質(zhì)量產(chǎn)生巨大的影響,開發(fā)人員創(chuàng)建了代碼。這些代碼包含了具體的設(shè)計,也同時隱含了缺陷,使開發(fā)人員在編寫他們代碼的時候去驗證他們代碼的正確性,這是一種積極的影響,它會對軟件質(zhì)量的提升帶來極大的好處。因為:
開發(fā)人員能夠以很低的代價去修復那些簡單的代碼錯誤。
他們也能修復那些導致錯誤的設(shè)計缺陷,不也正好刪除了對錯誤代碼的維護。
他們使測試和代碼一致,并經(jīng)常去運行他們,任何改變所產(chǎn)生的錯誤都會馬上被識別,并很容易去修復。
測試開發(fā)人員創(chuàng)建實施規(guī)格,從測試規(guī)格中,其他的開發(fā)人員能理解每個開發(fā)人員的軟件模塊做的是什么,從而更有利于合理的設(shè)計。
當軟件開發(fā)人員遞交他們的軟件產(chǎn)品的時候,也同時提供執(zhí)行單元測試的資料,單元測試它覆蓋所有的代碼、分之和輸出結(jié)果。開發(fā)人員將更加信任軟件質(zhì)量,更快 的地依照確定的事情作出改變,以滿足需求的變化。團隊使用開發(fā)測試能夠保證在整個開發(fā)周期中軟件的健康,他們的項目將更早完成,有更高的可信度和更少的壓 力,終的產(chǎn)品將有更高的重用性、可擴展性,對企業(yè)帶來更多的價值和產(chǎn)品的健康。
3.What is Software Agitation?.Software Agitation 是一個自動的運行軟件代碼并提供軟件代碼行為觀察報告的一種方法,它幫助開發(fā)人員單元測試他們的代碼,而不用手動編寫測試代碼,使用該方法,開發(fā)人員將創(chuàng)造出更好、更容易維護和健康的軟件,產(chǎn)生很少的bug,具有更高的生產(chǎn)效率,因為他們花了很少的時間去分析失敗和改寫他們的代碼
4.Exercising the Code—Leave No Code Behind為了真正實現(xiàn)單元測試代碼,每一 行、每個分之、每個輸出都必須進行測試,這是一個讓人畏懼的組合問題,人工去創(chuàng)建如此多的測試是不實際的,測試代碼大大長于被測代碼,并且在花費在寫測試代碼的時間和花費在實現(xiàn)必要的軟件特性的時間要作出一種權(quán)衡。Agitator創(chuàng)建被測試類的實例,仔細調(diào)用每一個方法,動態(tài)創(chuàng)建一些輸入數(shù)據(jù)并分析結(jié)果。當對象依賴其他對象時,Agitator也自動構(gòu)造這些對象,使得代碼的可能的行為都作全面的分析,即使他們依賴第三方的庫。
5.Observations—“Just the Facts” About the Code.當Agitator執(zhí)行代碼的時候,它跟蹤所有的測量變量,以及他們之間的關(guān)系,執(zhí)行前和執(zhí)行后的值,Agitator使用這些信息去創(chuàng)建一系列的觀察報告,觀察報告告訴開發(fā)者代碼真正做了什么?不管這個軟件規(guī)格和設(shè)計文檔怎么說的,也不管開發(fā)者是否意識到,觀察報告以Java表達式的方式去呈現(xiàn)代碼所做的真正工作。