學自動化測試可以用這幾個練手項目

練手項目的業務邏輯比較簡單,只適合練手,不能代替真實項目。

學習自動化測試最難的是沒有合適的項目練習。 測試本身既要講究科學,又有藝術成分,單單學幾個 api 的調用很難應付工作中具體的問題。

你得知道什麼場景下需要添加顯性等待,什麼時候元素定位需要寫得更加優雅,爲什麼需要斷言這個元素,而不是另一個。你得有合適的頁面控件才能練習某種操作。

現在網上關於練習自動化的文章有很多,但是可以供學習使用的練習項目卻非常稀缺。有的項目操作比較簡單,無法達到練習各種操作的效果。有的項目非常複雜,光熟悉業務就要半個月。

可以說,一個好的練習項目對掌握好自動化測試至關重要。練習項目的業務不應該太複雜,否則我們需要花很多時間理清業務關係。 也不能太簡單,否則我們無法練習到有用的技能。 項目應該儘可能涵蓋較多的知識點,讓我們在學習過程中反覆練習不太熟練的技能, 而且它最好有通用的管理權限,方便我們自己選擇角色等等要求。

我推薦幾個還算不錯的在線練習項目,如果你苦於沒有項目練習,可以去看看。

第一個項目叫 JpetStore, 網址是: https://petstore.octoperf.com/actions/Catalog.action

這是一個電商項目,你可以在網站上購買各種寵物。 常見的電商網站操作在這個項目中都可以找到,比如註冊,登錄,查找商品,選擇商品,添加購物車,下單,查看定位,確認收貨地址等等。

image-20220124173619352

網站需要的個人信息並不需要真實的,付款也不需要真的付錢,並不需要擔心個人信息泄漏等問題。而且這個項目由大名鼎鼎的 mybatis 提供,使用 spring 框架搭建, 很多Java 開源項目都用它來舉例子。

業務簡單,流程清晰,操作類型豐富,幾乎是完美的練習平臺,非常適合練習 web 自動化測試。

第二個項目叫 letcode, 項目地址是 https://letcode.in/test

這是一個網頁 ui 元素展示網站,列舉了幾乎所有流行的網頁控件,如果你正在學 selenium 這樣的框架,那可以趕緊用這個項目練習一下 selenium 的操作方法。比如點擊、拖動、切換等常見的頁面元素,在這個網站上都有現成的控件可以操作。你只需要進入首頁,然後點擊合適的控件,就可以進入這個控件的專題界面。

image-20220124174548661

第三個項目叫 booker, 項目地址是 https://automationintesting.online/#/

它是一個在線預定房間的項目,有點類似攜程、藝龍這樣的網站。你可以在網站上通過滑動選擇房間,然後輸入自己的信息完成房間預定。這個網站使用 RESTful 風格的接口,你可以分析後端接口和前端的交互,對輸入信息的合法性進行校驗, 適合練習前後端交互和聯調。

image-20220124174904916

可能很多人會說:爲什麼不直接用真實項目,而要用這些在線的練習項目。 首先,我還是建議能用真實項目就直接用真實項目,如果沒有再考慮練習項目。 你也可以在學習還不是特別熟練的時候先用練習項目上手, 熟練後再通過真實項目實戰。

練習項目還有一些額外的好處:

  • 沒有對自動化測試工具做攔截和屏蔽,你可以直接上手 selenium 這樣的工具,如果在真實項目中,很有可能被檢測到,禁止通過 selenium 訪問
  • 對個人信息保護更直接。練習項目通過你可以隨意構造自己的身份信息,不用擔心自己的信息泄漏。
  • 用戶交互往往更簡單直接。
  • 質量一般沒有正式項目那麼高,你更容易找到 bug, 有點成就感。

當然它也有明顯的不足:

  • 設計會比較醜,可能會影響你的心情
  • 不支持大規模的併發操作,不然會崩
  • 業務邏輯比較簡單,很難模擬真實的業務複雜度。

總的來說,在沒有正式的項目經驗前,找到一個合適的練手項目,把自己的專業知識轉變成可以應用的技能,還是非常好的。希望對正在學習的同學有幫助,如果你也有很好的練習項目,歡迎和我一起分享。


我是九柄,公衆號【 九柄 】,分享軟件測試文章、面試、教程資料,歡迎來看看。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章