国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種測試用例的生成方法及裝置與流程

      文檔序號:11829426閱讀:233來源:國知局
      一種測試用例的生成方法及裝置與流程

      本發(fā)明涉及軟件測試技術領域,尤其涉及一種測試用例的生成方法及裝置。



      背景技術:

      在現(xiàn)有的軟件生命周期管理中,一般均具有成熟的軟件故障管理系統(tǒng),并積累有多種軟件產(chǎn)品的歷史故障信息。這些故障信息對同類軟件產(chǎn)品有極大的參考價值。而軟件測試過程的主要目的是暴露軟件產(chǎn)品的缺陷,所以能夠?qū)崿F(xiàn)這一目的的測試設計在用例設計中具有最大的價值。

      但是,目前軟件測試過程中,從事測試設計的專業(yè)人員,對軟件產(chǎn)品的各類故障情況受到知識面、從業(yè)經(jīng)驗和熟悉的產(chǎn)品類型等限制,測試設計過程中很難做到對軟件易發(fā)故障的較全面覆蓋。



      技術實現(xiàn)要素:

      本發(fā)明要解決的技術問題是提供一種測試用例的生成方法及裝置,通過歷史故障信息建模,并自動篩選與待測產(chǎn)品相對應的故障模型,生成相應的測試用例,大大提高了測試效率和有效性。

      為了解決上述技術問題,本發(fā)明采用如下技術方案:

      依據(jù)本發(fā)明的一個方面,提供了一種測試用例的生成方法,包括:

      采集歷史故障數(shù)據(jù)并依據(jù)所述歷史故障數(shù)據(jù)和預設產(chǎn)品特征生成易發(fā)故障模型,其中,所述易發(fā)故障為發(fā)生頻數(shù)超過預定閾值的故障;

      獲取待測試產(chǎn)品的產(chǎn)品特征;

      根據(jù)所述產(chǎn)品特征從所述故障模型中查詢與所述待測試產(chǎn)品的產(chǎn)品特征相匹配的故障模型;

      根據(jù)所述故障模型生成相應的測試用例。

      其中,所述依據(jù)所述歷史故障數(shù)據(jù)和預設產(chǎn)品特征生成易發(fā)故障模型,具 體包括:

      根據(jù)所述歷史故障數(shù)據(jù)獲取故障的頻數(shù)信息,并依據(jù)故障發(fā)生頻數(shù)的預定閾值確定易發(fā)故障;

      將至少一個預設產(chǎn)品特征作為觸發(fā)所述易發(fā)故障發(fā)生的至少一個特征條件;

      對所述特征條件和所述故障范圍進行匹配,并遞歸更新與所述特征條件相匹配的故障范圍;

      當任一所述特征條件匹配完成后,對更新后的所述故障范圍內(nèi)的存在數(shù)據(jù),進行建模計算,生成易發(fā)故障模型。

      其中,所述對所述特征條件和所述故障范圍進行匹配,并遞歸更新與所述特征條件相匹配的故障范圍,具體包括:

      讀取一所述特征條件;

      依據(jù)所述特征條件,通過查詢算法查詢符合所述特征條件的故障范圍;

      若存在與所述特征條件相匹配的故障范圍,則更新當前所述故障范圍;

      查詢是否存在未進行匹配的所述特征條件;

      若存在未進行匹配的所述特征條件,則對所述特征條件和故障范圍進行匹配,并更新與所述特征條件相匹配的故障范圍。

      其中,所述根據(jù)所述故障模型生成相應的測試用例,具體包括:

      依據(jù)所述故障模型,獲取生成所述測試用例所需具備的用例要素;

      依據(jù)所述用例要素生成相應的測試用例。

      其中,所述歷史故障數(shù)據(jù)包括:故障所適用的產(chǎn)品類型、產(chǎn)品開發(fā)所使用的語言及版本、產(chǎn)品使用的平臺、中間件及版本、故障引入原因、故障觸發(fā)條件、故障所對應的功能點功能說明和/或故障現(xiàn)象說明。

      其中,所述產(chǎn)品特征包括:產(chǎn)品類型、語言版本、平臺中間件版本、產(chǎn)品功能點和/或類型清單。

      依據(jù)本發(fā)明的另一個方面,還提供了一種測試用例的生成裝置,包括:

      故障模型生成模塊,用于采集歷史故障數(shù)據(jù)并依據(jù)所述歷史故障數(shù)據(jù)和預設產(chǎn)品特征生成易發(fā)故障模型,其中,所述易發(fā)故障為發(fā)生頻數(shù)超過預定閾值的故障;

      獲取模塊,用于獲取待測試產(chǎn)品的產(chǎn)品特征;

      匹配模塊,用于根據(jù)所述產(chǎn)品特征從所述故障模型中查詢與所述待測試產(chǎn)品的產(chǎn)品特征相匹配的故障模型;

      測試用例生成模塊,用于根據(jù)所述故障模型生成相應的測試用例。

      其中,所述故障模型生成模塊包括:

      統(tǒng)計和分析單元,用于根據(jù)所述歷史故障數(shù)據(jù)獲取故障的頻數(shù)信息,并依據(jù)故障發(fā)生頻數(shù)的預定閾值確定易發(fā)故障;

      獲取單元,用于將至少一個預設產(chǎn)品特征作為觸發(fā)所述易發(fā)故障發(fā)生的至少一個特征條件;

      更新單元,用于對所述特征條件和所述故障范圍進行匹配,并遞歸更新與所述特征條件相匹配的故障范圍;

      建模單元,用于當任一所述特征條件匹配完成后,對更新后的所述故障范圍內(nèi)的存在數(shù)據(jù),進行建模計算,生成易發(fā)故障模型。

      其中,所述更新單元包括:

      讀取子單元,用于讀取一所述特征條件;

      第一查詢子單元,用于依據(jù)所述特征條件,通過查詢算法查詢符合所述特征條件的故障范圍;

      第一更新子單元,用于若存在與所述特征條件相匹配的故障范圍,則更新當前所述故障范圍;

      第二查詢子單元,用于查詢是否存在未進行匹配的所述特征條件;

      第二更新子單元,用于若存在未進行匹配的所述特征條件,則對所述特征條件和故障范圍進行匹配,并更新與所述特征條件相匹配的故障范圍。

      其中,所述測試用例生成模塊具體用于:

      依據(jù)所述故障模型,獲取生成所述測試用例所需具備的用例要素;

      依據(jù)所述用例要素生成相應的測試用例。

      其中,所述歷史故障數(shù)據(jù)包括:故障所適用的產(chǎn)品類型、產(chǎn)品開發(fā)所使用的語言及版本、產(chǎn)品使用的平臺、中間件及版本、故障引入原因、故障觸發(fā)條件、故障所對應的功能點功能說明和/或故障現(xiàn)象說明。

      其中,所述產(chǎn)品特征包括:產(chǎn)品類型、語言版本、平臺中間件版本、產(chǎn)品 功能點和/或類型清單。

      本發(fā)明的有益效果是:

      本發(fā)明實施例的測試用例的生成方法,根據(jù)采集的歷史故障數(shù)據(jù)生成與相應產(chǎn)品的產(chǎn)品特征相對應的故障模型,作為后續(xù)同類產(chǎn)品的測試設計依據(jù)。當需要對待測產(chǎn)品進行測試時,獲取該待測產(chǎn)品的產(chǎn)品特征,并從建立的故障模型中查詢與該待測產(chǎn)品的產(chǎn)品特征相匹配的故障模型,從而依據(jù)該故障模型生成相應的測試用例,使得待測產(chǎn)品可通過該測試用例進行產(chǎn)品的測試,從而能夠在測試設計過程中更好地做到對軟件易發(fā)故障的較全面覆蓋,并聚焦到產(chǎn)品的易發(fā)故障部分,大大提高測試效率和有效性。

      附圖說明

      圖1表示本發(fā)明實施例的測試用例的生成方法流程示意圖;

      圖2表示本發(fā)明實施例的測試用例的生成裝置結(jié)構框圖;

      圖3表示本發(fā)明實施例的故障模型生成模塊的結(jié)構框圖;

      圖4表示本發(fā)明實施例的更新單元的結(jié)構框圖。

      具體實施方式

      下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現(xiàn)本公開而不應被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達給本領域的技術人員。

      實施例一

      依據(jù)本發(fā)明實施例的一個方面,提供了一種測試用例的生成方法,首先,采集歷史故障數(shù)據(jù)并依據(jù)所述歷史故障數(shù)據(jù)和預設產(chǎn)品特征生成易發(fā)故障模型;接著,獲取待測試產(chǎn)品的產(chǎn)品特征;再次,跟據(jù)所述產(chǎn)品特征從所述故障模型中查詢與所述待測試產(chǎn)品的產(chǎn)品特征相匹配的故障模型;最后,根據(jù)所述故障模型生成相應的測試用例。由此可知,本發(fā)明實施例的測試用例的生成方法,能夠充分提取出同類產(chǎn)品的歷史故障信息并轉(zhuǎn)換為高價值的測試用例,突破了單純利用產(chǎn)品規(guī)格、需求作為測試設計依據(jù)的局限性。

      如圖1所示,該測試用例的生成方法,包括:

      步驟S11、采集歷史故障數(shù)據(jù)并依據(jù)所述歷史故障數(shù)據(jù)和預設產(chǎn)品特征生成易發(fā)故障模型。

      其中,易發(fā)故障為發(fā)生頻數(shù)超過預定閾值的故障,且預設產(chǎn)品特征即為給定的產(chǎn)品特征,包括:產(chǎn)品類型、語言版本、平臺中間件版本、產(chǎn)品功能點類型清單等信息。

      此外,目前大部分軟件故障管理系統(tǒng),均可以實現(xiàn)軟件產(chǎn)品故障數(shù)據(jù)的采集和存儲。其中,需要記錄的每一個故障的故障數(shù)據(jù)包括:故障所適用的產(chǎn)品類型、產(chǎn)品開發(fā)所使用的語言及版本、產(chǎn)品使用的平臺、中間件及版本、故障引入原因、故障觸發(fā)條件、故障所對應的功能點功能說明和/或故障現(xiàn)象說明。在本發(fā)明實施例的測試用例的生成方法中,可直接從軟件故障管理系統(tǒng)中記錄的上述故障數(shù)據(jù)作為建立易發(fā)故障模型的歷史數(shù)據(jù)依據(jù)。

      當然,可以理解的是,所采集的歷史故障數(shù)據(jù)并不局限于包括:故障所適用的產(chǎn)品類型、產(chǎn)品開發(fā)所使用的語言及版本、產(chǎn)品使用的平臺、中間件及版本、故障引入原因、故障觸發(fā)條件、故障所對應的功能點功能說明和/或故障現(xiàn)象說明,還可依據(jù)實際情況包括一些其他必要的補充信息。

      可選地,步驟S11包括:

      根據(jù)所述歷史故障數(shù)據(jù)獲取故障的頻數(shù)信息,并依據(jù)故障發(fā)生頻數(shù)的預定閾值確定易發(fā)故障;

      將至少一個預設產(chǎn)品特征作為觸發(fā)所述易發(fā)故障發(fā)生的至少一個特征條件;

      對所述特征條件和所述故障范圍進行匹配,并遞歸更新與所述特征條件相匹配的故障范圍;

      當任一所述特征條件匹配完成后,對更新后的所述故障范圍內(nèi)的存在數(shù)據(jù),進行建模計算,生成易發(fā)故障模型。

      其中,故障范圍即為依據(jù)特征條件將采集的多個故障的歷史故障數(shù)據(jù)進行分組后,每一組內(nèi)所包括的多個故障所適用的產(chǎn)品的類型、版本、功能等。而將故障范圍進行遞歸更新的特征條件即為預設產(chǎn)品特征。本發(fā)明實施例的測試用例的生成方法中,建模計算主要是保證故障模型和給定產(chǎn)品的相關性和復現(xiàn) 幾率,具體計算方法可以根據(jù)系統(tǒng)要求定義。

      其中,所述對所述特征條件和所述故障范圍進行匹配,并遞歸更新與所述特征條件相匹配的故障范圍,具體包括:

      讀取一所述特征條件;

      依據(jù)所述特征條件,通過查詢算法查詢符合所述特征條件的故障范圍;

      若存在與所述特征條件相匹配的故障范圍,則更新當前所述故障范圍;

      查詢是否存在未進行匹配的所述特征條件;

      若存在未進行匹配的所述特征條件,則對所述特征條件和故障范圍進行匹配,并更新與所述特征條件相匹配的故障范圍。

      在對所述特征條件和所述故障范圍進行匹配,并遞歸更新與所述特征條件相匹配的故障范圍的步驟中,具體舉例說明如下:

      若特征條件包括條件x和條件y,則首先讀取一特征條件,如條件x;接著,對條件x匹配故障范圍,若確定的與條件x匹配的故障范圍為范圍A則對條件y匹配故障范圍,若與條件y匹配的故障范圍為范圍B,則對范圍A和B按照一定的更新策略進行處理獲得更新后的故障范圍C,若此時仍然存在未進行匹配的條件z,則對條件z匹配故障范圍,若與條件z匹配的故障范圍為范圍D,則對范圍C和D按照一定的更新策略進行處理獲得更新后的故障范圍,直到所有特征條件均匹配完成。

      其中,在對范圍A和B進行處理時,若需要獲取要求更為嚴格的故障范圍,且范圍A和B存在交集,則將范圍A和B的交集作為更新后的故障范圍;若需要獲取涵蓋范圍更加廣泛的故障范圍,則將范圍A和B的并集作為更新后的故障范圍。

      步驟S12、獲取待測試產(chǎn)品的產(chǎn)品特征。

      其中,待測試產(chǎn)品本身具有一定的產(chǎn)品特征,比如,產(chǎn)品類型、語言版本、平臺中間件版本、產(chǎn)品功能點、類型清單等。因此,可將產(chǎn)品類型、語言版本、平臺中間件版本、產(chǎn)品功能點和/或類型清單作為待測產(chǎn)品的產(chǎn)品特征,以便后續(xù)對該待測產(chǎn)品進行測試。

      步驟S13、根據(jù)所述產(chǎn)品特征從所述故障模型中查詢與所述待測試產(chǎn)品的產(chǎn)品特征相匹配的故障模型。

      在本發(fā)明實施例的測試用例的生成方法中,所生成的故障模型與產(chǎn)品的產(chǎn)品特征相對應,因此在對待測產(chǎn)品進行測試之前,可從生成的多個故障模型中查詢與該待測產(chǎn)品的產(chǎn)品特征相匹配的故障模型,從而便于進行待測產(chǎn)品的后續(xù)測試過程。

      步驟S14、根據(jù)所述故障模型生成相應的測試用例。

      可選地,步驟S14具體為:

      根據(jù)所述故障模型,獲取生成所述測試用例所需具備的用例要素;

      依據(jù)所述用例要素生成相應的測試用例。

      生成測試用例需要具備用例要素,而用例要素所包括的具體信息可從故障模型中獲取,但是故障模型中所涵蓋的相應信息與用例要素的相應格式或字段不相符,因而在生成測試用例之前,需要從故障模型中提取生成測試用例所需的信息,并轉(zhuǎn)換成符合用例要素的格式,從而生成相應的測試用例。

      具體地,舉例來說,對于Android終端應用測試用例的生成。在歷史產(chǎn)品的測試過程中,曾發(fā)現(xiàn)過這樣的故障:androidV4.2版本在應用運行(ART)模式下出現(xiàn)應用閃退問題。通過本發(fā)明實施例的測試用例的生成方法,進行故障模型匹配后,會自動生成針對AndroidV4.2版本在ART模式下進行應用閃退測試的測試用例,會有效避免同樣問題在后續(xù)同類產(chǎn)品的重復出現(xiàn)。

      另外,對于業(yè)務系統(tǒng)賬號信息安全測試用例的生成。在同類產(chǎn)品中,曾出現(xiàn)過這樣的故障:用戶的賬號密碼信息,在接口交互過程中因為只做了單程校驗,可以被旁路截獲并篡改,導致權限泄露。通過本系統(tǒng)的故障模型匹配,在同類采用接口驗證的場景下,會自動生成中途截獲接口內(nèi)容并修改進行權限泄露測試的測試用例,從而能夠可以有效避免同樣的問題在同類型產(chǎn)品中的重復出現(xiàn)。

      實施例二

      依據(jù)本發(fā)明實施例的另一個方面,還提供了一種測試用例的生成裝置,如圖2所示,該裝置200包括:

      故障模型生成模塊201,用于采集歷史故障數(shù)據(jù)并依據(jù)所述歷史故障數(shù)據(jù)生成易發(fā)故障模型,其中,所述易發(fā)故障為發(fā)生頻數(shù)超過預定閾值的故障;

      獲取模塊202,用于獲取待測試產(chǎn)品的產(chǎn)品特征;

      匹配模塊203,用于根據(jù)所述產(chǎn)品特征從所述故障模型中查詢與所述待測試產(chǎn)品的產(chǎn)品特征相匹配的故障模型;

      測試用例生成模塊204,用于根據(jù)所述故障模型生成相應的測試用例。

      其中,如圖3所示,所述故障模型生成模塊201包括:

      統(tǒng)計和分析單元2011,用于根據(jù)所述歷史故障數(shù)據(jù)獲取故障的頻數(shù)信息,并依據(jù)故障發(fā)生頻數(shù)的預定閾值確定易發(fā)故障;

      獲取單元2012,用于將至少一個預設產(chǎn)品特征作為觸發(fā)所述易發(fā)故障發(fā)生的至少一個特征條件;

      更新單元2013,用于對所述特征條件和所述故障范圍進行匹配,并遞歸更新與所述特征條件相匹配的故障范圍;

      建模單元2014,用于當任一所述特征條件匹配完成后,對更新后的所述故障范圍內(nèi)的存在數(shù)據(jù),進行建模計算,生成易發(fā)故障模型。

      其中,如圖4所示,所述更新單元2013包括:

      讀取子單元20131,用于讀取一所述特征條件;

      第一查詢子單元20132,用于依據(jù)所述特征條件,通過查詢算法查詢符合所述特征條件的故障范圍;

      第一更新子單元20133,用于若存在與所述特征條件相匹配的故障范圍,則更新當前所述故障范圍;

      第二查詢子單元20134,用于查詢是否存在未進行匹配的所述特征條件;

      第二更新子單元20135,用于若存在未進行匹配的所述特征條件,則對所述特征條件和故障范圍進行匹配,并更新與所述特征條件相匹配的故障范圍。

      其中,所述測試用例生成模塊204具體用于:

      依據(jù)所述故障模型,獲取生成所述測試用例所需具備的用例要素;

      依據(jù)所述用例要素生成相應的測試用例。

      其中,所述歷史故障數(shù)據(jù)包括:故障所適用的產(chǎn)品類型、產(chǎn)品開發(fā)所使用的語言及版本、產(chǎn)品使用的平臺、中間件及版本、故障引入原因、故障觸發(fā)條件、故障所對應的功能點功能說明和/或故障現(xiàn)象說明。

      其中,所述產(chǎn)品特征包括:產(chǎn)品類型、語言版本、平臺中間件版本、產(chǎn)品功能點和/或類型清單。

      以上所述的是本發(fā)明的優(yōu)選實施方式,應當指出對于本技術領域的普通人員來說,在不脫離本發(fā)明所述的原理前提下還可以作出若干改進和潤飾,這些改進和潤飾也在本發(fā)明的保護范圍內(nèi)。

      當前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1