您好,登錄后才能下訂單哦!
經過一個月的努力,實現一個不熟悉的項目的自動化終于快接近尾聲了。之前知道什么樣的產品或項目適合做自動化,什么樣的產品或項目不適合做自動化;而且由于自己設計過一個給人感覺很高大上的工具,自認為對自動化比較了解。可這一年來經歷過兩個設計不算成功的工具,最近不斷反思,對如何更好的做自動化測試有了點新的感悟: 1. 能用現有的開源工具不要自己從頭開發一套工具。因為開源的工具是經過很多人反復推敲,反復調整過的,無論從穩定性、易用性、還是設計理念上,都會比自己從零開始要優勢得多。 2. 對于不是特別緊急的項目或產品,要對其有一定的了解之后再做自動化,需求不了解是做不出好的自動化工具的。這一年,有兩個自動化測試工具的任務,兩個任務都有一個相同的特點:我對Business不了解。這種情況下做自動化就會有以下幾個問題: 首先,要了解Business,會花費很多時間; 其次,列出功能點,需要做多少功能,擔心做出來的不全,所以把能列出來的都列出來。但是,如果全做了,那這個工具就注定是個失敗的工具。軟件測試中一直遵循著80-20原則,個人認為這個理論也同樣適用于自動化測試,即20%的功能會有80%的人使用的,所以自動化設計時,首先要考慮的是這20%的功能如何先做出來,以及如何讓這20%的功能易用。 第三,即使做出來了,易用性不好。因為使用者的習慣與設計者的習慣往往不同,尤其在設計者對業務和使用者的習慣都不熟的情況下。 3.對于時間要求緊的項目,切記大而全,尤其對項目不了解的情況下。Design會隨著對產品的了解而逐漸改變,逐漸優化的,如果剛開始就大而全,一是無法按時完成;二是后期維護的cost比較高 舉例:這一年來我設計的第一個自動化工具就是UI測試,因為之前的工作經驗,所以我想設計一個比較全面的,一次到位的工具,但其實對于不熟悉的產品,這種想法本身就是錯的;而且自認為當時把驗證結果都整合在一起挺有成就感的,但現在又想做到case,工具與verifyresult分離,之前花了很多時間整合驗證結果做的工作就白做了。 4. 要做到數據,case(尤其case模板化),測試工具、結果驗證的分離,便于后期維護。現在想想,之前的公司其實也是這么做的,但當時只知道效率比較高,還沒理解到這個高度。 5.整合成一個工具雖然重要,但是投入產出比也不容小覷。如果整合的工作量很大,那么不整合也許是最好的選擇,凡事有度,中庸之道值得推薦。 6.個人認為自動化測試最重要的核心是:設計一個高效的自動化框架的能力;開發能力;設計case的能力 |
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。