摘要:為了構建可伸縮的測試自動化框架,需要記住以下三個最重要的干凈編碼實踐。因此,組織期望其或測試自動化架構師設計和開發健壯,可維護的智能測試自動化框架。包括適當的文檔在測試自動化框架開發項目中工作的程序員不太可能獨自編寫代碼。
許多組織都希望通過設計和開發測試自動化框架來擴展他們的自動化能力。然而,我們經常放棄良好的編碼實踐,而傾向于盡可能快地工作。我們需要像對待其他應用程序開發項目一樣對待這個項目。為了構建可伸縮的測試自動化框架,需要記住以下三個最重要的干凈編碼實踐。
作為測試或SDET軟件開發工程師,我可以參與軟件及其測試的開發。 看到當今有多少軟件組織將測試自動化作為他們的敏捷和DevOps旅程的一部分,這讓我感到非常著迷和激動。
正如我所看到的,自動化測試不再只是一種探索的選擇,而是必不可少的。 而且這種趨勢將繼續上升。 在產品生命周期中進行自動化的早期測試并經常進行自動化測試,不僅有助于我們更快地發現錯誤,而且在很大程度上節省了時間和成本。 因此,組織期望其SDET或測試自動化架構師設計和開發健壯,可維護的智能測試自動化框架。
但是,由于缺乏遠見,許多自動化測試計劃都失敗了。 SDET需要自問,我正在開發的測試自動化框架是否可重用,可維護,可配置,可理解和可擴展?
通常,無論何時要求我們從頭開始實施框架或適應現有框架中的新要求(有時在很短的時間范圍內),為了快速實施更改,我們都會忘記考慮最佳方案編碼慣例或最簡潔的編碼方法。 我們會在沒有任何適當文檔的情況下盡快進行更改。
結果,更改被合并到主分支,隨著框架的增長,這在其他團隊成員中也成為一種常見的實踐。當需要擴展自動化框架以覆蓋更多的項目,需要添加更多的功能,或者從框架中使用的工具遷移到新工具時,它將成為整個團隊的巨額技術債務。這導致團隊不得不花費更多的時間來理解和調試代碼,并由于糟糕的設計和持久的反模式而進行更多的返工。
在開發自動化框架時,我們需要像對待其他任何應用程序開發項目一樣對待它,并將其代碼編寫為生產代碼。
為了構建一個可伸縮的測試自動化框架,我們需要記住這三個最重要的干凈的編碼實踐。
在測試自動化框架開發項目中工作的程序員不太可能獨自編寫代碼。在一個由多人添加和更新自動化代碼的環境中,包括適當的文檔不僅可以幫助您組織自己的代碼,還可以幫助您的同事理解您的代碼實際上想要表達的內容。稍后,如果您離開團隊,或者有人想要使用您的代碼添加功能,那么他們可以很容易地調試、更新、執行單元測試和分析結果。
在我之前的一個項目中,我的同事收到了一個要求,要求將一個新的測試管理工具集成到一個已經有另一個測試管理工具的測試自動化框架中。盡管新實現簡單而直接,但他花了大量時間來調試和理解如何將現有工具集成到框架中,這都是因為缺少注釋、文檔和一致的命名約定。
假設一個項目團隊要求您使用您的框架添加一個新功能,該功能將允許他們測試web服務并生成報告。在web服務編碼部分完成之后,現在您正在考慮編寫代碼來生成報告。但在此之前,您是否考慮過框架當前的報告功能將能夠處理此需求的可能性?如果沒有,那么您就設置了代碼復制的情況。
隨著框架的增長,不必要的代碼重復將導致更多的返工,維護成本將開始增加。在一個地方修復報告生成代碼中的錯誤要比遍歷整個框架、調試和修改代碼要容易得多。
編碼時,盡量不要使事情復雜化。 使其盡可能簡單(易讀)!
我已經觀察到,許多經驗豐富的新手都喜歡在類或函數級別添加代碼。 如果您要在功能級別上編寫三百行代碼,那么您可能正在穿越危險區域,在該區域中,代碼的易懂性和質量開始崩潰。 同樣,如果您的類由三十個方法組成,則可能不是出于單一目的,而是需要細分為較小的類,并且,如果需要,這些類需要分組在不同的程序包中。
我注意到許多程序員,無論是有經驗的還是新手,都不斷地在類或函數級別上添加代碼,而沒有完全理解類或函數最初應該傳達的信息。如果您在功能級別上編寫了300行代碼,那么您可能正在穿越危險區域,在該區域中,代碼的易懂性和質量開始崩潰。 同樣,如果您的類由三十個方法組成,則可能不是出于單一目的,而是需要細分為較小的類,并且,如果需要,這些類需要分組在不同的程序包中。
您的代碼應嚴格遵守“ 單一職責原則” ,該 原則 規定,每個模塊,功能或類都應對軟件功能的單個部分負責。 稍后,如果您有測試特定功能的新要求,則將預先了解將受到影響的程序包,類,模塊和功能。
當我成長為熱愛自動化的SDET時,我意識到,當您在框架團隊中工作時,不僅要取用不同團隊的需求并使它們工作。 我們還需要從一開始就考慮干凈的編碼原則。
最好檢查彼此的代碼,并確保在批準和合并代碼之前遵循了最佳編程實踐。 這樣,我們將為可擴展和可維護的健壯框架奠定基礎。
以上筆者的經歷更像一張橫向的知識網,創建了一個交流平臺 914172719 ,群內有各種技術同行交流、學習資料、面試經驗等。其中用到jenkins、docker、moutebank、python編程等,還需要花更多的精力去深入學習,當每項技能都能掌握到一定深度,才能稱為一個完整的知識體系。
最后: 可以關注公眾號:傷心的辣條 ! 進去有許多資料共享!資料都是面試時面試官必問的知識點,也包括了很多測試行業常見知識,其中包括了有基礎知識、Linux必備、Shell、互聯網程序原理、Mysql數據庫、抓包工具專題、接口測試工具、測試進階-Python編程、Web自動化測試、APP自動化測試、接口自動化測試、測試高級持續集成、測試架構開發測試框架、性能測試、安全測試等。
如果我的博客對你有幫助、如果你喜歡我的博客內容,請 “點贊” “評論” “收藏” 一鍵三連哦!
轉行面試,跳槽面試,軟件測試人員都必須知道的這幾種面試技巧!
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/119152.html
某熊的技術之路指北 ? 當我們站在技術之路的原點,未來可能充滿了迷茫,也存在著很多不同的可能;我們可能成為 Web/(大)前端/終端工程師、服務端架構工程師、測試/運維/安全工程師等質量保障、可用性保障相關的工程師、大數據/云計算/虛擬化工程師、算法工程師、產品經理等等某個或者某幾個角色。某熊的技術之路系列文章/書籍/視頻/代碼即是筆者蹣跚行進于這條路上的點滴印記,包含了筆者作為程序員的技術視野、...
摘要:十年鏟碼,八大體系超千篇數百萬字技術筆記系列匯總悅享版十年鏟碼兩茫茫,縱思量,卻易忘不覺筆者步入程序員已有十年。十年之期,正巧筆者從阿里離開,重回打印制造業的懷抱,希望能依托于設備優勢逐步真正構建分布式制造網絡。 showImg(https://segmentfault.com/img/remote/1460000020151971); 十年鏟碼,八大體系超千篇數百萬字技術筆記系列匯總...
閱讀 2839·2021-09-28 09:45
閱讀 1511·2021-09-26 10:13
閱讀 908·2021-09-04 16:45
閱讀 3669·2021-08-18 10:21
閱讀 1094·2019-08-29 15:07
閱讀 2638·2019-08-29 14:10
閱讀 3151·2019-08-29 13:02
閱讀 2468·2019-08-29 12:31