双赢娱乐

如何保障軟件測試充分性之邏輯覆蓋率統計

首頁    產品宣傳    如何保障軟件測試充分性之邏輯覆蓋率統計


軟件測試充分性這一概念是Goodenough和Gerhart于1975年在研究軟件測試是否能夠保證軟件的正確性時引入的。此后,軟件測試充分性的研究成為軟件測試的研究焦點之一。

我們在做系統級測試、功能測試、黑盒測試的過程中,測試用例設計是否充分?所有測試用例執行完是否覆蓋到了所有有效代碼?關鍵函數、功能點是否有未覆蓋到的邏輯、分支?這些未知都導致測試人員不敢確定自己的測試是完全充分的,而代碼邏輯覆蓋率是用來確定測試充分性的唯一可靠度量指標。這是一種最可操作、最容易起步的方法,而且在一些軟件開發工程化文件和軟件研制任務書中,通常會對邏輯覆蓋率提出明確的要求,它可以讓測試人員清晰的了解到每一條測試用例覆蓋了哪些代碼,還有哪些代碼未被覆蓋到。目前很多海軍裝備項目都明確要求要做系統級、配置項級的邏輯覆蓋率測試,以保證測試的充分性。

在這樣的情況下,選用合適的邏輯覆蓋測試與統計工具,就成為開展邏輯覆蓋測試、提高測試用例邏輯覆蓋率的前提條件。


邏輯覆蓋



邏輯覆蓋,就是以程序內部的邏輯結構為基礎,設計若干測試用例,使程序用這些測試用例運行時,能執行(或叫覆蓋)程序中的每個語句/分支/條件/路徑/子程序調用等等.

根據覆蓋測試的目標不同,邏輯覆蓋率測試可分為語句覆蓋、判定覆蓋、條件覆蓋、判定-條件覆蓋、條件組合覆蓋、路徑覆蓋、子過程調用覆蓋等。

語句覆蓋,就是選擇足夠的測試用例,使得被測程序中的每個語句至少執行一次;判定覆蓋,又叫分支覆蓋,則要求程序中每個判定的每個可能的結果都應該至少執行一次;條件覆蓋,則要求程序中每個判定的每個條件的所的可能值至少執行一次;判定-條件覆蓋,則要求程序中每個判定的每個條件的所有可能值至少執行一次,而且每個判定的所有可能判斷結果至少執行一次;條件組合覆蓋,則要求每個判斷表達式中條件的各種可能組合都至少出現一次;路徑覆蓋,則要求程序的每條可能路徑都至少執行一次(如果程序中有環,則要求每個環至少經過一次);子過程調用覆蓋,則要求程序中每個調用子過程的地方都至少被執行一次。


邏輯覆蓋測試與統計工具



邏輯覆蓋測試通常需要邏輯覆蓋測試工具來支持。邏輯覆蓋測試工具通常是一種白盒測試工具。從覆蓋測試的原理來看,覆蓋測試工具要對被測程序進行插樁。工具在對被測程序進行語法分析的基礎上,建立一系列表格,從源程序中按順序定位出每個覆蓋目標(如語句、分支、子過程調用等)。然后在目標處插入插樁語句(插樁語句是一個子過程調用,調用的子過程能在運行到插樁點時記錄下有關的運行情況)。插樁完畢后,插樁后的文件代替插樁前的文件,連同工具提供的插樁庫(插樁庫中有插樁語句調用的子過程以及其他子過程的定義)進行編譯、連接形成新的可執行程序。然后運行此可執行程序,注入測試用例。插樁語句在執行過程中或執行完畢后,就能將測試結果記錄到事先確定的緩沖區或文件中。測試人員就能根據測試結果判定覆蓋情況是否滿足要求了。

從以上工作過程和測試效果可以看出,一個好的覆蓋測試工具,從功能和性能上應滿足一定的要求。

在功能上,覆蓋測試工具應盡可能進行多種目標的覆蓋測試,如能進行語句、分支甚至路徑(或基本路徑)的覆蓋,最好能提供圖形化的界面,便于測試人員直觀地進行覆蓋分析,確定新的待測路徑,補充新的測試用例。

在性能上,覆蓋測試工具應盡量減少插樁開銷。一方面,為達到不同的邏輯覆蓋目標(如語句覆蓋、分支覆蓋、路徑覆蓋、子過程調用覆蓋等),盡量減少插樁操作次數。若能僅僅插樁一次,就能完成多種目標的覆蓋測試,則可以大大減輕測試人員的工作量。另一方面,應優化插樁代碼,減少插樁代碼的數量、減少插樁代碼的運行次數,從而達到減少插樁代碼運行開銷的目的。特別是對于一些實時系統的覆蓋測試,在這方面的要求尤其苛刻。


