双赢娱乐

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

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


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

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

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


邏輯覆蓋



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

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

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


邏輯覆蓋測試與統計工具



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

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

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

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


統計解決方案之CuttleITE



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

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


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

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

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

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

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

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

結語



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



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

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

          www.32666q.com | www.770222.com | www.0601c.com | www.599647.com | 4647v.com | www.295111.com | www.77802a.com | 6245s.com | www.3775n.com | 7742qq.com | www.73kh.com | 2349014.com | www.p1186.com | www.65719.cc | wx2211.com | www.3308598.com | xpj915.com | www.21365xx.com | www.5xcr.com | 8303.com | www.m99365.com | haocaipiao.net | www.cp505.com | 5443j.com | www.84299.com | www.542511.com | 81511j.com | www.21202q.com | 6199w.com | www.08588r.com | 3983001.com | www.07163p.com | 4422mmmm.com | www.5658.cc | 2649dd.com | www.83993j.com | 560pj.com | www.56011r.com | 9339999h.com | www.178633.com | 83377g.com | www.48330i.com | 5369x.com | www.23636f.com | www.yun505.com | www.8jcw.com | www.777444f.com | www.394077.com | www.823909.com | 365102c.com | www.c3065.com | 7774661.com | www.772345.com | 8742gg.com | www.sbbet138.com | 5005i.com | www.xpj2090.com | 10050714.com | www.535666.com | 44488j.com | www.6687l.com | 86226n.com | www.h36524.com | 4288b.com | www.2tdc.com | www.33928a08.com | 2455.cc | www.258suncity.com | 88p88.vip | www.55070x.com | 7736002.com | www.dyloto9.com | 0022886.com | www.911373.com | www.365815z.com | 52599g.com | www.4996jl.com | ii40033.com | www.fcyl4.com | www.pj8491.com | 365w.com | www.8039c.com | www.39695u.com | 131ggg.net | www.huangma23.com | 77442007.com | www.551412.com | www.39678.com | 8203g.com | www.7140988.com | www.yinhecc11.com | 76543k.com | www.hg194.com | www.hgjc.com | 2998a.com | www.js1046.com | www.9464hh.com | 2247d.com | www.08588v.com | www.9785888.com | hg999333n.com | www.15b32.net | www.hg66997.cc | 3421v.com | www.js28666.com | www.c4737.com | pjjiangxi.com | www.36788k.com | www.wns8833.com | 8557u.com | www.818226.com | www.xy9999.com | 97297u.com | www.53900r.com | www.yh33558.com | 08820033com | www.717228.com | www.2945l.com | js58333.com | 1389.com | www.33111155.com | www.76060r.com | 91019v.com | www.21202s.com | www.55526d.com | 6261nn.com | www.186757.com | www.vip9581.com | www.333xhtd.com | 77201.com | www.32123z.com | www.jjjj008.com | 131e.net | xpj-3730.com | www.3333y.cc | www.th1199.com | wns940.com | xpj382.cn | www.500907.com | www.0091331.com | www.5197365.com | 4255vv.com | www.326608.com | www.742488.com | www.00yh765.com | 9002q.com | www.xinyc3.com | www.vns9998.me | www.65476600.com | 9539p.com | 2418n.com | www.cp8009.cc | www.dzj0707.com | www.zzzz0291.com | 78885.com | 33999193.com | www.bang | www.0600n.cc | www.gef999.com | 7945kk.com | 5231007.com | www.799849.com | www.50hga.com | www.js80388.com | 3421b.com | 08058888.com | www.66332r.com | www.rgcp333.com | www.3643k.com | 2767l.com | sxkcl.net | www.708330.com | www.818993.com | www.4078z.com | www.881215.com | 1806766.com | 3685p.com | www.qucp6.com | www.4569.am | www.caipiao88a.com | www.b3657.com | ahg1088.com | 23233i.com | 88552007.com | www.330715.com | www.59899a.com | www.hgw6668.com | www.sbet567.net | 6150m.com | 1331nn.com | 33ll8331.com | www.151376.com | www.hm3988.com | www.12136v.com | www.8967k.com | www.hg7803.com | 56988jj.com | 668668.am | xin666bb.com | www.162918.com | www.994948.com | www.888977.com | www.hp5868.com | www.7720z.com | 7989l.com | 8522oooo.com | 4018v.com | l3144.com | 88851l.com | www.df76.com | www.80065t.com | www.68365s.com | www.848777g.com | www.www-50007000.com | www.yh795.com | www.bet365609.com | 014458.com | 9994cc15.com | a8381.com | aa7742.com | 1077hhh.com | 6613699.com | www.027107.com | www.zfcp4.com | www.08588t.com | www.bet73n.com | www.tai1166.com | www.38775vv.com | www.0072737.com | www.55545d.com | www.9870x4.com | www.1019993.com | www.6cw.org | 747720.com | hwcp44.com | b4647.com | 4694n.com | 7003ww.com | 67890v.com | 3136dd.com | 3136dd.com | 00w22.vip | 15a13.net | 69445588.com | ah116.net | 95gamevip6.com | 7935e.com | 2998i.com | 7141xx.com | ycl888.com | 8036zz.com | 4037789.com | 908080x.com | wfcp333444.com | 69444400.com | 5627.com | 99909q.com | 9506q.com | 4036ll.com | 835a.cc | 预览6830y.com | 2820r.com | 22883v.com | www.xw0000.com | www.7893w04.com | www.vns95500.com | www.8884j.com | www.p27229.com | www.41685.com | www.xpj63.com | www.55520666.com | www.86939.com | www.938w.cc | www.55526u.com | www.983888d.com | www.3300ra8.com | www.88325o.com | www.a201879.com | www.ya2019m.com | www.bet365193.com | www.3478w.cc | www.743633.com | www.106356.com | 668.bz | 1592i.com | mg437788.com | 39199o.com | 4288d.com | 26444m.com | www.blr0088.com | www.37090000.com | www.4329.com | www.111ee9.com | www.hjcp22.com | www.cn365e.com | www.68993252.com | www.hg5013.com | www.666hy.cc | www.335324.com | 6699734.com | q86811.com | 62284.com | 500000352.com | www.3459u.com | www.yh706.com | www.35252z.com | www.50685a.com | www.77803t.com | www.701504.com | 9121902.com | 3614k.com | 8977mm.com | www.kb8854.com | www.25288h.com | www.45682.com | www.50hd.cc | www.wo41.com | 4880y.com | 38989n.com | 00ww8332.com | 91019l.net | www.698js.com | www.f69096.com | www.86450.com | www.534457.com | 11422s.com | 4556h.com | www.4759ww.com | www.000.hs88.cc | www.673888a.com | www.08588v.com | www.455745.com | dxcp33.com | 3522uu.com | www.aa444.vip | www.rycp162.com | www.89777s.com | www.7qxc.com | 7945tt.com | 3559vvv.com | 2846h.com | www.hg8547.com | www.29098.com | www.hczx9.com | 48139.com | 563567.com | www.k4737.com | www.hg8pp.com | www.8816n.com | 7727.com | 21289455.com | 20188u.com | www.6787749.com | www.68993279.com | www.466780.com | i1915i.com | fhpt518.com | www.303365.com | www.6482n.com | www.290282.com | r08199.com | www.nstar88.com | www.78888js.com | www.3933u.cc | 5002r.com | 85698r.com | www.hg9166.com | www.37377j.com | www.725106.com | 3467d.com | wd888.com | www.8865tt.com | www.5086d.com | 7196a.com | feicai0414.com | www.pi111.com | www.81233c.com | 8290a.com | g99345.am | www.9053.com | www.77801f.com | v3144.com | 668cp77.com | www.wn99ww.com | www.1764q.com | www.196049.com | spj06.com | www.00829f.com | www.103565.com | www.235361.com | 597929.com | www.vns2365.com |