簡介
這款軟體最大的特點就是高度的自動化和極強的MOCK技術。使得程式設計師能夠及時便捷的進行單元測試,管理者能夠直觀明了的控制開發人員的工作。大大的縮減開發時間、降低開發成本、提高軟體的質量。
單元測試是軟體工程測試活動中極其重要的一環。是指程式設計師對自己所寫的代碼的某一邏輯單元進行自我測試。這一邏輯單元有可能是一個函式、也有可能是一個類,甚至是一個包。當程式設計師新寫了某一個單元後,就要對其進行測試,使得測試儘量多的覆蓋代碼。發現BUG,及時修改代碼。這樣就能及時的發現程式中存在的問題。如果不進行單元測試,有可能會出現以下問題:
對程式設計師所寫的代碼質量,我們無法進行控制和度量。現在很多公司只關注程式設計師完成了多少個功能點和多少行的代碼,不去關注程式設計師所寫的代碼質量,這就造成了程式設計師無需對自己所寫的代碼負責。有時候程式設計師心情好狀態好,可能會寫出高質量的代碼,有時候程式設計師心情差、狀態不好可能代碼中的BUG會比較多。這些BUG就會隨著代碼的提交遺留到軟體工程的下一個環節也就是測試環節,交由測試人員去測試。測試人員有可能發現這些BUG,在按照流程交回給程式設計師修改,然後再提交給測試人員測試。在這個過程中可能還會引起開發人員與QA人員之間的衝突。這樣就會大大的提高開發成本、延誤開發時間。對於一些功能和業務邏輯比較複雜的系統,有很多BUG在測試階段是不能被找到的。因為發現BUG的最佳階段是開發階段。這樣會使這些BUG遺留到產品中交付給客戶。一旦這些BUG被客戶和一些別有用心的人發現並利用,輕則對我們的公司和信譽造成損失,重則會對生命和財產造成威脅。並且,如果我們不做單元測試的話,就不能建立回歸測試資產,也就無法進行回歸測試,一旦代碼進行變動,我們就無法復,用這樣會給我們造成無盡的損失。
在有些進行單元測試公司有可能會出現以下問題:
首先程式設計師不願意去做單元測試。雖然程式設計師知道做單元測試有眾多的好處,但是無人願意受約束。最重要的是單元測試需要程式設計師人工的去寫大量的測試用例和測試腳本,在大多數情況下,需要寫的測試腳本量會遠遠的大於原代碼量。這樣就會占用程式設計師大量的時間和精力。還有就是管理層無法對程式設計師的單元測試行為進行管理,因為管理成不可能去逐行的檢查程式設計師的代碼質量,也不能去一個個看他的測試用例和測試腳本。
這樣就會造成很多公司雖然有單元測試這個意識,但做不起來的現象。
AgitarOne的dashboard可以使得整個項目的質量是可見的。這樣管理層就能夠關注到項目的風險,質量的可見使得項目的時間和人員的成本可計算,這樣整個項目就可以預測了。可以有效的降低成本,縮短開發時間。並且每個開發人員的代碼質量都是可見的和可度量的,這樣有助於管理層有效的激勵開發人員。提高軟體的質量。
AgitarOne的Code Rule可以對原始碼進行靜態的規則檢查,Code Rule內部集成了幾百種由主要國際組織定義的代碼規則。找出編寫有缺陷和不合理的代碼。使程式設計師能夠及時修改,提高代碼質量。並且我們可以自己定義一些特殊的檢查規則,Code Rule集成與IDE環境中,使用起來也非常方便。
進行單元測試對於QA人員來說,可以把主要精力放在關注高價值的QA動作上,而不是放在給程式設計師找BUG上。這樣會使得QA的工作更快、更簡單、更有效。
AgitarOne可以自動生成測試代碼,自動生成測試用例,自動進行單元測試。由於AgitarOne得高度自動化,對於開發人員來說他們就有更多的時間去做他們喜歡做得事情,就是創造新的代碼。花更少的時間做他們不喜歡的事情就是返工和BUG修復。
在這裡還要提一下Junit,相信大家做過Java單元測試的人都用過起碼知道Junit,Junit是我們做人工單元測試的一個很流行的方法,它是Agitar的員工Kent Beck發明的一種方法。現在在業界用的人很多。Kent Beck是IT界的傳奇人物,他是極限編程之父,也是敏捷開發浪潮的發起人之一。但是Junit也有一定的局限性,那就是太花時間,我們需要逐個的去為每一個方法的每一個分支去寫測試用例和測試腳本,這樣會花費我們大量的時間,也使得測試變得更加複雜。而且整個過程不可管理。那么AgitarOne的Agitation的好處就是無需我們人工去寫測試腳本也無需我們人工設計測試用例。Junit腳本都是由軟體自動生成的。而且覆蓋率要比我們自己設計要的多。
AgitarOne的Agitation的特點是在整個測試過程中我們無需自己去寫和維護測試腳本,面向對象的測試測面向對象的Java,確保程式做他應該做得動作,及時的給程式設計師關於他所寫代碼的回饋。可以運用MOCK技術有效的測試動態的Java代碼和對外部數據有確切需求的代碼。
目前在中國的單元測試領域,自動化程度還有待提高。新一代的單元測試技術方法還有待普及。AgitarOne在國內真正用起來的人並不多,而研究它的人更是寥寥無幾。但值得欣慰的是,當今已經有機構和組織開始對他進行關注和研究。北京端瑪科技是AgitarOne在中國最權威的機構。如果需要更詳細的資料和諮詢,他們可以代表Agitar公司提供。