統計解決方案之CuttleITE



CuttleITE是一款基于實時總線監聽技術、完全面向測試過程的白盒測試工具, CuttleITE采用賦值語句或匯編語言的插樁方式,結合硬件輔助測試,可將測試對被測系統的影響降到最低。是目前在集成級、系統級軟件測試,特別是嵌入式系統軟件測試的最佳實踐工具之一。下面我們將通過一個實例向大家介紹該款工具。

首先我們會使用源碼插樁 工具對被測程序插樁。在打開的插樁頁面(如下圖),打開插樁工程,配置插樁級別、目標路徑、平臺配置文件等信息,開始插樁,等待插樁完畢。


查看插樁后的工程文件(如下圖),我們可以看到依據不同的插樁級別,在源碼程序中插入了樁點。

接著,配置數據采集類型、服務器地址等信息(如下圖),為運行插樁后的工程項目做準備。

然后,在CuttleITE中打開插樁后的工程項目(如下圖)。

連接到服務器端(如下圖),連接成功會在下方的窗口中提示Connect Success。

下載插樁后的工程項目(如下圖)。

開始對被測工程項目進行覆蓋測試,在測試結果的覆蓋率頁面(如下圖)可以查看到每個函數的覆蓋率統計結果,打開其中的一個函數,查看代碼的測試覆蓋情況,未覆蓋到的代碼會以紅色字體高亮顯示。

結語



邏輯覆蓋測試與統計工具的使用,使得邏輯覆蓋率統計成為可能。在工程中的實踐表明,邏輯覆蓋測試工具能大大提高測試用例設計的針對性,有效地彌補墨盒測試的不足。CuttleITE邏輯覆蓋測試與統計工具,以其最小的插樁開銷、友好的操作界面,大大提高了測試效率。



2018年4月2日 16:01
?瀏覽量:0
?收藏
双赢娱乐

