web python selenium自动化面试题_干货分享 | Selenium 自动化测试相关的面试题
網上收集到的一些有關Selenium自動化相關的面試,給出的答案僅供參考。
1.Selenium中用什么函數判斷元素是否存在?
isElementPresent
2.Selenium中hidden或者是display = none的元素是否可以定位到?
不能,可以寫JavaScript將標簽中的hidden先改為0,再定位元素
3.Selenium中如何保證操作元素的成功率?也就是說如何保證我點擊的元素一定是可以點擊的?添加元素智能等待時間 driver.implicitly_wait(30)
添加強制等待時間(比如python中寫 sleep)
try 方式進行 id,name,clas,x path, css selector 不同方式進行定位,如果第一種失敗可以自動嘗試第二種
4.如何提高Selenium腳本的執行速度?
代碼優化
5.用例在運行過程中經常會出現不穩定的情況,也就是說這次可以通過,下次就沒辦法通過了,如何去提升用例的穩定性?time.sleep( )
driver.implicitly_wait(30)
多用 try 捕捉,處理異常
6.你的自動化用例的執行策略是什么?
自動化測試與軟件開發本質上是一樣的,利用自動化測試工具,經過測試需求分析,設計出自動化測試用例,從而搭建自動化測試的框架,設計與編寫自動化腳本,驗證測試腳本的正確性,最終完成自動化測試測試腳本(即主要功能為測試的應用軟件)并輸出測試結果
7.自動化測試的時候是不是需要連接數據庫做數據校驗?
從數據庫層面來進行數據校驗可以更方便驗證系統的數據處理方面是否正確,數據處理邏輯正常后,UI層面上的校驗也是需要做的。
8.id,name,class,xpath, css selector這些屬性,你最偏愛哪一種,為什么?
css 、xpath 幾乎所有的元素都可以定位到,但是它們的短處在于頁面上更改了元素后位置很容易改變,所以首先使用的還是id或者name等。
9.如何去定位頁面上動態加載的元素?
觸發動態加載元素的事件,直至動態元素出現,進行定位
10.如何去定位屬性動態變化的元素?
xpath或者css通過同級、父級、子級進行定位
11.點擊鏈接以后,Selenium是否會自動等待該頁面加載完畢?
會的
12.Webdriver client的原理是什么?
Selenium RC的原理是當瀏覽器啟動時,向其中注入Javascript,從而使這些JS來驅動瀏覽器中的AUT(Application Under Test),而Selenium Webdriver是通過調用瀏覽器原生的自動化API直接驅動瀏覽器
13.Webdriver的協議是什么?
The WebDriver Wire Protocol
14.啟動瀏覽器的時候用到的是哪個Webdriver協議?
http
15.什么是page object設計模式?
簡單來說,就是把頁面作為對象,在使用中傳遞頁面對象,來使用頁面對象中相應的成員或者方法,能更好的體現面向對象語言(比如java或者python)的面向對象和封裝特性。
16.怎樣去選擇一個下拉框中的value=xx的option?
二次定位
17.如何在定位元素后高亮元素(以調試為目的)?
用JavaScript等腳本來重置元素屬性,給定位的元素加背景、邊框
18.什么是斷言?
斷言的英文是assertion,斷言檢查的英文是assertion checking。
斷言是指定一個程序必須已經存在的狀態的一個邏輯表達式,或者一組程序變量在程序執行期間的某個點上必須滿足的條件。
19.如果你進行自動化測試方案的選型,你會選擇哪種語言,java,js,python還是ruby?
人生苦短,我用python
20.自動化測試用例從哪里來?
手工用例中抽取。(可以參考自動化用例的執行策略)
21.你覺得自動化測試最大的缺陷是什么?不穩定
可靠性
不易維護
成本與收益
22.什么是分層測試?
行業里面提的一般是金字塔的分層模型UI測試
集成/接口測試
單元測試
23.Webdriver可以用來做接口測試嗎?
有難度,不推薦
注:本文由蝸牛學院測試導師 CC老師 原創,首發自個人簡書,原文鏈接https://www.jianshu.com/p/0a660c76f881。如需轉載請聯系我方獲得授權并注明出處。
總結
以上是生活随笔為你收集整理的web python selenium自动化面试题_干货分享 | Selenium 自动化测试相关的面试题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 多印钞票会造成什么影响
- 下一篇: 美国股市时间对应中国时间