怎樣開始用selenium進行自動化測試(個人總結)

作爲一個之前沒接觸過selenium的新手來說,如果之前有過寫代碼的經驗,那麼學習起來就會更加快速!但無論如何,開始總是比較難的!

我也是從一個接近純24K小白成長起來的,一步一個腳印,在這個過程中我學習到了很多新的知識,有了新的突破,新的成長,不斷地努力,不斷地嘗試,不斷地總結經驗,讓我一直走到了今天,未來,還有很多路要走!義無反顧,我的測試之路!

所以,今天抽空回顧一下我的selenium學習過程,也就是,selenium自動化測試怎麼開始,這些,是我的個人經驗,分享出來給大家參考!

在這裏插入圖片描述

1、一開始,基本上很多人都是用selenium IDE錄製腳本開始的,我也是!有一本書寫得很不錯:selenium初學者指南!So,從錄製回放開始我的selenium,而在這個過程中,不斷地去補充我的html css知識,熟悉selenium的api!

2、慢慢地,發現錄製的腳本在回放的時候經常報錯,通過檢查發現,是定位上的錯誤,導致這種定位的錯誤的最大原因是系統前端採用了某種框架,如tigerUI,exj…所以HTML裏面的標籤很多都是動態的,比如id,class,name!這對selenium操作定位的元素而進行自動化來說是致命傷!

3、所以,開始自己寫定位信息,這已經是必須的了!從而學習了xpth和css選擇器,掌握了更加有效,快速和穩定地定位頁面上的元素(定位的時候難免會碰到有iframe,這就得先切換到iframe中再進行定位了)!也就是,在selenium IDE上寫腳本!

4、信心滿滿地在selenium IDE上寫了長長地一段腳本,並且反覆跑都能成功!總算嚐到了一點點幸福的滋味!然後呢,問題來了,當我要修改和擴展這段的腳本的時候,才發現這效率是相當地低!一句句查!一句句改!多麼痛的領悟!

5、另外,selenium IDE 默認啓動的是火狐,在使用selenium RC 啓動 IE 進行跑腳本時瀏覽器總是會報錯!各種搞不定,各種不淡定!決定放棄使用IDE!

6、selenium有一個強大之處就是支持多種語方:java,C#,python等等,並且可以把錄製的腳本轉換成代碼!我用的是java,果斷走起!

7、不用說,當然是把腳本轉爲java代碼了,在Eclipse中重新開始搞!

8、選擇一個測試框架:有Junit和TestNg兩個選擇,公司用的是junit,所以,不用多說,我就用junit驗證selenium腳本的運行結果!並且,Junit和TestNG都可以生成比較直觀的測試報告!

9、寫好一些代碼,會看到整段代碼中密密麻麻充斥着基本相同的代碼:開始封裝代碼!把常用到API封裝起來!封裝好之後代碼看着就舒服多了!

10、接下來,是不是也應該把代碼中的定位信息用一個專門的文件放起來,再去讀取裏面的定位信息,這樣,維護代碼和維護定位信息就放在了兩個地方,不用老是紮在代碼和定位路徑中,簡單地分一下層!果斷嘗試!

11、到這裏,腳本寫出來了,常用的api封裝起來了,定位路徑分離出來了!整個代碼簡潔多了!寫起來容易和舒服多了!這時候,該個性化定製一下自己的框架了,這裏,就暫時不寫下去了,已經離怎樣開始selenium挺遠的了!或許,到了這一步,你早就有自己對測試框架的想法和對腳本的設計方法了。。。。加油吧,把想法化爲實際的動力,繼續向前!
在這裏插入圖片描述
上面是我收集的一些視頻資源,在這個過程中幫到了我很多。如果你不想再體驗一次自學時找不到資料,沒人解答問題,堅持幾天便放棄的感受的話,可以加入我們扣扣羣【313782132 】,裏面有各種軟件測試資源和技術討論。
在這裏插入圖片描述
當然還有面試,面試一般分爲技術面和hr面,形式的話很少有羣面,少部分企業可能會有一個交叉面,不過總的來說,技術面基本就是考察你的專業技術水平的,hr面的話主要是看這個人的綜合素質以及家庭情況符不符合公司要求,一般來講,技術的話只要通過了技術面hr面基本上是沒有問題(也有少數企業hr面會刷很多人)
我們主要來說技術面,技術面的話主要是考察專業技術知識和水平,上面也是我整理好的精選面試題。

趕快進來學習瞭解與交流吧。