Selenium(Webdriver)自動化測試常問問題

來源:互聯網
上載者:User

標籤:測試案例   多線程   方法   查看   控制   常見   人工   內容   執行順序   

http://blog.sina.com.cn/s/blog_c189e2590102w3bv.html

Selenium(Webdriver)自動化測試常問問題

(1)selenium中如何保證操作元素的成功率?也就是說如何保證我點擊的元素一定是可以點擊的?
答:Selenium保證元素成功率是通過元素的定位,當然它的定位方法很多,一定能有合適的。但是在自動化工程的實施過程中,高品質的自動化測試不是只有測試人員保證的。需要開發人員規範開發習慣,如給頁面元素加上唯一的name,id等,這樣就能大大地提高元素定位的準確性。當然如果開發人員開發不規範,我們在定位元素的時候盡量使用相對位址定位,這樣能減少元素定位受頁面變化的影響。只要我們元素定位準確,就能保證我的每一個操作符合我的預期。

(2)如何提高selenium指令碼的執行速度?
答:Selenium指令碼的執行速度受多方面因素的影響,如網速,操作步驟的繁瑣程度,頁面載入的速度,以及我們在指令碼中設定的等待時間,運行指令碼的線程數等。所以不能單方面追求運行速度的,要確保穩定性,能穩定地實現迴歸測試才是關鍵。
我們可以從以下幾個方面來提高速度:
一,減少操作步驟,如經過三四步才能開啟我們要測試的頁面的話,我們就可以直接通過網址來開啟,減少不必要的操作。
二,中斷頁面載入,如果頁面載入的內容過多,我們可以查看一下載入慢的原因,如果載入的內容不影響我們測試,就設定逾時時間,中斷頁面載入。
三,在設定等待時間的時候,可以sleep固定的時間,也可以檢測某個元素出現後中斷等待也可以提高速度。
四,配置testNG實現多線程。在編寫測試案例的時候,一定要實現松耦合,然後在伺服器允許的情況下,盡量設定多線程運行,提高執行速度。

(3)用例在運行過程中經常會出現不穩定的情況,也就是說這次可以通過,下次就沒辦法通過了,如何去提升用例的穩定性?
答:此時我們要分析出不穩定的原因,然後有針對性的去解決問題。主要有以下幾個方面 :
一,網速問題:有的時候網頁載入的比較慢,在程式執行的時候要操作的元素沒有顯示出來。這種情況比較常見,運行一次網速好的時候通過了,再運行一次,頁面沒有開啟,就不通過了。為了提高穩定性,我們只能犧牲已耗用時間了,在經常檢測失敗的元素前加上等待時間,等要操作的元素出現之後再執行下面的操作。
二,Selelnium的原因:Selenium1.0和2.0還是有區別的,有些兒函數在2.0下運行確實有時而有效,時面無效。如果mouseover()函數,就是這種情況, 我們需要避免使用這類的函數。
三,多線程的時候,測試案例間相互影響。雖然多線程的時候運行速度比較快,但是如果用例之間的耦合性沒有設計好,也會影響的,如果用例A先於用例B執行的時候,就會影響到用例B;反之則沒有問題。這種情況,如果你的自動化測試工程打算多線程的時候,提前就要把測試案例測試的耦合度比較松,盡量沒有任何關係,因為多線程的執行順序是不受控制的。

(4)你的自動化用例的執行策略是什嗎?
答:自動化測試案例的執行策略是要看自動化測試的目的,通常有如下幾種策略:
一,自動化測試案例是用來監控的,在此目的下,我們就把自動化測試案例設定成定時執行的,如果每五分鐘或是一個小時執行一次,在jenkins上建立一個定時任務即可。
二,必須迴歸的用例。有些兒測試案例,如BVT測試案例,我們在公司產品任何變動上線之前都需要迴歸執行。那我們就把測試案例設定成觸發式執行,在jenkins上將我們的自動化測試工作綁定到開發的build任務上。當開發人員在模擬環境上部代碼的時候,我們的自動化測試案例就會被觸發執行。
三,不需要經常執行的測試案例。像全量測試案例,我們沒有必要一直迴歸執行,必竟還是有時間消耗的,有些非主要業務線也不需要時時迴歸。這類測試案例我們就採用人工執行,在jenkins建立一個任務,需要執行的時候人工去構建即可。

Selenium(Webdriver)自動化測試常問問題

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.