自動化測試面試題庫
《常規問題》
1、如何快速深入的瞭解移動網際網路領域的應用 (答案:看http協議 restful api知識 json加1分)
2、對xx應用自己會花多久可以在業務上從入門到精通,說說自己的方法 (答案:看api和資料庫的加1分)
3、如果在沒有QA流程的情況下何開展測試工作(考察對方自管理和對測試流程的掌握)
4、遇到開發不認為是issue的情況下如何處理
5、如果和開發人員發生技術或需求方面的爭論應該如何處理 (考察情商)
6、自己在跨領域轉型後,最想學習哪些方面的基礎技術知識 (例如以前經驗是非移動網際網路領域)
7、打算如何平衡學習、工作、生活,尤其在轉型之際 (例如以前經驗是非移動網際網路領域)
8、如何用自己的長處客服自己的缺點的,舉出例子 (必須要說的出來自己的缺點,考察對自己的認識程度)
《手工測試部分》其實就一個問題:舉出一個有邏輯的測試用例,然後說說自己的功能測試用例 測試思路 觀察點。(舉出來有邏輯的用例加1分,回答分層觀察 前端 api 資料庫變化 的加1分)
《自動化測試》
1、使用什麼測試框架做的上一個專案的自動化測試。(答 appium selenium robtium的0分,答junit testng robotframework的加1分)
2、自己最熟悉哪個庫,如何使用這些庫的,是否做了基於複用的封裝,怎麼考慮的這些封裝(答appium但是隻是羅列指令碼的0分,分別封裝了基礎類例如:等待某元素出現的方法,更方便查詢操作元素的方法,和被測試業務相關的類和方法, 加1分)
3、如何定位app上的元素,使用appium的inspector了嗎在什麼平臺用的(答:手寫xpath的加1分,答在mac上使用inspector的加1分)
4、如何使用xpath定位一個兄弟元素,就是和該元素同屬於一個父親節點的元素,這在很多現實的app中常常遇到。(答 先找到父親,再找到自己的兄弟 加1分)
4、//*[contains(@text,"登入")] 是什麼意思 (答這是xpath查詢登入按鈕的0分,這是查包含登入關鍵字的所有元素加1分)
5、自動化遇到用例fail掉如何排查故障(答:不明白你說的什麼意思0分,沒看出錯log的0分,如果能按層次說清楚排查失敗:手工查應用是否真的有bug, 確認不是bug,是不是新版本引入了新的變更,除錯指令碼看看自己的指令碼是不是因為沒有等待元素出現後就操作了,是不是元素上面有其他元素出現這樣操作是不是操作了其他的元素上了,這樣回答問題的加1分)
6、等待元素出現的這個方法如何實現的(答:不知道這個基礎的0分,用一個迴圈間隔時間去檢查這個元素是否可見,類似這樣回答的加1分)
7、如何在app一個列表的listview中查到自己想要的那個元素(圖片,文字,按鈕)並點選 (答:滾動到並點選0分,因為沒有現成的方法scrollto到那個element的locator,目前app listview中的元素大多是沒有被看到就不會被載入,而且分頁也都是lazyloding)
8.如何在指令碼中組織測試用例,按什麼模式設計(答不瞭解0分,按page設計模式的加1分)
9. 如何測試app正確處理了服務端返回的異常,網路異常 服務異常等,(答 使用mockservice的加1分 )
以上是快速的篩選指令碼,回答的可以不精準,就像我的回答也不是都經得起推敲,但是至少可以看得出來:“求職者是否在自動化測試崗位有實際工作經驗,應用於生產的工作經驗”。
自動化測試面試題2:selenium篇
1、selenium中如何判斷元素是否存在?
2、selenium中hidden或者是display = none的元素是否可以定位到?
3、selenium中如何保證操作元素的成功率?也就是說如何保證我點選的元素一定是可以點選的?
4、如何提高selenium指令碼的執行速度?
5、用例在執行過程中經常會出現不穩定的情況,也就是說這次可以通過,下次就沒辦法通過了,如何去提升用例的穩定性?
6、你的自動化用例的執行策略是什麼?
7、什麼是持續整合?
8、自動化測試的時候是不是需要連線資料庫做資料校驗?
9、id,name,class,xpath, css selector這些屬性,你最偏愛哪一種,為什麼?
10、如何去定位頁面上動態載入的元素?
11、如何去定位屬性動態變化的元素?
12、點選連結以後,selenium是否會自動等待該頁面載入完畢?
13、webdriver client的原理是什麼?
14、webdriver的協議是什麼?
15、啟動瀏覽器的時候用到的是哪個webdriver協議?
16、什麼是page object設計模式?
17、什麼是page factory設計模式?
18、怎樣去選擇一個下拉框中的value=xx的option?
19、如何在定位元素後高亮元素(以除錯為目的)?
20、什麼是斷言?
21、如果你進行自動化測試方案的選型,你會選擇哪種語言,java,js,python還是ruby?
22、page object設定模式中,是否需要在page裡定位的方法中加上斷言?
23、page object設計模式中,如何實現頁面的跳轉?
24、自動化測試用例從哪裡來?
25、你覺得自動化測試最大的缺陷是什麼?
26、什麼是分層測試?
27、webdriver可以用來做介面測試嗎?
28、get和post 的區別?
29、公司內一直在使用的測試系統(B/S架構)突然不能訪問了,需要你進行排查並恢復,說出你的檢查方法
30、分層測試和page object模式有什麼區別?
31、自動化測試和測試自動化的區別?
32、列舉出你熟悉的自動化工具,並說明其實現原理
33、自動化測試的使用場景?
34、什麼是關鍵字驅動?
35、高質量的自動化指令碼應該具有什麼特性?