Selenium IDE 自動化測試迷思與錯誤觀念說明

Selenium IDE 自動化測試迷思與錯誤觀念

這篇文章主要說明對於 Selenium IDE 的一些迷思與錯誤觀念的釐清。

在筆者經過與許多研發團隊與相關專業人士的交流,

筆者常遇到對於 Selenium IDE 的迷思與錯誤觀念,

希望藉由這篇文章做一些說明。

Selenium 的測試太耗整體系統資源?

Selenium 的測試方法是最終的 End 2 End Testing。

因為最終會啟動瀏覽器測試,測試的行為接近人使用系統的行為,

因此這樣的測試方式也稱為 End 2 End Testing。

End 2 End Testing 也必須將整個系統整合的測試。

無論用 Selenium與否, End 2 End Testing 是必須的!

在這個前提,我們要思考的是如何有效率的將這個End 2 End 自動化測試做到有效率、有效果!

而不是認為 End 2 End 測試的方式太耗用整體系統資源與環境而不做,或是用 module or unit Testing 取代。

 

為什麼不用 Java 開發就好? 而要用Selenium IDE ?

如果使用 Selenium IDE 可以輔助並且加速整體 end 2 end 的測試開發,

因為Selenium 是可以自動產生 Java Junit 程式碼!

讓我們可以更專注在下列工作上,而不是程式的語法上

  • 測試個案、資料與環境的準備
  • 測試步驟與使用者個案的設計
  • 測試個案如何驗證結果
  • 如何適當的定位網頁元件,降低網頁修改影響測試程式的可能性

 

End2End 測試很容易受到網頁修改影響?

yes. and No. 這個問題主要關係到如何對於網頁元件的定位 Web Locator

當有兩個重複的 Name or 沒有 ID 時,怎麼定位網頁元件呢? 可以另外參考筆者這篇文章。

網站自動化測試程式的網頁元件定位 Xpath

 

Selenium IDE 無法讓CI Trigger?

之所以會這樣認為是因為對於 Selenium IDE 沒有專業深入的了解!

Selenium IDE 是可以透過指令模式啟動與現有的 CI 整合.

 

Selenium IDE 無法執行 IE or Chrome?

同樣的會這樣認為是因為對於 Selenium IDE 沒有專業深入的了解!

重點是要知道哪些情境下可以這樣做哪些情境下會有限制。

 

用Python or Java 寫自動化測試比較專業?

筆者的部落格有超過 100篇 Java/Python的自動化測試程式範例,

筆者建議可以分階段使用

階段1: 使用 Selenium IDE 先快速的完成測試腳本

這個階段注重的是自動化測試腳本的建立。

有效的將測試個案轉化為自動化測試並且自動驗證。

讓自動化測試穩定的執行一段時間

 

階段2: 將 Selenium IDE 轉換為 Java/Python

當自動化測試腳本慢慢建立完成之後,慢慢發現因為 Selenium IDE 所帶來的限制後,

可以考慮將 Selenium IDE 腳本自動轉換為 Java or Python

當然這個步驟(轉換為 Java/Python)不一定需要,如果沒有遇到需要程式才能處理的,

Selenium IDE其實還是可以完成大部分的自動化測試工作。

什麼時候需要用 Java/Python什麼時候使用 Selenium IDE

考驗著對於 Selenium IDE 是否有深入的專業理解。

用 Java or Python 完成自動化測試並沒有比較專業

因為自動化測試的本質是有效率有效果的自動完成品質的驗證!

您說是嗎?

Leave a Reply

Your email address will not be published. Required fields are marked *