軟體測試面試題 自動化(三)

2022-09-13 05:45:12 字數 2746 閱讀 4418

1、介面自動化和web自動化有多少case ?覆蓋率是多少?全部執行完需要多久?

2、介面自動化測試怎麼做? web自動化測試怎麼做?

3、什麼是pom模式?為什麼要使用它?

4、說說你對資料驅動和關鍵字驅動的理解?

5、web自動化測試用例如何設計?如何提高web自動化用例指令碼的穩定性?

6、舉例說明一下你在自動化測試過程中碰到過哪些異常?用到了哪些python庫?

7、自動化測試過程中,你遇到了哪些問題,是如何解決的?

8、在上一家公司做自動化測試用的什麼框架?

9、自動化中有哪三類等待?他們有什麼特點?

10、在執行指令碼過程,如何實現當前元素高亮顯示?

11、在現有基礎上給你乙個新的業務線你是怎麼做介面自動化的?

12、介面自動化測試框架中介面關聯你們是怎麼處理的?

13、requests中的session會話管理的作用是什麼?

14、介面自動化測試中斷言是如何實現的?

15、介面自動化測試框架中動態引數介面,加密介面,簽名接**們是怎麼處理的?

——先執行介面自動化,在執行web自動化,在同乙個自動化框架下實施

——面試官是想要聽具體的細節:

專案組做自動化的可行性分析,自動化率能夠實施到什麼樣的程度,專案時間夠不夠長,至少的是1年以上的專案。

需求會不會頻繁的變更

自動化的指令碼是不是可以持續反覆的使用

自動化的投入產出比是不是符合預期

調研測試團隊對於自動化技術的程度,他們的技術有沒這個能力去做,如果有,一般會伴隨著demo演示【seleium、rf(純關鍵字驅動)、request】

自動化框架的搭建,逐步實施,發現框架的問題進行改善

制定計畫:功能測試中提取或編寫測試用例,由leader編寫自動化框架,組員編寫和除錯自動化測試指令碼,無人值守(jenifer持續整合),指令碼的維護。

基礎封裝層---basepage

po頁面物件層

測試用例層---testcase

使測試用例更簡單、更清晰、不冗餘,把很多的業務操作封裝到po頁面物件層,用例只需要呼叫即可

如果頁面有變動,只需要修改po頁面物件層的屬性即可,增加**的可維護性

一般情況下企業裡面都是:資料驅動 + 關鍵字驅動 一起來使用

用例設計:

自動化用例是從功能測試用例裡面提取出來的,主要提取的是冒煙用例和回歸測試的用例,提取需要遵循以下原則:

(1)優先覆蓋核心功能用例——核心流程用例

(2)盡量不要選複雜的用例(不是主流程的可以不選,核心流程還是需要寫的)

(3)選擇一些重複執行的用例

(4)一般選取正向用例(核心流程中反向用例會選取)

2.如何提高穩定性:

(1)盡量使用相對路徑定位元素

(2)定位元素需要封裝顯示等待(保證元素可正常載入出來)

(3)用例和用例之間盡量避免相互依賴

(4)加入用例失敗重跑機制(pytest)

(5)自動化測試的環境分開其他的環境(是單獨起來,不與開發等環境有參雜)

——前端

elementnotselectableexception :元素不能選擇異常

elementnotvisibleexception :元素不可見異常

nosuchattributeexception :沒有這樣屬性異常

nosuchelementexception:沒有該元素異常

nosuchframeexception :沒有該frame異常

timeoutexception : 超時異常

element not visible at this point :在當前點元素不可見

——介面

indexerror            ---下標越界

typeexception     ---型別異常(如:應該傳入字典,傳入的是字串)

1、webwebdriver、webdriverwait、os、xlrd、xlwt、time、unittest、logging、sys、htmltestrunner

json、jsonpath、yaml、requests、re(正規表示式)、pytest、allure、pymysql

每一次自動化測試的結果會被覆蓋(只會顯示最後一次執行的結果,之前的會被覆蓋)——【更改測試報告名稱,使用time模組加上當前時間】

資料庫校驗(對資料庫結構非常清晰)

python + selenium + unnittest/pytest + ddt/parameters + htmltestrunner/allure + jenkins

rf +selenium2library

執行緒等待:強制等待,建議少用(屬於執行緒休眠,必須等待所定義時間完成後才會繼續執行後邊的指令碼)

隱式等待:全域性的等待,必用(必須等待所有的元素載入完成之後才不會繼續等待,才會繼續執行後邊的**)

通常是【隱式等待】、【顯示等待】結合使用,而【執行緒等待】使用多了,就會是**執行的很慢。

熟悉新的業務線介面業務

熟悉已經搭建好的介面自動化測試框架

在當前的框架裡面加入符合框架的介面自動化用例

根據實際情況可以提出一些對框架改進的建議

功能測試需要寫任何python指令碼,只需要寫yaml格式的測試用例即可實現介面自動化。

自動化測試面試題

4 contains text,登入 是什麼意思 答這是xpath查詢登入按鈕的0分,這是查包含登入關鍵字的所有元素加1分 5 自動化遇到用例fail掉如何排查故障 答 不明白你說的什麼意思0分,沒看出錯log的0分,如果能按層次說清楚排查失敗 手工查應用是否真的有bug,確認不是bug,是不是新版...

自動化測試面試題目

linux linux中如何實現分割槽 a.建立以根目錄為掛在點的分割槽 選中空閒區,點選建立,選擇標準分割槽,點選建立。掛在點選擇 檔案型別選擇ext4 勾選使用全部可用空間,點選確定 b.建立swap分割槽 選中空閒區,點選建立,選擇標準分割槽,點選建立。檔案型別選擇swap交換 大小控制為記憶...

python自動化測試面試題

零基礎轉行測試 631450326第一階段 1 列表與元組的區別 2 http的請求流程是怎麼樣的 3 你怎麼理解token,cookie,session 4 怎麼獲取token,中間會使用到那些思路 5 如果乙個介面存在引數的關聯,怎麼解決,如何實現的 6 乙個ui的定位存在iframe框架,怎麼...