TW201942746A - 電腦裝置及其測試推算方法 - Google Patents

電腦裝置及其測試推算方法 Download PDF

Info

Publication number
TW201942746A
TW201942746A TW107111730A TW107111730A TW201942746A TW 201942746 A TW201942746 A TW 201942746A TW 107111730 A TW107111730 A TW 107111730A TW 107111730 A TW107111730 A TW 107111730A TW 201942746 A TW201942746 A TW 201942746A
Authority
TW
Taiwan
Prior art keywords
test
total number
code samples
grammars
layered
Prior art date
Application number
TW107111730A
Other languages
English (en)
Other versions
TWI733017B (zh
Inventor
潘奕璁
Original Assignee
中華電信股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 中華電信股份有限公司 filed Critical 中華電信股份有限公司
Priority to TW107111730A priority Critical patent/TWI733017B/zh
Publication of TW201942746A publication Critical patent/TW201942746A/zh
Application granted granted Critical
Publication of TWI733017B publication Critical patent/TWI733017B/zh

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本發明提出一種電腦裝置及其測試推算方法,其適用於多組程式碼樣本。而此測試推算方法包括下列步驟。對那些程式碼樣本分層以產生多組分層資料。對各分層資料隨機選取,並記錄當次選取所得知之當次語法總數(例如,指令數、行數、迴圈數等)及與前次標記語法之重覆數量。依據那些分層資料的當次語法總數及重覆數量推算那些程式碼樣本的語法總數及測試覆蓋率。藉此,能在未知語法總數的前提下,推算出趨近於真實情況的測試總數及覆蓋率。

Description

電腦裝置及其測試推算方法
本發明是有關於一種軟體程式碼相關技術,且特別是有關於一種用於程式碼之電腦裝置及其測試推算方法。
軟體測試覆蓋率是對於伺服器、電信設備、移動載具等產品進行安全認證的考量項目之一。而常見軟體測試覆蓋率計算方式(例如是針對指令、行數、參數、迴圈等語法的覆蓋率),均是假設測試母體總數為已知的前提下,推算出每次測試的覆蓋率。
在大型系統中,由於資安或保密原則,只有開發人員/主管具有權限查閱程式碼。然而,測試覆蓋率通常是測試人員與團隊進行,而這些人員往往沒有足夠的權限取得程式碼。此外,開發團隊所進行的測試,往往只侷限於單元測試(或各自開發的程式)。測試覆蓋率的推算對象是程式碼的迴圈、指令、行數等內容,其應由專職且長期的測試團隊維護管理。如果測試作業僅僅是確認檔案大小(或程式碼行數等),則測試人員僅能做為趨近總數的比較。因此,對於長期性、大型且複雜的系統,開發人員較難進行測試覆蓋率統計。
另一方面,如果是針對小型系統(10人以內作業),由於規模小且彈性,開發兼測試人員對於問題的出現與維護都較容易查測,計算測試覆蓋率也並非那麼必要。較佳的情況是,當系統大到需要專門的測試團隊時,隨之而來的測試方法與測試工具才具有效益。然而,大型團隊最終還是會面臨到資安權限問題。由此可知,現有技術仍有待改進。
有鑑於此,本發明提供一種電腦裝置及其測試推算方法,基於分層隨機抽樣原理,推算出推算單元(功能/模組)、或整體(系統)的測試總數及測試覆蓋率。
本發明的測試推算方法,其適用於多組程式碼樣本。而此測試推算方法包括下列步驟。對那些程式碼樣本分層以產生多組分層資料。對各分層資料隨機選取,並記錄當次選取所得知之當次語法總數及與前次標記語法之重覆數量。依據那些分層資料的當次語法總數及重覆數量推算那些程式碼樣本的語法總數。
另一方面,本發明的電腦裝置包括儲存器及處理器。儲存器記錄數個模組及多組程式碼樣本。處理器耦接儲存器,且存取並執行儲存器所儲存的那些模組。而那些模組包括分層統計模組及總數推算模組。此分層統計模組對那些程式碼樣本分層以產生多組分層資料。而總數推算模組對各分層資料隨機選取,並記錄當次選取所得知之當次語法總數及與前次標記語法之重覆數量,且依據那些分層資料的當次語法總數及重覆數量推算那些程式碼樣本的語法總數。
基於上述,本發明實施例的電腦裝置及其測試推算方法,在未知程式碼樣本(例如,指令、行數、參數、迴圈等)的前提下,基於分層隨機抽樣原理,推算出程式碼樣本的總數及測試覆蓋率。此外,本發明實施例利用推論統計學理論,隨測試次數增加,其總數及測試覆蓋率會越趨近於實際數值。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
圖1是依據本發明一實施例之電腦裝置100的元件方塊圖。請參照圖1,電腦裝置100可以是桌上型電腦、筆記型電腦、伺服器、智慧型手機、多媒體裝置、智慧家電、移動載具等裝置,電腦裝置100並包括儲存器110及處理器130。
儲存器110可以係任何型態的固定或可移動隨機存取記憶體(Radom Access Memory,RAM)、唯讀記憶體(Read Only Memory,ROM)、快閃記憶體(flash memory)、傳統硬碟(hard disk drive)、固態硬碟(solid-state drive,SSD)或類似元件,並用以程式碼樣本、軟體模組(即,分層統計模組111、總數推算模組113、及覆蓋率推算模組115)、應用程式、及其他資料或檔案。
處理器130耦接儲存器110,並可以是中央處理單元(Central Processing Unit,CPU),或是其他可程式化之一般用途或特殊用途的微處理器(Microprocessor)、數位信號處理器(Digital Signal Processor,DSP)、可程式化控制器、特殊應用積體電路(Application Specific Integrated Circuit,ASIC)或其他類似元件或上述元件的組合。在本發明實施例中,處理器130用以執行電腦裝置100的所有作業,且載入並執行儲存器110所記錄的軟體模組。
為了方便理解本發明實施例的操作流程,以下將舉諸多實施例詳細說明本發明實施例中電腦裝置100之運作流程。
圖2是依據本發明一實施例之測試推算方法之流程圖。請參照圖2,本實施例的方法適用於圖1中電腦裝置100中的各裝置。下文中,將搭配電腦裝置100的各項元件及模組說明本發明實施例所述之方法。本方法的各個流程可依照實施情形而隨之調整,且並不僅限於此。
經擷取網路封包、用戶上傳或透過外部或內建儲存媒介(例如,隨身碟、光碟、外接硬碟等)而將程式碼樣本儲存於儲存單元110中,處理器130即可存取此些程式碼樣本(或稱母體樣本)。而在測試開始前,處理器130尚無法了解測試這些程式碼樣本的分佈情況。當進行首次隨機選取出程式碼樣本之當次語法總數(例如,指令數、行數、參數、迴圈數等)時,分層統計模組111按照分層隨機抽樣法中層內差異小而層別之間差異大的原則對這些程式碼樣本分層,以產生多組分層資料。分層統計模組111係依據分層抽樣,並確認各層中層內的程式碼樣本之取出機率是否為均態分布(或稱均勻分布)(步驟S210)。由於現實中無法保證均態分布,因此本發明實施例採用“趨近均態分布”與“動態分層方式”。於測試案例分析開始時,分層統計模組111先依據這些程式碼樣本的性質相近或相同者認定為均態分布,即將取出機率及性質相同之程式碼樣本分至同層(步驟S220,使呈均態分布的程式碼樣本分至同層),並將取出機率或性質不同之程式碼樣本分至不同層。接著,隨著測試案例增加,分層統計模組111再動態分析各層中的分層資料,調整新的分層,使各層中的分層資料的取出機率趨近均態分布。
需說明的是,在實際運作上,分層統計模組111可能每隔特定次數(例如,5、10、15次)執行一次分層調整,以讓各層的分布情況趨近均態分布,甚至分層統計模組111會再依據其機率分佈情況區分成數個子分層資料。例如,分層統計模組111原先將帳務程式的程式碼樣本均分至同一層以形成分層資料,但隨測試案例的增加,分層統計模組111會將帳務程式內再區分為批價相關程式碼至一層,而出帳相關程式碼分至另一層(即形成子分層資料)。亦可能的是,在批價相關程式碼所屬層中,隨測試案例的增加,分層統計模組111再次區分批價Web層、及批價層。也有可能的是,因為不同程式碼樣本的性質相近,分層統計模組111會將不同層調整為同一層。由於分層調整是動態的,因此測試資料會建立於儲存器110的資料庫中,分層統計模組111並依據每次輸入的測試資料(即,程式碼樣本),重新推論過往資料,且再輸入計算此次資料,使測試覆蓋率能趨近真實測試覆蓋率。
接著,總數推算模組113輸入這些測試的程式碼樣本(若有分層則為分層資料),開始辨識程式碼樣本。總數推算模組113會對各層中的分層資料隨機選取特定數量(例如,10、20、50等,作為當次選取所得之當次語法總數來記錄),並與先前選取並標記的測試記錄比對,確認當次選取的程式碼樣本中,有多少是前次已取出過的(即,重覆數量)(總數推算模組113對前次取得樣本中的全部或部分語法標記並記錄標記數量,再記錄當次選取的程式碼樣本中指令、行數、參數等被標記的數量),總數推算模組113並會記錄這些與前次標記語法之重覆數量(步驟S230)。接著,總數推算模組113記錄作為測試資料的程式碼樣本後,即可依捉放法-標記再捕捉法(Mark-recapture method),進行程式碼樣本(母體)總數推論,並進而得出測試覆蓋率(例如,函數覆蓋率、指令覆蓋率、判斷覆蓋率、條件覆蓋率等)(步驟S240)。最後,處理器130確認是否需要再次進行測試(步驟S250),以返回步驟S210或結束作業。
需說明的是,以下分為兩種測試推算說明,其一為程式碼樣本的取出機率相同、性質相同時,無須進行分層抽樣。另一為這些程式碼樣本需分為多層,或因測試次數增加,出現需分層推算的整體情況。
在一實施例中,首先假定母體樣本取出機率為均勻分配,且每次測試取出的測試程式碼指令數(或行數、參數、迴圈數等,即語法總數,為方便說明,本實施例均以指令數作敘述)機率相同,並最少有2次以上的測試紀錄。電腦裝置100即可推算母體樣本中的特定語法總數(此實施例以指令總數為例),並算出測試覆蓋率。
請參照表(1),首先進行參數定義,假設此母體(多組程式碼樣本之集合)定義為A層,A層內指令數取出機率為均勻分配,第1次測試的參數,定義為A1m,第二次測試的參數,定義為A2m等以此類推。由於至少要有2次測試紀錄,因此以下將第二次的參數說明。
此外,定義A21,代表第二次測試A層所佔的比例。例如,母體指令均處於A層中,則A21、A31、A41...均為100%(如有其他層情況,後續再做說明)。定義A22,表示本次測試,取出的指令總數。定義A23,表示本次測試,取出的指令總數中,是先前取過的指令數目。定義A24,表示本次測試之前,已經標記的指令數目。定義A25,推算在A層中,測試的指令總數。定義A26,推算在A層中,平均的測試指令總數。定義A27,推算在A層中,本次測試的指令覆蓋率。定義A28,推算平均的測試指令總數,如A層所占比率為100%,則A26=A28。定義A29,推算本次測試的指令覆蓋率,如A層所占比率為100%,則A27=A29。
參數經定義後,則總數推算模組113可推導相關公式。即,A24= A14+(A12-A13),其中已經標記的指令數目,為前次測試已經標記的指令數,再加上本次取出未標記過的指令數。測試的指令總數A25= A24*A22/A23,此為利用統計學之抓放法-標記再補抓法推導得出。而平均的測試指令總數A26= (A15+A25)/2 得出(n為該層測試次數),即所有推算之語法總數的平均數。而本次測試的指令覆蓋率則可由覆蓋率推算模組115依據程式碼樣本之總數推算得出A27= A22/A26。 表(1)
而在另一實施例中,若母體程式碼指令取出機率不為均勻分配,則分層統計模組111使用分層抽樣方式,將程式碼指令取出機率均勻分配的各自區分為一層,使每次測試取出的測試程式碼指令數(或行數、參數、迴圈數等,即語法總數,為方便說明,本實施例均以指令數作敘述)機率相同,且最少有2次以上的測試紀錄,即可依比例推算出母體程式碼中特定語法總數,並據以推算出測試覆蓋率。
請參照表(2),首先進行參數定義,假設該母體指令取出機率不為均勻分配,則分層統計模組111將母體區分數層,使各層指令數取出機率為均勻分配。例如,A層內指令數取出機率為均勻分配,第1次測試的參數,定義為A1m,第二次測試的參數,定義為A2m...。B層第1次測試的參數,定義為B1m,第二次測試的參數,定義為B2m...,以此類推。xnm代表第x層第n次測試的第m個參數。由於至少要有2次測試紀錄,因此以A層第二次的參數說明。
定義A21,代表第二次測試A層所佔的比例,A21=A26/(A26+B26+C26+D26+...),各層依平均的測試指令總數,計算總數比例。定義A22,表示本次測試,取出的指令總數。定義A23,表示本次測試,取出的指令總數中,是先前取過的指令數目。定義A24,表示本次測試之前,已經標記的指令數目。定義A25,推算在A層中,測試的指令總數。定義A26,推算在A層中,平均的測試指令總數。定義A27,推算在A層中,本次測試的指令覆蓋率。定義A28,推算平均的測試指令總數。定義A29,推算本次測試的指令覆蓋率。
參數經定義後,則總數推算模組113可推導相關公式。即,A24= A14+(A12-A13)èxn4=x(n-1)4+(x(n-1)2-x(n-1)3),已經標記的指令數目,為前次測試已經標記的指令數,再加上本次取出未標記過的指令數。測試的指令總數A25= A24*A22/A23èxn5 =。平均的測試指令總數A26= (A15+A25)/2 èxn6 =(n為該層測試次數),即推算過的測試之程式碼樣本總數之平均數。本次測試的指令覆蓋率A27= A22/A26è xn7 =。 平均的測試指令總數A28=A26/A21è xn8 =。本次測試的指令覆蓋率(A22+C22+…)/A28=
經由分層推算平均的測試指令總數A28,可彙整公式為 xn8 ==,其中x、n為第x層的第n次測試。 表(2)
總數推算模組113並可由中央極限定理確認,其中當,推算指令總數,會趨近於真實指令總數。
再一實施例中,假設電腦裝置100進行批價系統測試,且測試覆蓋率以程式碼指令數計算。分層統計模組111將批價資料分為4層,其中各層每次測試所取出程式碼指令之取出機率,為均態分布。而這四層分別為國內語音(A層)、簡訊(B層)、國際語音(C層)、數據(D層)共四層。測試次數1~n次,此實施例以四次測試說明。
請參考表(3),首先進行參數定義,假設該母體指令取出機率不為均勻分配,則將母體區分數層,各層指令數取出機率為均勻分配。例如,A層內指令數取出機率為均勻分配,第1次測試的參數,定義為A1m,第二次測試的參數,定義為A2m...。B層第1次測試的參數,定義為B1m,第二次測試的參數,定義為B2m...,以此類推。xnm代表第x層第n次測試的第m個參數。
定義A21,代表第二次測試A層所佔的比例,A21=A26/(A26+B26+C26+D26),各層依平均的測試指令總數,計算總數比例。定義A22,表示本次測試,取出的指令總數。定義A23,表示本次測試,取出的指令總數中,是先前取過的指令數目。定義A24,表示本次測試之前,已經標記的指令數目。定義A25,推算在A層中,測試的指令總數。定義A26,推算在A層中,平均的測試指令總數。定義A27,推算在A層中,本次測試的指令覆蓋率。定義A28,推算平均的測試指令總數。定義A29,推算本次測試的指令覆蓋率。
各層測試參數經確認後,總數推算模組113與覆蓋率推算模組115即可由每次測試資料,推算測試總數與測試覆蓋率。如表(3)所示,在第一次測試中,A12取出指令總數為50。第二次測試A22取出指令總數為70,其中A23前次取出過的指令共20個,則總數推算模組113可以推算A層總數A25為50*70/20=175個指令,覆蓋率推算模組115即可推算A層測試覆蓋率70/175=40%。此外,因為本次測試亦取出C層C22指令總數80個,因此總數推算模組113可推算A層指令總數占所有指令A21的比例175/(175+80)=68.63%。總數推算模組113並推算總指令數A28=A26/A21=175/0.6863=255,且覆蓋率推算模組115推算本次測試取出A層的指令之總覆蓋率為70/255=27.45%。而本次測試取出所有層的指令之總覆蓋率則為(70+80)/255=58.82%。
在第三次測試中,總數推算模組113所取出指令包含A層60個、B層50個、C層90個。定義A31,代表第三次測試A層所佔的比例,A31=A36/(A36+B36+C36+D36),各層依平均的測試指令總數,計算總數比例。如此,依相同公式,總數推算模組113可計算出A層平均層總數xn6 == (175+150)/2 = 163,估算層覆蓋率xn7 ==36.81%。推算的測試指令總數xn8 == 353,覆蓋率推算模組115即推算本次測試取出A層的指令之總覆蓋率為xn9 == 60/353= 17.00%。
在第四次測試中,總數推算模組113使用測試總數推算公式xn8 === 155+40+99+90 = 384,且覆蓋率推算模組115推算本次測試取出A層的指令之總覆蓋率為70/384= 18.23%。而本次測試取出所有層的指令之總覆蓋率為(70+40+60)/384=44.27%。
假設已知總測試迴圈數共500個,則第一次測試後的測試覆蓋率為50/500=10%;第二次測試後的測試覆蓋率為 (100+80)/500=36%;第三次測試後的測試覆蓋率為 (120+90+90)/500=60%;第四次測試後的測試覆蓋率為 (130+40+95)/500=53%。與第二次測試比較,真實與推算的測試覆蓋率差,第二次相差22.82%,第三次相差-16.19%,第四次相差8.73%。由此可知,確認測試案例越多,推算的測試覆蓋率,將越趨近於真實覆蓋率。 表(3)
又一實施例中,假設電腦裝置100進行出帳系統測試,且測試覆蓋率以程式碼指令數計算。一開始若分層統計模組111無法確認樣本分佈狀況,可先假設樣本為均態分布做統計推算。參考表(3),在第一次測試中,總數推算模組113僅選取出均態分布的國內語音樣本層,此時將之定義為A層,並與前例類同之參數定義與統計方式。在第二次測試中,總數推算模組113選取出均態分布的國際語音樣本層,此時將之定義為C層,以及使用同樣的參數定義與統計方式。在第三次測試中,若總數推算模組113亦選取出了國際語音樣本,則分析當次樣本之分佈狀況。而若與第二次測試選取出之C層分佈狀況不同,則分層統計模組111將此次取出之國際樣本歸類為D層,此D層亦為均態分布之樣本空間。在第四次測試中,總數推算模組113同樣亦有取出國內語音樣本,且與A層分佈不同,則總數推算模組113將此樣本空間歸類為B層,總數推算模組113與覆蓋率推算模組115並再進行推論統計,算出測試總數與測試覆蓋率。
由此可知,雖然程式碼樣本同樣分佈為A~D共四層,但分層概念卻有所不同。其一為處理器130事先並不知道分層數量,是待抽出之測試樣本後,才依樣本分佈性質進行分層。其二並非同樣性質的程式碼樣本被歸類為同一層,而是以均態分布的樣本空間,才分為同一層。因此,兩類語音測試,共區分為四層。亦可能的是,原先X層內的程式碼樣本中,總數推算模組113對後續取出的測試樣本分析後,分層統計模組111將重新分類為X層與新的Y層(並且Y層可能包含原先X層內的樣本)。因此,於本實施例中,其說明了本專利的另一特性,即經過多次測試後,經由對取出樣本的分析與進一步分層,隨著測試次數增加,測試總數與測試覆蓋率,會越趨近於真實測試總數與測試覆蓋率。
需說明的是,大部分測試實施上的分層方式,主要依靠測試人員的經驗判斷。一般是依據抽樣程式之間的性質,例如,程式用途、前端後端性質、主程式或dll參考程式或設定檔等區分。又例如,在帳務系統中,行動、固網可分為兩層,批價、出帳可分為兩層,Web類型、排程類型、報表類型可分為三層,如此可區分為2*2*3=12層。再例如,在匯流服務中,可能利用專案分類,小額付款服務的為一層、Hami Wallet專案的為一層、MOD支付業務的為一層、手機支付專案的為一層。又例如手機支付分為Android Pay或Apple Pay,亦依性質再次分層。而在本發明實施例中,越是精準地分層,越會影響趨近真實覆蓋率的快慢。然而,無論分層的精準或不精準,隨測試案例的增加,最終都會趨近真實覆蓋率。
由前述實施例可確認,經推算統計後,使用本發明實施例之測試覆蓋率計算方法,確實達成預期之目標,推算出測試語法總數與測試覆蓋率。此外,隨測試次數增加,測試總數與測試覆蓋率,會越趨近於真實測試總數與測試覆蓋率。
另一方面,時間與次數亦可能影響推算的精準度,而本發明實施例的總數推算模組113係每經預設測試次數(例如,10、20、30次等)或一段預設時間區隔(例如,一個月、半年等)會推算這些程式碼樣本的語法總數,以因應於程式碼樣本異動並提升準確度。
綜上所述,本發明實施例無須知道測試樣本(指令、行數、參數、迴圈等)語法總數,即可依據已測試數據,推算出測試樣本語法總數與測試覆蓋率。本發明實施例利用推論統計學理論,隨測試次數增加,測試總數與測試覆蓋率,會越趨近於真實測試總數與測試覆蓋率。此外,本發明實施例使用分層隨機抽樣原理,除了推算單元(功能/模組)測試總數與覆蓋率之外,亦能推算整合(系統)測試總數與覆蓋率。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
100‧‧‧電腦裝置
110‧‧‧儲存器
111‧‧‧分層統計模組
113‧‧‧總數推算模組
115‧‧‧覆蓋率推算模組
130‧‧‧處理器
S210~S250‧‧‧步驟
圖1是依據本發明一實施例之電腦裝置的元件方塊圖。 圖2是依據本發明一實施例的測試推算方法的流程圖。

Claims (10)

  1. 一種測試推算方法,適用於多組程式碼樣本,該測試推算方法包括: 對該些程式碼樣本分層以產生多組分層資料; 對每一該分層資料隨機選取,並記錄當次選取所得之當次語法總數及與前次標記語法之重覆數量;以及 依據該些分層資料的當次語法總數及重覆數量推算該些程式碼樣本中的語法總數。
  2. 如申請專利範圍第1項所述的測試推算方法,其中對該些程式碼樣本分層以產生該些分層資料包括: 判斷該些程式碼樣本之取出機率及性質是否相同; 將該取出機率及該性質相同之程式碼樣本分至同層;以及 將該取出機率或該性質不同之程式碼樣本分至不同層。
  3. 如申請專利範圍第1項所述的測試推算方法,其中依據該些分層資料的當次語法總數及重覆數量推算該些程式碼樣本的總數之後,更包括: 依據該些程式碼樣本的語法總數推算該些程式碼樣本的測試覆蓋率。
  4. 如申請專利範圍第1項所述的測試推算方法,其中依據該些分層資料的當次語法總數及重覆數量推算該些程式碼樣本的總數之後,更包括: 將同層內的分層資料再依據其機率分佈情況區分成多個子分層資料。
  5. 如申請專利範圍第1項所述的測試推算方法,其中依據該些分層資料的當次語法總數及重覆數量推算該些程式碼樣本的總數包括: 每經一預設測試次數或一預設時間區隔推算該些程式碼樣本的總數。
  6. 一種電腦裝置,包括: 一儲存器,記錄多個模組及多組程式碼樣本; 一處理器,耦接該儲存器,且存取並執行該儲存器所儲存的該些模組,該些模組包括: 一分層統計模組,對該些程式碼樣本分層以產生多組分層資料;以及 一總數推算模組,對每一該分層資料隨機選取,並記錄當次選取所得之當次語法總數及與前次標記語法之重覆數量,依據該些分層資料的當次語法總數及重覆數量推算該些程式碼樣本中的語法總數。
  7. 如申請專利範圍第6項所述的電腦裝置,其中該分層統計模組判斷該些程式碼樣本之取出機率及性質是否相同,將該取出機率及該性質相同之程式碼樣本分至同層,並將該取出機率或該性質不同之程式碼樣本分至不同層。
  8. 如申請專利範圍第6項所述的電腦裝置,其中該些模組更包括: 一覆蓋率推算模組,依據該些程式碼樣本的總數推算該些程式碼樣本的測試覆蓋率。
  9. 如申請專利範圍第6項所述的電腦裝置,其中該分層統計模組將同層內的分層資料再依據其機率分佈情況區分成多個子分層資料。
  10. 如申請專利範圍第6項所述的電腦裝置,其中該總數推算模組每經一預設測試次數或一預設時間區隔推算該些程式碼樣本的語法總數。
TW107111730A 2018-04-03 2018-04-03 電腦裝置及其測試推算方法 TWI733017B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW107111730A TWI733017B (zh) 2018-04-03 2018-04-03 電腦裝置及其測試推算方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW107111730A TWI733017B (zh) 2018-04-03 2018-04-03 電腦裝置及其測試推算方法

Publications (2)

Publication Number Publication Date
TW201942746A true TW201942746A (zh) 2019-11-01
TWI733017B TWI733017B (zh) 2021-07-11

Family

ID=69184619

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107111730A TWI733017B (zh) 2018-04-03 2018-04-03 電腦裝置及其測試推算方法

Country Status (1)

Country Link
TW (1) TWI733017B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI755702B (zh) * 2020-04-06 2022-02-21 中華電信股份有限公司 測試真實資料之方法及電腦可讀媒介

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200725259A (en) * 2005-12-23 2007-07-01 Inventec Besta Co Ltd System for performing unit test and method thereof
US9514423B2 (en) * 2010-09-07 2016-12-06 Hewlett Packard Enterprise Development Lp Test planning tool for software updates
US9703677B2 (en) * 2015-09-22 2017-07-11 Red Hat Israel, Ltd. Code coverage plugin
TWI570554B (zh) * 2015-11-05 2017-02-11 財團法人資訊工業策進會 軟體測試裝置、軟體測試方法及其電腦程式產品
CN106326118B (zh) * 2016-08-19 2019-03-15 东软集团股份有限公司 代码测试覆盖率确定方法和装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI755702B (zh) * 2020-04-06 2022-02-21 中華電信股份有限公司 測試真實資料之方法及電腦可讀媒介

Also Published As

Publication number Publication date
TWI733017B (zh) 2021-07-11

Similar Documents

Publication Publication Date Title
CN110826071B (zh) 软件漏洞风险预测方法、装置、设备及存储介质
US10671507B2 (en) Application performance analytics platform
US10552761B2 (en) Non-intrusive fine-grained power monitoring of datacenters
US9009289B1 (en) Systems and methods for assessing application usage
US11669420B2 (en) Monitoring performance of computing systems
CN102902621B (zh) 应用性能评价和报告
US10025878B1 (en) Data lineage analysis
US9110948B2 (en) Relative performance prediction of a replacement database management system (DBMS)
EP3301621A1 (en) Timing estimations for application lifecycle management work items determined through machine learning
US8768878B2 (en) Characterizing business intelligence workloads
CN107967209B (zh) 一种检测前端网页代码中错误的方法、检测设备及服务器
AU2016351383A1 (en) Performance monitoring in a distributed storage system
CN105447740A (zh) 基于Golang的反刷单方法
US10496999B2 (en) Method and apparatus of controlling network payment
CN106649061A (zh) 一种记录用户在web系统中的操作日志的方法与设备
US9378119B2 (en) Release template
CN106021054A (zh) 一种对bmc升降级稳定性进行测试的方法及装置
CN109495291A (zh) 调用异常的定位方法、装置和服务器
US20160062816A1 (en) Detection of outage in cloud based service using usage data based error signals
CN104391789A (zh) 一种Web应用程序压力测试的方法
Khomonenko et al. Stochastic models for cloud computing performance evaluation
TW201942746A (zh) 電腦裝置及其測試推算方法
CN107704362A (zh) 一种基于Ambari监控大数据组件的方法及装置
CN107798009A (zh) 数据聚合方法、装置及系统
US8527326B2 (en) Determining maturity of an information technology maintenance project during a transition phase