<ruby id="rxdll"></ruby><strike id="rxdll"></strike>

    <rp id="rxdll"></rp>
      <del id="rxdll"><meter id="rxdll"></meter></del>
      <pre id="rxdll"><font id="rxdll"></font></pre>
        <pre id="rxdll"></pre>
      <p id="rxdll"><thead id="rxdll"></thead></p><dl id="rxdll"><progress id="rxdll"><form id="rxdll"></form></progress></dl>

      <ol id="rxdll"><thead id="rxdll"><track id="rxdll"></track></thead></ol>
      <i id="rxdll"><dfn id="rxdll"></dfn></i>
      <font id="rxdll"><meter id="rxdll"></meter></font>

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

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

        提高軟件測試用例覆蓋率的分析方法

        發布: 2009-3-04 10:17 | 作者: 不詳 | 來源: 測試時代采編 | 查看: 316次 | 進入軟件測試論壇討論

        領測軟件測試網 開發高質量的測試用例是QA的基本工作。高質量的測試用例是既有高覆蓋性又有高可執行性,當兩者不可兼得時,它有最佳平衡點。本文不討論如何取得最佳平衡,只關注采用何種 分析方法 來提高測試用例的覆蓋率。

            首先來說,分析分為兩個步驟,首先以不同得角度切分系統,使得它成為更簡單得模塊,第二是把不同得模塊想象成一個黑盒子,對這個黑盒子做類似于單元測試得分析。

            1. 從不同得角度把系統分為不同得模塊
            這里存在兩種思路

            對系統進行完整得劃分
            軟件是復雜的。軟件開發者面對這種復雜性采用的經典的方法瀑布模型,也就是從上到下,逐漸細分,大模塊包括小模塊,小模塊包括更小的模塊。對于軟件測試來說,很自然的,我們也可以采用這種方法。但是,這還是遠遠不夠的。我們還要從更多的角度切入系統,從不同的角度把系統切分成一塊一塊的,然后進行測試。

            比如遙控器的例子。我們就可以從下面一些方面來劃分系統
            1)功能。
            這個劃分非常直觀,Spec上肯定會明確指明遙控器假設有3個功能,開關機,+-調臺,+-調音。對每個功能我們測試它能否正常工作。當然我們也會注意到邊界情況:當音量滿的時候,加音量。。。
            2)狀態
            Spec上沒有說明遙控器的狀態,但我們應該能分析得出遙控器有下面的狀態
            關機,開機,正在調臺,正在調音
            現在我們可以列一個matrix,測試在每種狀態下執行上面的任意一種操作系統的反應。注意,這個時候,你就要把你自己當成用戶,因為這些情況都不會在spec里詳細的說明的。比如在關機狀態下調音,竟然開機了。這個顯然就是bug。
            3)按鍵序列
            現在我們走得更遠。我們把遙控器看作具有按鈕得一個玩意兒,然后輸入任意一個序列看是否會出現異常情況,是否會讓程序不正常得工作。這里不需要分任何得分析方法。這是一個很好得切入點。另外一個例子是,在測試web application時,做一個爬蟲程序去點擊頁面上得任何link。

            通過這些不同得劃分,testcase得覆蓋率可以得到有效得提高。

            需要注意一點是,不同得劃分肯定會帶來testcase得冗余。在劃分1)時,有測試開關機得case,在劃分2)時,顯然也會有這樣得case。這是不可避免得,也沒有關系。

            尋找某個特定得切面
            上面得劃分系統可以看作 對整個系統得一種 分離方法,劃分方法得結果是把測試對象分成不同得一塊一塊。而“特定得切面”則只是描述了測試對象得一個面,它不存在劃分系統得問題。還是上面得例子,比如“長按按鈕”就是一個“特定得切面”。

           ”長按Power按鈕“是一個測試得關注點,“長按volumn+”也是這樣得一個關注點,如果在系統中多處存在這樣得相似得關注點,那么就構成了一個面,比如在這里是每個按鈕都存在“長按按鈕”這樣一種可能,那么“長按按鈕”這就可以看作系統得一個切面。對于這樣一個切面,如果把它分散在每個功能測試case里,顯然不是好主意。最好得方法是把它拿出來作為一個單獨得testcase。

           

        延伸閱讀

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

        TAG: 分析方法 覆蓋率 軟件測試

        21/212>

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

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

        国产女主播精品_国产片婬乱18一级毛片视频_国产午夜激无码av毛片不卡_国产精品欧美久久久天天影院
          <ruby id="rxdll"></ruby><strike id="rxdll"></strike>

          <rp id="rxdll"></rp>
            <del id="rxdll"><meter id="rxdll"></meter></del>
            <pre id="rxdll"><font id="rxdll"></font></pre>
              <pre id="rxdll"></pre>
            <p id="rxdll"><thead id="rxdll"></thead></p><dl id="rxdll"><progress id="rxdll"><form id="rxdll"></form></progress></dl>

            <ol id="rxdll"><thead id="rxdll"><track id="rxdll"></track></thead></ol>
            <i id="rxdll"><dfn id="rxdll"></dfn></i>
            <font id="rxdll"><meter id="rxdll"></meter></font>

              <mark id="rxdll"><dfn id="rxdll"></dfn></mark>