<address id="zxfnz"></address>

          3550b.com | 3189p.com | www.487432.com | www.68993263.com | 1479p.com | www.8124s.com | www.50788j.com | d3405.com | www.848777o.com | j8381.com | www.k444.net | www.167356.com | www.85770r.com | www.560726.com | www.js736736.com | www.91233m.com | 7599.cc | www.620932.com | 684526.com | www.50999q.com | 5443hh.com | www.8967p.com | 33.sb | www.16181e.com | 61999yy.com | www.mgm868002.com | 3424k.com | hg27388.com | 3005.am | www.9989582.com | 11105.com | www.325860.com | s886.com | www.w84r.com | www.wi444.com | ll2205.com | www.pj5747.com | 3936z.com | www.qxw150.com | 2287gg.com | www.1819cp.com | 34e35.com | www.hg09a.com | www.51331h.com | 47749i.com | www.5086k.com | www.4988a.cc | x01234.com | www.52303x.com | www.111xpj88.com | www.708330.com | www.737689.com | www.7720q.com | www.849129.com | 8030m.com | www.hg8855.com | www.299494.com | www.33928a09.com | www.205882.com | www.57798d.com | 833.com | www.u80288.com | sbd9.vip | www.8000hc.com | www.hg990077.com | www.140018.com | www.yfcp066.com | 287733.com | www.43818f.com | bcrpk.com | www.533236.com | www.44889u.com | 50021133.com | www.50999i.com | 99567h.com | www.99714.cc | www.36530088.com | v3144.com | www.bet63y.com | b8381.com | www.987426.com | www.a7892904.com | 55797l.com | www.3577.ag | 22p88.cc | www.515049.com | www.608568.com | bbinsupport.com | www.12455i.com | www.9q.cc | 00nn8331.com | www.496408.com | 55155d.com | ff555g.com | www.8313w.com | ss4119.com | www.68689w.com | www.xpj1560.com | 5856u.com | www.81233p.com | www.88517888.cc | www.66652o.com | www.f9478.com | 3846iii.com | www.768806.com | www.tyc131.com | 3122pp.com | www.210755.com | www.115527v.com | 8577h.cc | www.108075.com | www.556939.com | 9030c.com | www.39957a.com | www.q7764.com | 9895g.com | 88904141.com | www.hg77704.com | www.64448.com | 7508f.com | www.99638m.com | www.5405006.com | 888jxf.com | www.444075.com | www.c3065.com | 6146t.com | 15f2.net | www.hg09d.com | www.333193.com | 55967z.com | www.106036.com | www.e32031.com | www.ydb44.com | 4508ll.com | www.252359.com | www.68365s.com | www.7045d.com | dzhcp9.com | 2127b.com | www.8816z.com | www.78115555.com | 53358.com | www.599690.com | www.88266.com | 2677ggg.com | 2324bbb.com | www.slyl2.com | www.490034.com | zhcp65.com | 99151h.com | www.3126h.com | www.cfcp789.com | 3957l.com | js89i.vip | www.680477.com | www.106a56.com | www.4719aa.com | 73567tg7.com | www.560259.com | www.365007.cc | www.ag6215.com | www.86611i.com | 717blr.com | 99559193.com | www.c300.cc | www.00772g.com | www.09569z.com | 82365i.com | mgm3242t.com | www.665879.com | www.69567k.com | www.4625m.com | 3559.la | www.187516.com | www.42456699.com | www.6410.com | www.81866p.com | 3685o.com | www.378015.com | www.hg2300.com | www.c7.cc | www.58777o.com | 56988r.com | 3522aa.com | 36989g.com | www.643477.com | www.80075y.com | www.p7764.com | www.esb116.net | www.69229.com | 2864d.com | vv444000.com | 3550z.com | www.278202.com | www.8667j.com | www.3398755.com | www.d5669.com | www.3844a.com | www.gef888.com | 55545e.com | 0729n.com | 667766j.com | www.579199.com | www.8839r.com | www.367777.cc | www.6880uu.com | www.hwx518.com | www.09527a.com | 2247zz.com | sbc288.com | 7811bb.com | 441343.com | 11163366.com | www.33068.cc | www.xpj16681.com | www.846239.com | www.rr8800.com | www.zzzz0261.com | w9623.com | df8a.com | 5804vcom | 11440.com | www.610875.com | www.657zf.com | www.71399t.com | www.365002.cc | www.0600b.cc | www.50000990.com | p14666.com | www.233591.com | www.864955.com | www.99638p.com | www.99yh21.com | www.83066.com | www.bet63r.com | www.c7202.com | www.sportsinfo8.net | www.hg4118.com | www.10050730.com | www.2846e.com | www.alpk99.com | www.ag9655.com | www.882236f.com | 6177011.com | bet28o.com | 6868269.com | 98955k.com | 26789.com | 56944.com | 44009193.com | 86811bb.com | 492dh.com | 9539012.com | 61320055.com | 6969xpj.com | v93902.com | www.239644.com | www.302029.com | www.178352.com | www.768299.com | www.97655u.com | aydfwjc.com | 1855.com | da472.com | 00773e.com | z6528.com | 56988pp.com | 99699q.com | 5856fff.com | 234915.com | 7811ii.com | hga021.com | hhh40033.com | rrr4255.com | j99345.am | 3049g.com | www.pu7777.net | www.888999yh.com | www.ljw030.com | www.hg9166.com | www.9ag88.com | www.7415j.com | www.4546300.com | www.0343l.com | www.71399q.com | www.can80.com | www.9155d.com | www.912183.com | www.912063.com | www.314377.com | sss5701.com | 55331h.com | blhvip222.com | 5003822.com | 50067f.com | 3049g.com | www.hg66668.cc | www.k30226.com | www.zdj70.com | www.922848.com | www.hg6778.com | www.dzj0004.com | www.326636.com | www.77803l.com | www.926857.com | www.88065e.com | 8838000.com | 195668.com | 3957b.com | mgmvip688.com | www.655666a.com | www.xpj144.com | www.huangma23.com | www.14t.com | www.54400w.com | www.658056.com | 4997x.com | 3844w.com | 26668r.com | www.yh1144.com | www.99828.com | www.6776yy.com | www.z32031.com | www.80065s.com | www.552703.com | 2222k13.com | 4747.com | 1cp055.com | www.4938u.com | www.wct555.com | www.ykylc03.com | www.8499c.com | www.040423.com | js8028.com | 5589.com | www.0153h.com | www.dzj0004.com | www.3978i.com | www.599642.com | cz1366.com | 822.cc | www.56520f.com | www.?28558.com | www.150158.com | www.hx6686.com | www.178756.com | 3y5500.com | 655661100.com | www.33355508.com | www.55545o.com | www.ky1005.com | www.328229.com | 6645365.com | 3049d.com | www.9488js.com | www.6688kcd.com | www.50052n.com | www.36166e.com | 35ii.vip | www.4759oo.com | www.79500o.com | www.76520x.com | yongfengfa.com | 4196v.com | www.h7788u.com | www.4996cd.com | www.180662.com | www.220892.com | 0652y.com | www.221777.com | www.9737jj.com | www.222hy.cc | 8577s.cc | yhjiangsu.vip | www.52564.com | www.68070.com | www.77802a.com | 01234ddd.com | www.00618u.com | www.77785yh.com | www.89386.com | www.44166.com | www.flb377.com | www.501264.com | 87667.com | www.xhtd0011.com | www.0099xpj.net | www.hcjt4.com | bcbm688.com | 40033hhh.com | www.vip8xpj.com | www.37377j.com |