題外話:休息了一段時間,重新回到工作,就回到自動化腳本的編寫,依然是Xpath和Selenium,遇到一些新的問題,把解決方案記錄一下。
頁面元素抓取技巧
1. 抓取出現時間較短,會消失的元素
例如刷新元素通常出現時間在1s左右很難用普通方法抓取
利用Chrome瀏覽器的F12開發者-Source-Pause script execution,將頁面暫停
這樣就可以方便的定位刷新的元素
2. 抓取鼠標點擊后就會消失的元素
例如檢索式選擇框,當鼠標點擊了其他位置,下拉框就會消失
利用F12箭頭的快捷鍵 Ctrl+Shift+c 就可以實現在下拉框出現的時候獲取元素
寫元素Xpath的技巧
1. 利用元素的text查找元素
//a[text()="XPath 節點"]
2.查找svg元素
svg元素不能用svg[@id = "xxx"]的方式來定位
//*[name()="svg"]
3.利用contains來模糊匹配屬性或者text
//div[contains(@class,"xxxx")]
//div[contains(text(),"xxxx")]
UI 自動化測試設計的一些方法
1.不重復造車輪,造成代碼的冗余
2.一個腳本檢查點不要太多,這樣不易讀且通過率低,簡化一個測試腳本的檢查點,更單一的功能檢查更容易定位問題,也可提高整理通過率
3.盡量不要用sleep的等待方式,用sleep也不要用太長的時間,容易降低效率,盡量利用一些顯式或者隱式等待
4.測試數據精簡,且測試數據需要與腳本分離
5.IE瀏覽器即將retired,開發UI測試腳本盡量使用Chrome
參考文檔:
F12捕捉會消失的元素:https://blog.csdn.net/qq_40257538/article/details/103701390
鼠標懸停元素:https://blog.csdn.net/joker_zsl/article/details/106801165
定位閃現元素:https://www.jianshu.com/p/847cc7ec6ee1
CSSSelector常用定位方法總結:https://blog.csdn.net/hou_angela/article/details/80519718