<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    統計

    留言簿(1)

    DB

    Others

    QA

    Tech Website

    閱讀排行榜

    評論排行榜

    【轉載】自動化測試體系整體解決方案探討

      自動化測試已經越來越深入人心,其重要性也是不言而喻的。性能測試中大規模并發的要求,壓力測試中的大規模壓力的模擬,回歸測試中的大規模測試用例的反復執行都要求實現一個高可用、高可擴展性的自動化測試框架體系。因此,如何在一個開放的框架下,構建一個完整的自動化測試體系是我們需要研究的方向。
      一個完整的自動化測試框架體系包含以下幾個部分:1、自動化測試框架;2、測試腳本以及測試數據管理;3、測試腳本的執行管理系統;4、測試結果的顯示與分析系統。其中最重要的是自動化測試框架部分。
      第一部分,自動化測試框架。自動化測試框架要解決的問題,從本質上來說,是實現分布式資源透明化的過程。由于性能測試、壓力測試的要求,我們往往需要構建一個分布式的測試環境,在這個分布式的測試環境中,我們需要多種測試平臺(例如:多臺windows,多臺linux等)。自動化測試框架的作用就在于將分布式環境中的各種資源變成相應的服務對象。例如一臺windows機器,在自動化測試的框架中,我們看到的將不再是一臺windows機器,而是綁定到某一個IP地址上的一個服務對象。通過這個對象,我們可以通過一個通用的調用方法(本地調用一個遠程提供的方法,需要采用對象映射的技術),告訴這個對象,讓它做我們希望它去做的事情,例如啟動一個指定的測試腳本(這個測試腳本可能是我們日常寫的某一個測試用例,也可能是其他操作)。在自動化測試框架的實現上,其主要是建立了一個以提供服務為主的底層的通訊網絡。而在服務的應用上,我們可以采用插件模式,以及對象映射的技術,可以動態的無限的擴展我們的服務。根據我個人的實踐,STAF + python的開發模式可以很好的實現這個框架。STAF主要構建了一個網絡體系,使得各種機器資源之間可以自由的通訊。而python則可以在STAF的基礎上進行二次開發,可以構建一個動態插入的服務體系。
      第二部分,測試腳本及測試數據的管理。首先要選擇一種合適的自動化腳本語言。一般來說,需要考慮以下幾個方面:(1)高可讀性,(2)無需編譯,(3)可擴展性,(4)強大的第三方支持,尤其是對各種數據源的支持。我們可以采用CVS或者SVN的方式來實現對測試腳本和測試數據的管理。在這里,主要依靠高度組織化的目錄結構來實現,尤其是需要和實際測試過程中的測試套件,測試模塊以及測試用例的組織結構進行匹配,分級管理。形成一個完整的測試腳本和測試用例的資源庫。對于測試腳本的編寫,有一些基本的要求:1、形成一套測試腳本的編寫規范;2、測試腳本采取分層設計思想,持久層(數據資源庫,對象資源庫,統一IO),邏輯層(封裝基本業務邏輯,實現API級調用),腳本層(實現測試用例過程,主要是描述測試步驟)。通過這些,測試工程師編寫測試腳本將會變得十分輕松,測試的效率也會有大幅度的提升,大規模回歸,甚至是在第一輪測試就實現自動化測試也不再是夢想。
      第三部分,測試腳本的執行管理系統。大量的測試腳本編制好了以后,一個很重要的步驟就是大批量的執行這些測試腳本。通過CVS或者SVN的管理,我們生成了一個測試資源庫,一個測試用例將是一個測試腳本。測試腳本執行管理系統的目的,就是要在用戶定制的時間去執行用戶選定的測試用例。測試腳本執行管理系統也應該能動態的追蹤到當前正在運行的任務的狀態,例如執行百分比等等;還可以實現多用戶管理,例如同時執行多個用戶提交的測試需求。同時,測試腳本管理系統還應該實現測試環境自動部署的功能。一般來說,我們在進行大規模的自動化測試之前,需要準確部署測試環境,這里就要求用最新的代碼版本來進行測試。因此,測試環境的自動部署也是很重要的。
      第四部分,測試結果的顯示與分析系統。通過統一的IO調用,我們可以將測試過程中產生的錯誤信息,日志信息,以及測試結果動態的放到我們想要存放的地方。測試結果的顯示與分析系統正是基于這些數據進行處理的系統。每一個測試用例在執行的過程中,需要輸出大量的日志信息,這些日志信息是非常重要的。通常,我們判斷一個測試用例執行結束以后,是否有Bug,常常需要深入分析這些日志信息。在測試用例執行的過程中,不光要打印相關的測試數據,實際獲取到的數據,還要打印相應的測試步驟,這樣才便于對測試結果進行分析。至于顯示系統,主要是對測試結果的一個分類檢索功能,可以生成各類報表,例如,一個300個測試用例的模塊中有多少通過的,有多少是失敗的等等。有一個基本原則是很重要的,自動化測試不是為了自動化,而是為了發現Bug。如果自動化測試不能發現Bug,那么花費大量的人力物力實現自動化,也是沒有什么實際意義的。因此,深入收集測試用例執行的過程中產生的各種信息是非常重要的。個人的實踐經驗表明,這些信息對于發現Bug起著至關重要的作用(測試步驟的描述也不容忽視)。
      自動化測試體系不是一個工具,一種自動化測試腳本語言就可以實現的。它需要一個完整的解決方案才能實現。個人的實踐經驗表明,自動化測試框架的引入、強大的資源整合能力和有效的自動化測試體系的設計將是實現自動化測試的十分重要的因素。

    轉處:http://www.51testing.com/html/75/n-107675.html

     

     

    posted on 2011-08-30 18:59 XXXXXX 閱讀(349) 評論(0)  編輯  收藏 所屬分類: Software Testing

    主站蜘蛛池模板: 免费在线观看一区| 四虎免费永久在线播放| 中文字幕不卡免费高清视频| 亚洲精品中文字幕无乱码麻豆| 日韩va亚洲va欧洲va国产| 亚洲国产专区一区| 毛片免费在线观看网站| h片在线免费观看| 国产真人无码作爱视频免费| 国产AV日韩A∨亚洲AV电影| 亚洲日韩乱码中文字幕| 亚洲精品国产电影午夜| 亚洲AV永久无码精品水牛影视| 亚洲国产精品人人做人人爽| 国产精品二区三区免费播放心 | 免费在线视频一区| 女人被男人躁的女爽免费视频| 91禁漫免费进入| 久久国产精品免费观看| 免费在线看黄网站| 一个人免费视频在线观看www| 国产伦精品一区二区免费| 国产福利在线观看永久免费| 污视频网站在线免费看| 特黄aa级毛片免费视频播放| 亚洲av永久无码一区二区三区| 亚洲精品色播一区二区| 亚洲日韩一区精品射精| 日本亚洲高清乱码中文在线观看| 亚洲a无码综合a国产av中文| 精品亚洲国产成人av| 国产偷国产偷亚洲高清人| 日韩精品无码免费视频| 一级a性色生活片久久无少妇一级婬片免费放| 理论亚洲区美一区二区三区| 在线观看亚洲免费| 精品无码国产污污污免费网站国产| 一级黄色免费毛片| AAA日本高清在线播放免费观看| 日韩免费高清播放器| 久久免费福利视频|