• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    功能測試自動化的投入和產出

    發布: 2007-4-22 17:41 | 作者: 未知    | 來源: 網絡     | 查看: 71次 | 進入軟件測試論壇討論

    領測軟件測試網
       測試自動化,對于系統性能測試、負載測試等效果是明顯的,而且我們也不得不為之。我們知道,沒有測試工具進行負載模擬,要通過手工測試完成系統測試任務,幾乎是不可能的。但在功能測試中,情況就大不一樣了。

        手工測試在功能測試中的優勢還是比較大的,我在“測試方法的辯證統一(之二)”已做了討論,工具本身并沒有想象力和靈活性,而人對界面美觀性、邏輯合理性,容易作出判斷。所以功能測試自動化主要的應用在回歸測試中,而且產品的界面(UI)和功能變化較大,自動化的腳本(Script)維護成本較大,投入和產出往往變成我們最關心的問題,在功能測試中實現測試自動化究竟是否合算?

    舉個例子:假如一個功能測試用例,手工運行需要10分鐘,而為此測試用例開發腳本需要4個小時,即240分鐘,那么意味著這個測試腳本要被運行24次收回成本,如果在加上測試腳本的維護工作量(10%),需要重復運行40-50次,才收回成本。如果在產品的一個版本中要進行2-3輪測試(一般是需要的),這個產品需要發布15-20個版本才收回成本。所以業界常說,產品發布7個版本才收回成本。

        如何降低成本、可以相對增加產出或者說更快地收回成本?關鍵是提高腳本開發速度、提高腳本運行的穩定性和降低維護腳本的工作量,主要方法有:
        - 選擇較好的、更適合的測試工具
        - 選擇適宜自動化的模塊
        - 盡量將腳本寫成數據驅動的腳本,這一點很重要。
        - 多錄制腳本,然后結構化腳本。我們知道,不是所有的模塊都可以變為數據驅動方式,這時就要抽象出腳本的結構,進行有效的組合,包括分層,形成有效的層次性。
        - 測試和腳本開發合二為一,效率更明顯

    下表也部分說明了這個問題。也希望得到您更好的想法。

    MILY: 宋體">結構
    成本
    收益
    凈收益
    No Automation
    0
    0
    0
    Recording and Playback
    8.3
    11
    2.7
    Data-driven structure using data pools
    8.4
    18
    9.6
    Framework structure
    9.8
    15
    5.2
    Framework / data-driven (hybrid) structure focusing on views of the application and using data pools
    11.6
    19
    7.4

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>