1. 您現在的位置:首頁技術文章

      UI自動化常見精華面試題整理 --皇家娱乐

      1、基於Web端如何做自動化測試,談談你的思路和方向?
      Web端的自動化測試,基本就是模擬手工測試人員來做功能測試。用機器的自動執行代替人的操作。web端呈現的產品有兩個方向可以做自動化測試:接口層和界面操作層,且接口層自動化的比例要高於界面操作層。主要對產品穩定的功能進行自動化測試,主要用於產品的核心功能冒煙測試、迴歸測試。從系統最核心的功能開始做,再根據情況慢慢展開。

      青島UI培訓--皇家娱乐

      2、UI自動化測試用例如何設計?
      UI自動化測試用例是從手工測試用例中提取出來的,跟手工測試用例相比,自動化測試用例更加註重用例的嚴謹性,選擇用例的時候遵循以下原則:
      優先選取覆蓋產品核心功能的用例;
      從成本考量,不要選擇流程過於複雜的用例;
      選取的用例可以是重複執行,繁瑣的部分,比如字段驗證、提示信息驗證;
      優先實現正向的測試用例,反向用例一般情況複雜、數量多;

       青島UI培訓--皇家娱乐

      3、什麼是PO模式?
      PO模式,全稱爲Page Object Model ,簡稱POM,是頁面對象模式。對頁面進行抽象或者說建模的過程,是把一個具體的頁面轉化爲編程語言當中的一個對象,頁面特性轉化成對象屬性,頁面操作轉化爲對象方法。把頁面的一個個的web元素設計爲頁面對象的屬性,把頁面上的操作(如點擊、輸入等)設計爲頁面對象的行爲。在自動化測試當中,主要用來實現對頁面操作和測試邏輯的一個分離,這樣做的好處是業務和實現分開,使自動化測試腳本具備更高的可維護性。

      青島UI培訓--皇家娱乐

      4、你認爲PO模式的封裝原則有哪些?
      公共方法表示頁面提供的一個服務,比如我們可以把登錄封裝成一個 login 方法,把搜索方法封裝成一個設施方法,把註冊操作封裝成一個 register 的方法;
      儘量不要暴露頁面的內部,比如一個HTML的頁面還有一個頁面的上下結構;
      在 PO 當中一般不做斷言,會做到頁面邏輯和測試邏輯的分離;
      PO 一般裏面的方法返回 self 或者是其他的 Page Object ,也可以是一個元素屬性;
      整個 PO 不需要封裝整個頁面的行爲,用到什麼邏輯就封裝什麼;
      對於統一操作,如果出現不同的結果,可以把用不同的方法來表示,比如說登錄成功有跳轉,登錄失敗有報錯,如果登錄還有一種會授權的狀況,那麼可以封裝成三個單獨的方法:login success、login error、login invalid。

      青島UI培訓--皇家娱乐

      5、你怎麼提高UI自動化腳本的穩定性?
      儘量用相對路徑的xpath表達式;
      查找元素優先用顯示等待;
      用例與用例之間儘量避免產生依賴,用例可以獨立執行;
      用例執行結束後對測試場景進行還原,避免影響其他用例的執行;
      腳本執行失敗後加入重試機制,提升用例的穩定性;
      儘量保證單獨的測試環境,避免其他的測試同步進行;

      青島UI培訓--皇家娱乐

      6、UI 自動化測試中,如何做集羣?
      Selenium Grid,分佈式執行用例;
      你對Selenium Grid有什麼瞭解?它提供了什麼功能?
      A:Selenium Grid是一款利用現有計算基礎架構大幅加速Web應用程序功能測試的工具。
      允許測試者輕鬆地在多臺機器上並行運行多個測試,並且可以在異構環境中運行。
      基於優秀的Selenium Web測試工具,Selenium Grid允許測試者並行運行多個Selenium Remote Control實例。
      更好的是,它集成顯示所有Selenium遠程控制,所以不必擔心實際的基礎設施。
      Selenium Grid將運行Selenium測試套件所需的時間,縮短到Selenium實例的單個實例運行時間的一小點。

      青島UI培訓--皇家娱乐

      7、簡述你所知道的延時等待方式?
      強制等待:也叫線程等待, 通過線程休眠的方式完成的等待,如等待5秒: Thread sleep(5000),一般情況下不太使用強制等待,主要應用的場景在於不同系統交互的地方。
      隱式等待:通過implicitly Wait完成的延時等待,注意這種是針對全局設置的等待,如設置超時時間爲10秒,使用了implicitlyWait後,如果第一次沒有找到元素,會在10秒之內不斷循環去找元素,如果超過10秒還沒有找到,則拋出異常,硬式等待比較智能,它可以通過全局配置,但是隻能用於元素定位。
      顯式等待:也稱爲智能等待,針對指定元素定位指定等待時間,在指定時間範圍內進行元素查找,找到元素則直接返回,如果在超時還沒有找到元素,則拋出異常,顯示等待是 selenium 當中比較靈活的一種等待方式,他的實現原理其實是通過 while 循環不停的嘗試需要進行的操作。

      【關鍵詞:青島UI培訓,專業UI設計培訓,學UI設計多少錢,UI培訓哪家好,皇家娱乐】

       st_bottom
      青島Java培訓,青島HTML5培訓,青島UI培訓,青島web開發培訓,青島IT培訓,java培訓,ui培訓,HTML5培訓,java就業培訓,專業ui設計,web開發培訓,IT培訓,思途教育,青島思途,皇家娱乐
      Copyright © 青島思途共享科技信息服務有限公司 魯ICP備14027489號-2

      魯公網安備 37021402000988號

      青島Java培訓,青島HTML5培訓,青島UI培訓,青島web開發培訓,青島IT培訓,java培訓,ui培訓,HTML5培訓,java就業培訓,專業ui設計,web開發培訓,IT培訓,思途教育,青島思途,皇家娱乐