(1)什麼是自動化測試框架

什麼是自動化測試框架

 一、先了解一下什麼是框架

  特指爲解決一個開放性問題而設計的具有一定約束性的支撐結構。在此結構上可以根據具體問題擴展、安插更多的組成部分,從而更迅速和方便地構建完整的解決問題的方案。框架是整個或部分系統的可重用設計,表現爲一組抽象構件及構件實例間交互的方法。也就是說框架本身不解決特定的問題,它是通過擴展的各種組件或者工具來解決問題,並且它可以方便的添加或者修改部分組件的功能。

二、什麼是自動化測試框架

  什麼是自動化測試框架,我們拆分來看的話,其實就是三個方面,自動化、測試、框架,什麼是框架上面說了,還有就是他能執行測試,而且還是自動化的,所以框架的各個組件的主要功能就是圍繞着如何自動化如何執行測試展開的。
  這裏可以把框架的各個功能稱作模塊,那我們來看看都需要那些模塊:
1)需要一個基礎模塊,主要是怎麼實現腳本編寫
2)管理模塊,主要的行爲是持續集成,定時執行、case管理
3)統計模塊,主要是發送測試報告,統計分析。
那總結一下自動化測試框架的定義就是:把在自動化測試過程中用到的一些功能或者工具,分裝成各個模塊,包括如何進行自動化腳本編寫以及分層功能的基礎模塊,進行持續集成、定時任務的管理模塊,發送測試報告、進行測試結果統計分析的統計模塊等,將這些模塊組成一套可重用的骨架
 

自動化測試框架的設計原則

  • 通用性:能夠在各種各樣的系統和平臺都能夠使用
  • 易維護性:能夠把我們的數據、用例、框架的實現進行獨立的維護,能夠在實現完善的過程,快速的定義到維護的點,而不對框架的其他功能造成影響
  • 定時處理:能夠在指定的時間執行
  • 持續集成:當被測程序和測試代碼有更新能夠自動執行
  • 調試:可調試行強
  • 測試結果:測試報告、測試數據的統計分析
  

一、框架的設計思想

  可以把自動化測試框架主體分爲兩部分,一個是內部框架,一個是外部框架,內部框架就是我們自己實現的測試框架代碼,外部框架就是拋開我們實現的核心代碼,要達到自動化測試框架設計原的一些內容時用到的一些第三方工具。
  外部框架
  主要是指以webdriver爲核心,輔以外部第三放框架和工具。用以實現持續集成、自動部署、腳本執行、遠程調用、報告優化、郵件發送導等功能性框架,實現自動化框架設計原則的一些外圍的組件。
  內部框架
  也就是分層框架,目的在於更好的優化和管理測試用例,更便捷的進行數據、元素、腳本的維護和更快速的創建新腳本
  自動化測試框架設計思路
  通用的外部框架實現邏輯
  maven或者tox-自動編譯,執行TestNG或junit,集成郵件發送等
  TestNG或Junit、pytest,調用webdriver或者發送請求的方法,執行自動化測試用例,規範自動化測試腳本
  selenium腳本或者接口用例腳本
  reportNG或者allure報告優化模板
  main 自動以html郵件通知或者Jenkins發送郵件
 

二、內部框架

  層架框架-也就是代碼結構優化,根據具體的業務和需求可以大致分爲以下幾層,有時並不需要下面所有的層次,選取合適自己業務測試的就行。
  TestCase層,執行的用例腳本
  Task層,公共業務分裝,是其他的項目不需要的,只和當前項目相關,比如公共登陸、搜索等業務
  utils層:與業務無關的方法,比如數據驅動-也就進行數據文件的讀寫、瀏覽器操作、元素定位方法等進行封裝
  page層或po層:頁面層,頁面層主要維護某一個頁面的所有元素,對頁面的操作、對元素的操作以及和其他頁面的交互,業務其實就是一個元素到另一個元素或者一個頁面到另一個頁面,這就和task層有點重複一般有一個就可以了。
  element層:公共元素或者組件的維護,或者自定義組件封裝
  data層:數據存儲
  properties層:配置文件、全局變量
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章