一種生成正交測試用例的方法及裝置的製作方法
2023-07-28 17:35:26
專利名稱:一種生成正交測試用例的方法及裝置的製作方法
技術領域:
本發明涉及產品測試技術領域,尤其涉及一種生成正交測試用例的方法及裝置。
背景技術:
在產品測試中,將欲考察的變量稱為因素O^ctor),在試驗範圍內考察的變量值 稱為水平(Level)。正交試驗方法是數理統計中的一種科學試驗法,是研究多因素多水平的 一種設計方法,是根據正交性從全面試驗中挑選出部分有代表性的點進行試驗,這些有代 表性的點具備了「均勻分散,齊整可比」的特點,正交試驗設計是分式析因設計的主要方法, 是一種高效率、快速,經濟的實驗設計方法。統計學家田口玄一將正交試驗選擇的水平組合列成表格,稱為正交表。正交表是 一整套規則的設計表格,用L表示正交表的代號,η表示試驗的次數,1為水平數,f為列數, 則正交表的表示形式為Ln(If),例如L9 (34),它表示需作9次實驗,最多可觀察4個因素,每 個因素均為3水平。一個正交表中也可以各列的水平數不相等,我們稱它為混合型正交表, 如L「24 41)此表的5列中,有1列為4水平,4列為2水平。例如,作一個三因素三水平的實驗,按全面實驗要求,須進行33 = 27種組合的實 驗,且尚未考慮每一組合的重複數。若按L9(33)正交表安排實驗,只需作9次,顯然大大減 少了工作量。因而,正交實驗設計在很多領域的研究中已經得到廣泛應用。目前,在因素和水平都比較小的時候,試驗者往往可以根據經驗選擇合適的組合 進行驗證,但如果因素和水平都比較大,靠經驗分析選擇組合將變得異常困難。
發明內容
本發明要解決的技術問題是提供一種生成正交測試用例的方法及裝置,解決人工 進行正交測試用例的選擇比較困難的問題,實現正交測試用例的自動生成,達到減少測試 用例個數,提高測試效果。為解決上述技術問題,本發明的一種生成正交測試用例的方法,包括測試裝置接收相互獨立的因素以及因素對應的水平,根據因素數和各因素的水平 數從正交表庫中選擇正交表,建立所接收到的因素與所選擇的正交表中列的對應關係,根 據因素與正交表列的對應關係,將正交表中元素的取值映射為相應水平,生成正交測試用 例。進一步地,測試裝置根據因素的水平數選擇正交表中取值範圍大於或等於該水平 數的列,作為該因素的對應列,建立對應關係。進一步地,測試裝置接收因素和因素對應的水平時,記錄該因素不同水平的輸入 順序;測試裝置將正交表中元素的取值映射為相應水平的方法包括查找正交表中元素 所在列對應的因素,將該元素的取值映射為對應因素的水平,正交表中元素的取值與水平 的輸入順序相對應。
進一步地,若正交表中元素的取值,超出了該元素所在列對應因素的水平數,則將 該元素的取值對對應因素的水平數取模,將取模的結果映射為對應因素的水平。進一步地,測試裝置從正交表庫中選擇的正交表滿足如下條件所選擇的正交表的總因素數不小於接收到的因素的數量,並且若接收到η個水平 數為m的因素,r個水平數為s的因素,則所選擇的正交表中至少包含η個水平數不少於m 的因素,另外至少還包含r個水平數不少於s的因素,其中,m、η、r和s均不小於1,m不等於S。進一步地,測試裝置選擇的正交表為滿足條件的正交表中正交測試用例最少的正 交表,正交表的一行代表一個正交測試用例。進一步地,測試裝置若未從正交表庫中選擇到正交表,則提示用戶對所輸入的因 素進行分組,並重新輸入分組後的因素和因素對應的水平,以重新選擇正交表。進一步地,一種生成正交測試用例的裝置,包括輸入模塊、正交表選擇模塊以及 變量映射模塊,其中輸入模塊,用於接收相互獨立的因素以及因素對應的水平,將接收到的因素及因 素對應的水平發送給正交表選擇模塊;正交表選擇模塊,用於根據因素數和各因素的水平數從正交表庫中選擇正交表, 建立所接收到的因素與所選擇的正交表中列的對應關係,將因素與所選擇的正交表中列的 對應關係及因素對應的水平發生給變量映射模塊;變量映射模塊,用於根據因素與正交表列的對應關係,將正交表中元素的取值映 射為相應水平,生成正交測試用例。進一步地,正交表選擇模塊根據因素的水平數選擇正交表中取值範圍大於或等於 該水平數的列,作為該因素的對應列,建立對應關係。進一步地,輸入模塊,還用於在接收因素和因素對應的水平時,記錄該因素不同水 平的輸入順序,將水平的輸入順序發送給變量映射模塊;變量映射模塊將正交表中元素的取值映射為相應水平的方法包括查找正交表中 元素所在列對應的因素,將該元素的取值映射為對應因素的水平,正交表中元素的取值與 水平的輸入順序相對應。進一步地,變量映射模塊在正交表中元素的取值超出該元素所在列對應因素的水 平數時,將該元素的取值對對應因素的水平數取模,將取模的結果映射為對應因素的水平。綜上所述,本發明通過利用正交試驗原理,在多因素和多水平的複雜測試中,實現 測試用例的自動生成,不僅極大地減少了實際測試用例的個數,而且提高了測試效率。
圖1為本發明實施例生成正交測試用例的方法的流程圖;圖2為本發明實施例生成正交測試用例的裝置的結構圖。
具體實施例方式本發明的實施方式利用正交試驗原理,同時結合取模和分組的思想實現正交測試 用例的生成。
下面結合附圖對本發明的具體實施方式
進行詳細說明。下面通過WiMAX系統的切換測試用例的設計方法說明本發明的實施例,如圖1所 示本發明實施例的方法包括101 測試人員對切換功能的因素和水平進行分析,選擇完全獨立的因素,並將因 素和因素的水平輸入到測試裝置;經過對切換功能的分析,確定2水平的因素6個,3水平的因素3個,4水平的因素 1個,5水平的因素1個,6水平的因素1個。102 測試裝置接收因素和因素的水平,並記錄水平的輸入順序;103 測試裝置根據因素數和各因素的水平數從正交表庫中選擇正交表;可將正交表庫保存在測試裝置的存儲器或與測試裝置分離的存儲器中,測試裝置 從保存正交表的存儲器中選擇正交表。選擇正交表的原則為所選擇的正交表的總因素數>=12 ;其中,至少有6個因素 的水平>=2 ;至少有另外3個因素的水平>=3 ;至少有另外1個因素的水平>=4 ;至少 有另外1個因素的水平> =5 ;至少有另外1個因素的水平> =6 ;並且,從全部滿足要求的 正交表中挑選測試用例個數最少的一個正交表,根據上述原則,選擇L72Q42 34 41 62)。104:若測試裝置未選擇到合適的正交表,則提示用戶對因素進行分組並重新輸入 分組後的因素和因素的水平,執行步驟102 ;若選擇到合適的正交表,則執行步驟105 ;分組之後重新選擇正交表,測試用例的個數為各組生成的測試用例的總和,比如, 因素分組後,分組1產生了 m個測試用例,分組2產生了 η個測試用例,那麼總的測試用例 個數為m+n個。105 測試裝置建立接收到的因素與正交表中列的對應關係;測試裝置根據因素的水平數選擇正交表中取值範圍大於或等於水平數的列,作為 該因素的對應列,建立對應關係。例如,選擇的正交表L72 O42 34 41 62)的前42列的取值範圍是0 1,第43列至IJ 46列的取值範圍為0 2,第47列的取值範圍為0 3,第48和49列取值範圍為0 5, 根據上述特點,從前42列中選擇6列建立與2水平因素的關聯關係,從43 46列中選擇3 列建立與3水平因素的關聯關係,建立47列與4水平因素的關聯關係,從48和49列中選 擇1列建立與5水平因素的關聯關係,另1列建立與6水平因素的關聯關係。106:測試裝置根據因素與正交表列的對應關係以及正交表行中元素的取值,將正 交表映射為測試用例;正交表中的一行對應一個測試用例,測試裝置查找正交表中行元素對應的因素, 將該元素的取值映射為因素的水平,元素的取值與水平的輸入順序相對應,如,假設正交表 的一行元素的取值為0,則該元素對應輸入相應因素時第一個輸入的水平。正交表的選擇並不能保證所有正交表元素與因素的水平完全一一對應,所以有可 能出現正交表中的某些取值並不能找到相應因素的水平。如果行元素的取值超過了該行元 素所在列對應的因素實際包含的水平數,如,行元素的取值為1,而對應的因素包含一個水 平,由於沒有與該行元素對應的水平,因此,導致包含該行元素的測試用例無效,為此,採用 將該行元素的取值對因素包含的水平數進行取模,將取模結果作為該行元素的取值,將該 取值映射為水平。
比如,因素A有四個水平,但是,在正交表中對應列的取值是0 4,那么正交表中 的4就找不到適合的水平,所以先將4對4取模,4mod4 = 0,將0映射為A的水平,保證生 成有效用例。107:測試裝置將正交表映射為測試用例後,輸出最終的正交測試用例,並提供保 存功能。通過使用正交用例生成裝置對那些比較複雜的功能進行測試用例生成,大大縮減 了用例個數,上述切換測試用例從全面覆蓋的207360降到72個,極大的提升了整個測試過 程的效率。圖2所示為本發明實施方式的生成正交測試用例的裝置,包括輸入模塊、正交表 選擇模塊、變量映射模塊和輸出模塊,其中輸入模塊,用於接收相互獨立的因素以及因素對應的水平,將接收到的因素及因 素對應的水平發送給正交表選擇模塊;記錄該因素不同水平的輸入順序,將水平的輸入順 序發送給變量映射模塊。正交表選擇模塊,用於根據因素數和各因素的水平數從正交表庫中選擇正交表, 根據因素的水平數選擇正交表中取值範圍大於或等於該水平數的列,作為該因素的對應 列,建立所接收到的因素與所選擇的正交表中列的對應關係,將因素與所選擇的正交表中 列的對應關係及因素對應的水平發生給變量映射模塊;變量映射模塊,用於根據因素與正交表列的對應關係,查找正交表中元素所在列 對應的因素,將該元素的取值映射為對應因素的水平,正交表中元素的取值與水平的輸入 順序相對應,生成正交測試用例;若正交表中元素的取值,超出了該元素所在列對應因素的 水平數,則將該元素的取值對對應因素的水平數取模,將取模的結果映射為對應因素的水 平。輸出模塊,該模塊實現輸出正交測試用例,並進行保存。該裝置的各模塊的其它功能請參考方法內容的描述。以上所述僅為本發明的優選實施例而已,並不用於限制本發明,對於本領域的技 術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原則之內,所作的任何修 改、等同替換、改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種生成正交測試用例的方法,包括測試裝置接收相互獨立的因素以及所述因素對應的水平,根據因素數和各因素的水平 數從正交表庫中選擇正交表,建立所接收到的因素與所選擇的正交表中列的對應關係,根 據所述因素與正交表列的對應關係,將正交表中元素的取值映射為相應水平,生成正交測 試用例。
2.如權利要求1所述的方法,其特徵在於所述測試裝置根據所述因素的水平數選擇正交表中取值範圍大於或等於該水平數的 列,作為該因素的對應列,建立對應關係。
3.如權利要求2所述的方法,其特徵在於所述測試裝置接收所述因素和因素對應的水平時,記錄該因素不同水平的輸入順序;所述測試裝置將正交表中元素的取值映射為相應水平的方法包括查找正交表中元素 所在列對應的因素,將該元素的取值映射為對應因素的水平,正交表中元素的取值與水平 的輸入順序相對應。
4.如權利要求3所述的方法,其特徵在於若所述正交表中元素的取值,超出了該元素所在列對應因素的水平數,則將該元素的 取值對所述對應因素的水平數取模,將取模的結果映射為對應因素的水平。
5.如權利要求1所述的方法,其特徵在於,所述測試裝置從所述正交表庫中選擇的正 交表滿足如下條件所選擇的正交表的總因素數不小於接收到的因素的數量,並且若接收到η個水平數為 m的因素,r個水平數為s的因素,則所選擇的正交表中至少包含η個水平數不少於m的因 素,另外至少還包含r個水平數不少於s的因素,其中,m、n、r和s均不小於l,m不等於S。
6.如權利要求5所述的方法,其特徵在於所述測試裝置選擇的正交表為滿足所述條件的正交表中正交測試用例最少的正交表, 所述正交表的一行代表一個正交測試用例。
7.如權利要求1所述的方法,其特徵在於所述測試裝置若未從所述正交表庫中選擇到正交表,則提示用戶對所輸入的因素進行 分組,並重新輸入分組後的因素和因素對應的水平,以重新選擇正交表。
8.—種生成正交測試用例的裝置,包括輸入模塊、正交表選擇模塊以及變量映射模 塊,其中所述輸入模塊,用於接收相互獨立的因素以及所述因素對應的水平,將接收到的因素 及因素對應的水平發送給所述正交表選擇模塊;所述正交表選擇模塊,用於根據因素數和各因素的水平數從正交表庫中選擇正交表, 建立所接收到的因素與所選擇的正交表中列的對應關係,將所述因素與所選擇的正交表中 列的對應關係及因素對應的水平發生給所述變量映射模塊;所述變量映射模塊,用於根據所述因素與正交表列的對應關係,將正交表中元素的取 值映射為相應水平,生成正交測試用例。
9.如權利要求8所述的裝置,其特徵在於所述正交表選擇模塊根據所述因素的水平數選擇正交表中取值範圍大於或等於該水 平數的列,作為該因素的對應列,建立對應關係。
10.如權利要求9所述的裝置,其特徵在於所述輸入模塊,還用於在接收所述因素和因素對應的水平時,記錄該因素不同水平的 輸入順序,將水平的輸入順序發送給所述變量映射模塊;所述變量映射模塊將正交表中元素的取值映射為相應水平的方法包括查找正交表中 元素所在列對應的因素,將該元素的取值映射為對應因素的水平,正交表中元素的取值與 水平的輸入順序相對應。
11.如權利要求10所述的裝置,其特徵在於所述變量映射模塊在所述正交表中元素的取值超出該元素所在列對應因素的水平數 時,將該元素的取值對所述對應因素的水平數取模,將取模的結果映射為對應因素的水平。
全文摘要
本發明公開了一種生成正交測試用例的方法,包括測試裝置接收相互獨立的因素以及因素對應的水平,根據因素數和各因素的水平數從正交表庫中選擇正交表,建立所接收到的因素與所選擇的正交表中列的對應關係,根據因素與正交表列的對應關係,將正交表中元素的取值映射為相應水平,生成正交測試用例。本發明通過利用正交試驗原理,在多因素和多水平的複雜測試中,實現測試用例的自動生成,不僅極大地減少了實際測試用例的個數,而且提高了測試效率。
文檔編號G06F11/36GK102073483SQ20091022263
公開日2011年5月25日 申請日期2009年11月23日 優先權日2009年11月23日
發明者李震中 申請人:中興通訊股份有限公司