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

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

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

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

    C/C++內存問題檢查利器——Purify

    發布: 2009-4-20 17:24 | 作者: 陳皓 | 來源: 測試時代采編 | 查看: 308次 | 進入軟件測試論壇討論

    領測軟件測試網 C/C++內存問題檢查利器——Purify

     

    陳皓

    一、           引言

     

    我們都知道軟件的測試(在以產品為主的軟件公司中叫做QA—Quality Assessment)占了整個軟件工程的30% -50%,但有這么一種說法,即使是最優秀測試專家設計出來的測試案例,也無法徹底地檢測到內存上的問題。  

     

     

    使用C/C++開發的團隊一定有被其內存問題折磨過的經歷,內存問題一直是C/C++開發人員的心頭之痛。特別當程序越來越多時,類的繼承和關聯越來越多時,內存問題也就越來越多,很多時候,開發人員在不經意的時候就帶入了內存問題。這是C/C++世界中很難避免的東西,哪怕是有10年以上開發經驗的老手,也難以避免或是杜絕內存問題。

     

    而且,內存的問題是讓人很難察覺的,特別是對于內存問題排名第一的Memory Leak來說,在幾萬行代碼中出現Memory Leak的機率幾乎是100%,而且要靠一般的手段是很難檢測出這種程序錯誤的。它并不像“野指針”或是“數組越界”那么容易暴露出來(這些會讓程序異常退出,而Memory Leak則不會)。當你發現你的服務器端的程序,每隔一個月(或是更長的時間)就把服務器上的內存全部耗盡時,讓服務器有規律地每過幾個月就當機一次,那么你的程序可能是中了Memory Leak了,同時,你會發現在數十萬行代碼中尋找這種Memory Leak無異于大海撈針。

     

    于是,正如《黑客帝國II》中描述的那樣,當你的程序越來越大,越來越復雜的時候,你會發現程序就越來越不受你的控制,有一些讓你內存出現問題乃至讓你應用程序崩潰的變量,他們生存在系統的邊緣,你怎么找也找不到,這種情況下,除了用程序測試程序,別無其它的方法。對于C/C++內存問題中的Memory Leak這種頂級殺手,那怕最牛的程序員再加上最牛的系統架構師也很難把其找出來,對此,我們只有依靠程序,用程序去尋找這種系統的BUG。這么讓我們事半功倍。

     

    在我們尋求解決內存問題的同時,讓我們所感到幸運的時,目前,已經有許多小的軟件可供我們選擇,如MallocDebug,Valgrind,Kcachegrind,dmalloc,NuMega,BoundsCheck,ParaSoft ,Insure++等等,在這里,我想向大家介紹的是Rational 公司(呵呵,應該是IBM了)的 Purify,這是我覺得最專業,也是最強大的內存檢測工具。

     

    Purify 所支持的操作系統有Windows 2000/XP Professional/NT、Sun Solaris、HP-UX、SGI-IRIX。我不知道其支不支持Linux,但在其網站上,我并沒有看到這樣的信息,但又聽別人說他支持,所以在這里我不敢斷言它不支持,想想要做UNIX下的軟件能有不支持Linux的嗎?可能很少吧。

     

    下面,是我所使用的Purify的版本和運行Purify的操作系統:

     

    > purify -version

    Version 2003.06.00 Solaris 2

     

    > uname -a

    SunOS hostname 5.8 Generic_108528-11 sun4u sparc SUNW,Ultra-60

     

    我會基于這個版本向你介紹Purify的強大功能。

     

     

     

    延伸閱讀

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

    TAG: purify Purify 檢查 利器 內存

    31/3123>

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