国产精品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>

      測(cè)試用例生成方法及系統(tǒng)與流程

      文檔序號(hào):12123603閱讀:491來源:國知局
      測(cè)試用例生成方法及系統(tǒng)與流程

      本發(fā)明涉及軟件測(cè)試技術(shù)領(lǐng)域,具體設(shè)計(jì)一種具有自學(xué)習(xí)功能的測(cè)試用例生成方法及系統(tǒng)。



      背景技術(shù):

      發(fā)明人在實(shí)現(xiàn)本發(fā)明的過程中發(fā)現(xiàn),現(xiàn)有自動(dòng)化軟件測(cè)試都是通過測(cè)試人員自己編寫測(cè)試用例,人工進(jìn)行操作。具體過程為:測(cè)試人員執(zhí)行操作對(duì)待測(cè)試軟件進(jìn)行測(cè)試,測(cè)試人員人工記錄所執(zhí)行的操作及對(duì)應(yīng)的結(jié)果,根據(jù)執(zhí)行的操作和對(duì)應(yīng)的結(jié)果編寫測(cè)試用例。這種方式測(cè)試效率較低,還不便于對(duì)測(cè)試用例進(jìn)行調(diào)整,測(cè)試用例的維護(hù)成本較高。因此,有必要改進(jìn)現(xiàn)有技術(shù)中的缺陷。



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

      本發(fā)明實(shí)施例提供一種測(cè)試用例生成方法及系統(tǒng),以解決現(xiàn)有技術(shù)中測(cè)試人員需人工操作導(dǎo)致的效率低、維護(hù)成本高的技術(shù)問題。

      為解決上述技術(shù)問題,本發(fā)明實(shí)施例提供一種測(cè)試用例生成方法,包括如下步驟:

      獲取待測(cè)試軟件的運(yùn)行環(huán)境參數(shù);

      獲取所述待測(cè)試軟件的至少兩組輸入控件數(shù)據(jù)序列,以及響應(yīng)于每一組所述控件數(shù)據(jù)序列得到的所述待測(cè)試軟件的至少兩組輸出操作事件序列;

      訓(xùn)練所述至少兩組控件數(shù)據(jù)序列,得到輸入訓(xùn)練模型,訓(xùn)練所述至少兩組操作事件序列,得到輸出訓(xùn)練模型;

      根據(jù)所述輸入訓(xùn)練模型和所述輸出訓(xùn)練模型獲取所述待測(cè)試軟件在所述運(yùn)行環(huán)境參數(shù)下的測(cè)試用例。

      可選地,上述測(cè)試用例生成方法中,所述訓(xùn)練所述至少兩組控件數(shù)據(jù)序列,得到輸入訓(xùn)練模型包括:

      根據(jù)預(yù)設(shè)輸入特征屬性集合解析每一組所述控件數(shù)據(jù)序列,得到每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù);其中,所述控件數(shù)據(jù)序列的特征數(shù)據(jù)包括與每一所述輸入特征屬性對(duì)應(yīng)的特征值;

      根據(jù)所述輸入特征屬性及每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù),得到所述輸入訓(xùn)練模型。

      可選地,上述測(cè)試用例生成方法中,所述根據(jù)所述輸入特征屬性及每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù),得到所述輸入訓(xùn)練模型包括:

      獲取每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù)中與同一輸入特征屬性對(duì)應(yīng)的所有特征值,將所有特征值的均值作為與該輸入特征屬性對(duì)應(yīng)的訓(xùn)練特征值;

      根據(jù)每一輸入特征屬性及其對(duì)應(yīng)的訓(xùn)練特征值,得到所述輸入訓(xùn)練模型。

      可選地,上述測(cè)試用例生成方法中,所述根據(jù)所述輸入特征屬性及每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù),得到所述輸入訓(xùn)練模型包括:

      獲取每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù)中與同一輸入特征屬性對(duì)應(yīng)的所有特征值,根據(jù)所有特征值得到訓(xùn)練特征值范圍;

      根據(jù)每一輸入特征屬性及其對(duì)應(yīng)的訓(xùn)練特征值范圍,得到所述輸入訓(xùn)練模型。

      可選地,上述測(cè)試用例生成方法中,所述獲取每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù)中與同一輸入特征屬性對(duì)應(yīng)的所有特征值,根據(jù)所有特征值得到訓(xùn)練特征值范圍包括:

      根據(jù)所有特征值中的最大值和最小值得到所述訓(xùn)練特征值范圍;或,

      根據(jù)所有特征值得到特征值均值,根據(jù)所述特征值均值及允許浮動(dòng)值得到訓(xùn)練特征值范圍。

      可選地,上述測(cè)試用例生成方法中,所述訓(xùn)練所述至少兩組操作事件序列,得到輸出訓(xùn)練模型包括:

      根據(jù)預(yù)設(shè)輸出特征屬性集合解析每一組所述操作事件序列,得到每一組所述操作事件序列的特征數(shù)據(jù);其中,所述操作事件序列的特征數(shù)據(jù)包括與每一所述輸出特征屬性對(duì)應(yīng)的特征值;

      根據(jù)所述輸出特征屬性及每一組所述操作事件序列的特征數(shù)據(jù),得到所述輸出訓(xùn)練模型。

      本發(fā)明實(shí)施例還提供一種測(cè)試用例生成裝置,包括:

      環(huán)境參數(shù)獲取模塊,獲取待測(cè)試軟件的運(yùn)行環(huán)境參數(shù);

      序列獲取模塊,獲取所述待測(cè)試軟件的至少兩組輸入控件數(shù)據(jù)序列,以及響應(yīng)于每一組所述控件數(shù)據(jù)序列得到的所述待測(cè)試軟件的至少兩組輸出操作事件序列;

      訓(xùn)練模塊,訓(xùn)練所述至少兩組控件數(shù)據(jù)序列,得到輸入訓(xùn)練模型,訓(xùn)練所述至少兩組操作事件序列,得到輸出訓(xùn)練模型;

      用例生成模塊,根據(jù)所述輸入訓(xùn)練模型和所述輸出訓(xùn)練模型獲取所述待測(cè)試軟件在所述運(yùn)行環(huán)境參數(shù)下的測(cè)試用例。

      可選地,上述的測(cè)試用例生成裝置中,所述訓(xùn)練模塊用于:

      根據(jù)預(yù)設(shè)輸入特征屬性集合解析每一組所述控件數(shù)據(jù)序列,得到每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù);其中,所述控件數(shù)據(jù)序列的特征數(shù)據(jù)包括與每一所述輸入特征屬性對(duì)應(yīng)的特征值;

      根據(jù)所述輸入特征屬性及每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù),得到所述輸入訓(xùn)練模型。

      可選地,上述的測(cè)試用例生成裝置中,所述訓(xùn)練模塊具體用于:

      獲取每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù)中與同一輸入特征屬性對(duì)應(yīng)的所有特征值,將所有特征值的均值作為與該輸入特征屬性對(duì)應(yīng)的訓(xùn)練特征值;

      根據(jù)每一輸入特征屬性及其對(duì)應(yīng)的訓(xùn)練特征值,得到所述輸入訓(xùn)練模型。

      可選地,上述的測(cè)試用例生成裝置中,所述訓(xùn)練模塊具體用于:

      獲取每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù)中與同一輸入特征屬性對(duì)應(yīng)的所有特征值,根據(jù)所有特征值得到訓(xùn)練特征值范圍;

      根據(jù)每一輸入特征屬性及其對(duì)應(yīng)的訓(xùn)練特征值范圍,得到所述輸入訓(xùn)練模型。

      可選地,上述的測(cè)試用例生成裝置中,所述訓(xùn)練模塊具體用于:

      根據(jù)所有特征值中的最大值和最小值得到所述訓(xùn)練特征值范圍;或,

      根據(jù)所有特征值得到特征值均值,根據(jù)所述特征值均值及允許浮動(dòng)值得到訓(xùn)練特征值范圍。

      可選地,上述的測(cè)試用例生成裝置中,所述訓(xùn)練模塊還用于:

      根據(jù)預(yù)設(shè)輸出特征屬性集合解析每一組所述操作事件序列,得到每一組所述操作事件序列的特征數(shù)據(jù);其中,所述操作事件序列的特征數(shù)據(jù)包括與每一所述輸出特征屬性對(duì)應(yīng)的特征值;

      根據(jù)所述輸出特征屬性及每一組所述操作事件序列的特征數(shù)據(jù),得到所述輸出訓(xùn)練模型。

      本發(fā)明實(shí)施例的上述方案與現(xiàn)有技術(shù)相比,至少具有以下有益效果:

      本發(fā)明實(shí)施例所述的測(cè)試用例生成方法及系統(tǒng),其中的測(cè)試用例生成方法,在生成某一待測(cè)試軟件的測(cè)試用例時(shí),獲取待測(cè)試軟件的運(yùn)行環(huán)境參數(shù),及至少兩組輸入控件數(shù)據(jù)序列,以及響應(yīng)于每一組所述控件數(shù)據(jù)序列得到的所述待測(cè)試軟件的至少兩組輸出操作事件序列;訓(xùn)練控件數(shù)據(jù)序列得到輸入訓(xùn)練模型;訓(xùn)練操作事件序列得到輸出訓(xùn)練模型;根據(jù)輸入訓(xùn)練模型和輸出訓(xùn)練模型所述待測(cè)試軟件在所述運(yùn)行環(huán)境參數(shù)下的測(cè)試用例。通過本發(fā)明實(shí)施例上述方案,測(cè)試人員只需要對(duì)待測(cè)試軟件進(jìn)行操作,通過本發(fā)明實(shí)施例能夠自動(dòng)記錄輸入操作及對(duì)應(yīng)的輸出結(jié)果,并自動(dòng)訓(xùn)練輸入控件數(shù)據(jù)序列和輸出操作事件序列得到對(duì)應(yīng)訓(xùn)練模型,根據(jù)訓(xùn)練模型能夠即可得到測(cè)試用例,從而能夠大大減少測(cè)試人員的工作量,提高測(cè)試效率,降低測(cè)試用例的維護(hù)成本。

      附圖說明

      圖1是本發(fā)明一個(gè)實(shí)施例所述的測(cè)試用例生成方法的流程圖;

      圖2是本發(fā)明一個(gè)實(shí)施例所述的到輸入訓(xùn)練模型方法流程圖;

      圖3是本發(fā)明一個(gè)實(shí)施例所述的自動(dòng)化測(cè)試方法的流程圖;

      圖4是本發(fā)明一個(gè)實(shí)施例所述的自動(dòng)化測(cè)試系統(tǒng)的原理框圖。

      具體實(shí)施方式

      本發(fā)明實(shí)施例所述的測(cè)試用例生成方法及系統(tǒng),用于對(duì)待測(cè)軟件進(jìn)行測(cè)試的終端設(shè)備中。通過本發(fā)明實(shí)施例所述的測(cè)試用例生成方法將測(cè)試人員執(zhí)行的測(cè)試操作過程進(jìn)行對(duì)象化模型化處理,根據(jù)模型化處理結(jié)果即可得到測(cè)試用例,下面通過具體實(shí)施例并結(jié)合說明書附圖對(duì)本發(fā)明的方案進(jìn)行詳細(xì)說明。

      實(shí)施例1

      本實(shí)施例提供一種測(cè)試用例生成方法,應(yīng)用于安裝了待測(cè)試軟件的終端設(shè)備中,如圖1所示,包括如下步驟:

      S101:獲取待測(cè)試軟件的運(yùn)行環(huán)境參數(shù)。所述環(huán)境參數(shù)包括軟件運(yùn)行所要求的各種條件,包括軟件環(huán)境和硬件環(huán)境。譬如各種操作系統(tǒng)、cpu型號(hào)及物理參數(shù),對(duì)內(nèi)存的要求等。而許多應(yīng)用軟件不僅僅要求硬件條件,還需要軟件環(huán)境的條件的支持,比如windows支持的軟件linux不一定支持,蘋果的軟件只能在蘋果機(jī)上運(yùn)行,如果這些軟件想跨平臺(tái)運(yùn)行,必須修改軟件本身,或者模擬它所需要的軟件環(huán)境。

      S102:獲取所述待測(cè)試軟件的至少兩組輸入控件數(shù)據(jù)序列,以及響應(yīng)于每一組所述控件數(shù)據(jù)序列得到的所述待測(cè)試軟件的至少兩組輸出操作事件序列;本步驟中,可根據(jù)測(cè)試人員實(shí)際的輸入操作得到控件數(shù)據(jù)序列,具體地在終端設(shè)備中,預(yù)先已經(jīng)定義好針對(duì)每一種操作方式,其代碼化后對(duì)應(yīng)的數(shù)據(jù)序列,因此只要識(shí)別出測(cè)試人員的輸入操作,根據(jù)已有定義方式,即可得到控件數(shù)據(jù)序列。而對(duì)于本實(shí)施例中的方案來說,獲取越多組的控件數(shù)據(jù)序列、操作事件序列得到訓(xùn)練結(jié)果會(huì)越準(zhǔn)確,但是需要處理的數(shù)據(jù)量也就越大,在實(shí)際情況中可根據(jù)終端設(shè)備的數(shù)據(jù)能力選擇控件數(shù)據(jù)序列、操作事件序列的組數(shù)。

      S103:訓(xùn)練所述至少兩組控件數(shù)據(jù)序列,得到輸入訓(xùn)練模型,訓(xùn)練所述至少兩組操作事件序列,得到輸出訓(xùn)練模型;本步驟中將所述控件數(shù)據(jù)序列作為樣本數(shù)據(jù),選擇特定的數(shù)學(xué)模型作為計(jì)算框架,通過數(shù)據(jù)優(yōu)化計(jì)算框架中的參數(shù),使得計(jì)算框架得到的結(jié)果符合實(shí)際需求。例如可選擇模式識(shí)別算法實(shí)現(xiàn),具體的可以選擇模式識(shí)別算法中的自組織神經(jīng)網(wǎng)絡(luò)算法實(shí)現(xiàn)。對(duì)操作事件序列的訓(xùn)練方式可以和控件數(shù)據(jù)序列的訓(xùn)練方法相同,也可以不同。如果控件數(shù)據(jù)序列、操作事件序列采用相同的訓(xùn)練方法,可以簡(jiǎn)化訓(xùn)練過程,如果采用不同的訓(xùn)練方法,需要引入至少兩種訓(xùn)練模型,使訓(xùn)練過程稍微復(fù)雜一些。

      S104:根據(jù)所述輸入訓(xùn)練模型和所述輸出訓(xùn)練模型獲取所述待測(cè)試軟件在所述運(yùn)行環(huán)境參數(shù)下的測(cè)試用例。

      下面以手機(jī)解鎖軟件作為待測(cè)試軟件進(jìn)行說明。

      現(xiàn)有的智能手機(jī),可以通過滑動(dòng)解鎖塊的方法實(shí)現(xiàn)解鎖操作。針對(duì)該軟件進(jìn)行測(cè)試,輸入操作即為滑動(dòng)解鎖塊,對(duì)滑動(dòng)解鎖塊進(jìn)行代碼化處理后得到與滑動(dòng)解鎖塊對(duì)應(yīng)的控件數(shù)據(jù)序列。而得到的輸出結(jié)果為解鎖進(jìn)入主界面。運(yùn)行環(huán)境為手機(jī)的軟件環(huán)境和硬件環(huán)境。本方法對(duì)多次“滑動(dòng)解鎖模塊”的操作對(duì)應(yīng)的控件數(shù)據(jù)序列進(jìn)行訓(xùn)練得到輸入訓(xùn)練模型。并對(duì)“解鎖進(jìn)入主界面”對(duì)應(yīng)的操作事件序列進(jìn)行訓(xùn)練得到輸出訓(xùn)練模型,輸入訓(xùn)練模型和輸出訓(xùn)練模型的對(duì)應(yīng)條件則為手機(jī)的軟件環(huán)境和硬件環(huán)境,由此形成測(cè)試用例。在利用該測(cè)試用例進(jìn)行測(cè)試時(shí),測(cè)試人員執(zhí)行滑動(dòng)解鎖操作,與對(duì)應(yīng)的輸入訓(xùn)練模型匹配,那么根據(jù)對(duì)應(yīng)的輸出訓(xùn)練模型獲取的操作事件序列即為進(jìn)入主界面,將其作為期望的輸出結(jié)果,通過獲取實(shí)際的輸出結(jié)果和期望的輸出結(jié)果進(jìn)行比對(duì),獲得自動(dòng)化測(cè)試結(jié)果。例如,實(shí)際的輸入操作為滑動(dòng)解鎖模塊,期望的輸出結(jié)果為進(jìn)入主界面,實(shí)際的輸出結(jié)果如果為進(jìn)入主界面,則與期望的輸出結(jié)果相同,那么針對(duì)此測(cè)試用例,該軟件測(cè)試結(jié)果是合格的。反之,如果在滑動(dòng)解鎖模塊的輸入操作下,沒有進(jìn)入主界面,而是出現(xiàn)了其他的輸出結(jié)果,那么針對(duì)此測(cè)試用例,該軟件測(cè)試的結(jié)果是不合格的。

      采用本實(shí)施例中的上述方案,能夠自動(dòng)生成測(cè)試用例,測(cè)試人員只需要對(duì)待測(cè)試軟件進(jìn)行操作,通過本發(fā)明實(shí)施例能夠自動(dòng)記錄輸入操作及對(duì)應(yīng)的輸出結(jié)果,并采用模式識(shí)別算法例如自組織神經(jīng)網(wǎng)絡(luò)訓(xùn)練得到與輸入控件數(shù)據(jù)序列和輸出操作事件序列對(duì)應(yīng)的特定對(duì)象模式,得到訓(xùn)練模型,根據(jù)訓(xùn)練模型能夠得到測(cè)試用例。從而能夠大大減少測(cè)試人員的工作量,提高測(cè)試效率,降低測(cè)試用例的維護(hù)成本。

      實(shí)施例2

      本實(shí)施例提供測(cè)試用例生成方法,在實(shí)施例1中的步驟S103中,所述訓(xùn)練所述至少兩組控件數(shù)據(jù)序列,得到輸入訓(xùn)練模型可通過如下方式實(shí)現(xiàn):

      S201:根據(jù)預(yù)設(shè)輸入特征屬性集合解析每一組所述控件數(shù)據(jù)序列,得到每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù);其中,所述控件數(shù)據(jù)序列的特征數(shù)據(jù)包括與每一所述輸入特征屬性對(duì)應(yīng)的特征值。

      S202:根據(jù)所述輸入特征屬性及每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù),得到所述輸入訓(xùn)練模型。

      其中預(yù)設(shè)輸入特征屬性集合,為預(yù)先存儲(chǔ)在終端設(shè)備中的,對(duì)于不同的終端設(shè)備、不同待測(cè)試軟件,其輸入屬性特征可能有所不同。例如,對(duì)于帶有觸摸屏的終端設(shè)備,其中輸入可包括滑動(dòng)操作,那么針對(duì)滑動(dòng)操作的輸入特征屬性可能包括:觸摸屏幕,移動(dòng)距離,初始坐標(biāo),最終坐標(biāo),觸摸力度,觸摸時(shí)間等等。根據(jù)上述特征屬性對(duì)多次滑動(dòng)操作對(duì)應(yīng)的控件數(shù)據(jù)序列進(jìn)行訓(xùn)練,得到輸入訓(xùn)練模型,根據(jù)該輸入訓(xùn)練模型可以確定某一操作是否與滑動(dòng)操作匹配。檢測(cè)到輸入操作時(shí),根據(jù)上述輸入特征屬性對(duì)輸入操作進(jìn)行解析,如果執(zhí)行的是滑動(dòng)操作,能夠獲得輸入操作中與上述輸入特征屬性對(duì)應(yīng)的解析結(jié)果。

      可選地,S202可通過如下方式實(shí)現(xiàn):

      S2021:獲取每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù)中與同一輸入特征屬性對(duì)應(yīng)的所有特征值,將所有特征值的均值作為與該輸入特征屬性對(duì)應(yīng)的訓(xùn)練特征值。例如,針對(duì)選中某一按鈕或圖標(biāo)的操作,則可將特征屬性定為:觸摸點(diǎn)所在位置的坐標(biāo)值。如果共有十組控件數(shù)據(jù)序列,則根據(jù)這十組控件數(shù)據(jù)序列中,觸摸點(diǎn)所在位置的坐標(biāo)求平均值得到一個(gè)均值,該均值即可作為訓(xùn)練特征值。

      S2022:根據(jù)每一輸入特征屬性及其對(duì)應(yīng)的訓(xùn)練特征值,得到所述輸入訓(xùn)練模型。即如果當(dāng)某一點(diǎn)擊操作中,觸摸點(diǎn)所在位置的坐標(biāo)值與對(duì)應(yīng)的訓(xùn)練特征值相同,可認(rèn)為其輸入的是選中該按鈕或坐標(biāo)的操作。

      可選地,S202還可通過如下方式實(shí)現(xiàn):

      S202A:獲取每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù)中與同一輸入特征屬性對(duì)應(yīng)的所有特征值,根據(jù)所有特征值得到訓(xùn)練特征值范圍。具體地,根據(jù)所有特征值中的最大值和最小值得到所述訓(xùn)練特征值范圍;例如,某一屬性特征為觸摸力度,十組控件數(shù)據(jù)序列中的十個(gè)力度值中,以最小值作為訓(xùn)練特征值范圍中的下限值,以最大值作為訓(xùn)練特征值范圍中的上限值。或,根據(jù)所有特征值得到特征值均值,根據(jù)所述特征值均值及允許浮動(dòng)值得到訓(xùn)練特征值范圍。例如,某一屬性特征為觸摸力度,十組控件數(shù)據(jù)序列中的十個(gè)力度值的均值為5N,允許浮動(dòng)值為1N,則訓(xùn)練特征值范圍為4N-6N。還可以選擇其他方式,例如對(duì)于某些特征值與特征值均值差異較大的控件數(shù)據(jù)序列,可以將其舍棄,以剩余的控件數(shù)據(jù)序列的特征數(shù)據(jù)進(jìn)行操作,按照特定的計(jì)算方式,得到訓(xùn)練特征值范圍。

      S202B:根據(jù)每一輸入特征屬性及其對(duì)應(yīng)的訓(xùn)練特征值范圍,得到所述輸入訓(xùn)練模型。采用本實(shí)施例的上述方案,訓(xùn)練方式簡(jiǎn)單有效,可提高訓(xùn)練效率。

      實(shí)施例3

      本實(shí)施例提供測(cè)試用例生成方法,在實(shí)施例1中的步驟S103中,所述訓(xùn)練所述至少兩組操作事件序列,得到輸出訓(xùn)練模型通過以下方式實(shí)現(xiàn):

      S301:根據(jù)預(yù)設(shè)輸出特征屬性集合解析每一組所述操作事件序列,得到每一組所述操作事件序列的特征數(shù)據(jù);其中,所述操作事件序列的特征數(shù)據(jù)包括與每一所述輸出特征屬性對(duì)應(yīng)的特征值。對(duì)于輸出特征集合來說,理論上都是確定的操作事件序列。例如,對(duì)于滑動(dòng)解鎖操作來說,其輸出的操作事件序列必然是與“解鎖進(jìn)入主界面”這一結(jié)果相對(duì)應(yīng)的操作事件序列,所以理論上如果針對(duì)某一測(cè)試用例來說,其理論的輸出結(jié)果對(duì)應(yīng)的操作事件序列應(yīng)該是相同的。

      S302:根據(jù)所述輸出特征屬性及每一組所述操作事件序列的特征數(shù)據(jù),得到所述輸出訓(xùn)練模型。

      具體地,訓(xùn)練方式可以和實(shí)施例2中對(duì)控件數(shù)據(jù)序列的訓(xùn)練方式相同,只是特征屬性是根據(jù)輸出結(jié)果來預(yù)先確定的,本實(shí)施例中不再詳細(xì)論述。采用相同的訓(xùn)練方式對(duì)控件數(shù)據(jù)序列和操作事件序列進(jìn)行訓(xùn)練,可采用較少的訓(xùn)練模型,有助于提高訓(xùn)練效率。

      實(shí)施例4

      本實(shí)施例提供一種測(cè)試用例生成裝置,用于終端設(shè)備中,所述終端設(shè)備中安裝有待測(cè)試軟件,如圖3所示,包括:

      環(huán)境參數(shù)獲取模塊301,獲取待測(cè)試軟件的運(yùn)行環(huán)境參數(shù);所述環(huán)境參數(shù)包括軟件運(yùn)行所要求的各種條件,包括軟件環(huán)境和硬件環(huán)境。譬如各種操作系統(tǒng)、cpu型號(hào)及物理參數(shù),對(duì)內(nèi)存的要求等。而許多應(yīng)用軟件不僅僅要求硬件條件,還需要軟件環(huán)境的條件的支持,比如windows支持的軟件linux不一定支持,蘋果的軟件只能在蘋果機(jī)上運(yùn)行,如果這些軟件想跨平臺(tái)運(yùn)行,必須修改軟件本身,或者模擬它所需要的軟件環(huán)境。

      序列獲取模塊302,獲取所述待測(cè)試軟件的至少兩組輸入控件數(shù)據(jù)序列,以及響應(yīng)于每一組所述控件數(shù)據(jù)序列得到的所述待測(cè)試軟件的至少兩組輸出操作事件序列;可根據(jù)測(cè)試人員實(shí)際的輸入操作得到控件數(shù)據(jù)序列,具體地在終端設(shè)備中,預(yù)先已經(jīng)定義好針對(duì)每一種操作方式,其代碼化后對(duì)應(yīng)的數(shù)據(jù)序列,因此只要識(shí)別出測(cè)試人員的輸入操作,根據(jù)已有定義方式,即可得到控件數(shù)據(jù)序列。而對(duì)于本實(shí)施例中的方案來說,獲取越多組的控件數(shù)據(jù)序列、操作事件序列得到訓(xùn)練結(jié)果會(huì)越準(zhǔn)確,但是需要處理的數(shù)據(jù)量也就越大,在實(shí)際情況中可根據(jù)終端設(shè)備的數(shù)據(jù)能力選擇控件數(shù)據(jù)序列、操作事件序列的組數(shù)。

      訓(xùn)練模塊303,訓(xùn)練所述至少兩組控件數(shù)據(jù)序列,得到輸入訓(xùn)練模型,訓(xùn)練所述至少兩組操作事件序列,得到輸出訓(xùn)練模型;將所述控件數(shù)據(jù)序列作為樣本數(shù)據(jù),選擇特定的數(shù)學(xué)模型作為計(jì)算框架,通過數(shù)據(jù)優(yōu)化計(jì)算框架中的參數(shù),使得計(jì)算框架得到的結(jié)果符合實(shí)際需求。例如可選擇模式識(shí)別算法實(shí)現(xiàn),具體的可以選擇模式識(shí)別算法中的自組織神經(jīng)網(wǎng)絡(luò)算法實(shí)現(xiàn)。對(duì)操作事件序列的訓(xùn)練方式可以和控件數(shù)據(jù)序列的訓(xùn)練方法相同,也可以不同。如果控件數(shù)據(jù)序列、操作事件序列采用相同的訓(xùn)練方法,可以簡(jiǎn)化訓(xùn)練過程,如果采用不同的訓(xùn)練方法,需要引入至少兩種訓(xùn)練模型,使訓(xùn)練過程稍微復(fù)雜一些。

      用例生成模塊304,根據(jù)所述輸入訓(xùn)練模型和所述輸出訓(xùn)練模型獲取所述待測(cè)試軟件在所述運(yùn)行環(huán)境參數(shù)下的測(cè)試用例。

      采用本實(shí)施例中的上述方案,能夠自動(dòng)生成測(cè)試用例,測(cè)試人員只需要對(duì)待測(cè)試軟件進(jìn)行操作,通過本發(fā)明實(shí)施例能夠自動(dòng)記錄輸入操作及對(duì)應(yīng)的輸出結(jié)果,并采用模式識(shí)別算法例如自組織神經(jīng)網(wǎng)絡(luò)訓(xùn)練得到與輸入控件數(shù)據(jù)序列和輸出操作事件序列對(duì)應(yīng)的特定對(duì)象模式,得到訓(xùn)練模型,根據(jù)訓(xùn)練模型能夠得到測(cè)試用例。從而能夠大大減少測(cè)試人員的工作量,提高測(cè)試效率,降低測(cè)試用例的維護(hù)成本。

      作為一種優(yōu)選的方案,所述訓(xùn)練模塊303用于:

      根據(jù)預(yù)設(shè)輸入特征屬性集合解析每一組所述控件數(shù)據(jù)序列,得到每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù);其中,所述控件數(shù)據(jù)序列的特征數(shù)據(jù)包括與每一所述輸入特征屬性對(duì)應(yīng)的特征值;

      根據(jù)所述輸入特征屬性及每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù),得到所述輸入訓(xùn)練模型。

      其中預(yù)設(shè)輸入特征屬性集合,為預(yù)先存儲(chǔ)在終端設(shè)備中的,對(duì)于不同的終端設(shè)備、不同待測(cè)試軟件,其輸入屬性特征可能有所不同。例如,對(duì)于帶有觸摸屏的終端設(shè)備,其中輸入可包括滑動(dòng)操作,那么針對(duì)滑動(dòng)操作的輸入特征屬性可能包括:觸摸屏幕,移動(dòng)距離,初始坐標(biāo),最終坐標(biāo),觸摸力度,觸摸時(shí)間等等。根據(jù)上述特征屬性對(duì)多次滑動(dòng)操作對(duì)應(yīng)的控件數(shù)據(jù)序列進(jìn)行訓(xùn)練,得到輸入訓(xùn)練模型,根據(jù)該輸入訓(xùn)練模型可以確定某一操作是否與滑動(dòng)操作匹配。檢測(cè)到輸入操作時(shí),根據(jù)上述輸入特征屬性對(duì)輸入操作進(jìn)行解析,如果執(zhí)行的是滑動(dòng)操作,能夠獲得輸入操作中與上述輸入特征屬性對(duì)應(yīng)的解析結(jié)果。

      可選地,所述訓(xùn)練模塊303具體用于:

      獲取每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù)中與同一輸入特征屬性對(duì)應(yīng)的所有特征值,將所有特征值的均值作為與該輸入特征屬性對(duì)應(yīng)的訓(xùn)練特征值;例如,針對(duì)選中某一按鈕或圖標(biāo)的操作,則可將特征屬性定為:觸摸點(diǎn)所在位置的坐標(biāo)值。如果共有十組控件數(shù)據(jù)序列,則根據(jù)這十組控件數(shù)據(jù)序列中,觸摸點(diǎn)所在位置的坐標(biāo)求平均值得到一個(gè)均值,該均值即可作為訓(xùn)練特征值。

      根據(jù)每一輸入特征屬性及其對(duì)應(yīng)的訓(xùn)練特征值,得到所述輸入訓(xùn)練模型。即如果當(dāng)某一點(diǎn)擊操作中,觸摸點(diǎn)所在位置的坐標(biāo)值與對(duì)應(yīng)的訓(xùn)練特征值相同,可認(rèn)為其輸入的是選中該按鈕或坐標(biāo)的操作。

      作為另一種可選的方式,所述訓(xùn)練模塊具體303用于:

      獲取每一組所述控件數(shù)據(jù)序列的特征數(shù)據(jù)中與同一輸入特征屬性對(duì)應(yīng)的所有特征值,根據(jù)所有特征值得到訓(xùn)練特征值范圍;具體地,根據(jù)所有特征值中的最大值和最小值得到所述訓(xùn)練特征值范圍;例如,某一屬性特征為觸摸力度,十組控件數(shù)據(jù)序列中的十個(gè)力度值中,以最小值作為訓(xùn)練特征值范圍中的下限值,以最大值作為訓(xùn)練特征值范圍中的上限值?;颍鶕?jù)所有特征值得到特征值均值,根據(jù)所述特征值均值及允許浮動(dòng)值得到訓(xùn)練特征值范圍。例如,某一屬性特征為觸摸力度,十組控件數(shù)據(jù)序列中的十個(gè)力度值的均值為5N,允許浮動(dòng)值為1N,則訓(xùn)練特征值范圍為4N-6N。還可以選擇其他方式,例如對(duì)于某些特征值與特征值均值差異較大的控件數(shù)據(jù)序列,可以將其舍棄,以剩余的控件數(shù)據(jù)序列的特征數(shù)據(jù)進(jìn)行操作,按照特定的計(jì)算方式,得到訓(xùn)練特征值范圍。

      根據(jù)每一輸入特征屬性及其對(duì)應(yīng)的訓(xùn)練特征值范圍,得到所述輸入訓(xùn)練模型。

      采用本實(shí)施例的上述方案,訓(xùn)練方式簡(jiǎn)單有效,可提高訓(xùn)練效率。

      進(jìn)一步地,所述訓(xùn)練模塊303還用于:

      根據(jù)預(yù)設(shè)輸出特征屬性集合解析每一組所述操作事件序列,得到每一組所述操作事件序列的特征數(shù)據(jù);其中,所述操作事件序列的特征數(shù)據(jù)包括與每一所述輸出特征屬性對(duì)應(yīng)的特征值;

      根據(jù)所述輸出特征屬性及每一組所述操作事件序列的特征數(shù)據(jù),得到所述輸出訓(xùn)練模型。

      對(duì)于輸出特征集合來說,理論上都是確定的操作事件序列。例如,對(duì)于滑動(dòng)解鎖操作來說,其輸出的操作事件序列必然是與“解鎖進(jìn)入主界面”這一結(jié)果相對(duì)應(yīng)的操作事件序列,所以理論上如果針對(duì)某一測(cè)試用例來說,其理論的輸出結(jié)果對(duì)應(yīng)的操作事件序列應(yīng)該是相同的。具體地,訓(xùn)練方式可以和對(duì)控件數(shù)據(jù)序列的訓(xùn)練方式相同,只是特征屬性是根據(jù)輸出結(jié)果來預(yù)先確定的,本實(shí)施例中不再詳細(xì)論述。采用相同的訓(xùn)練方式對(duì)控件數(shù)據(jù)序列和操作事件序列進(jìn)行訓(xùn)練,可采用較少的訓(xùn)練模型,有助于提高訓(xùn)練效率。

      實(shí)施例5

      本申請(qǐng)實(shí)施例提供了一種非易失性計(jì)算機(jī)存儲(chǔ)介質(zhì),所述計(jì)算機(jī)存儲(chǔ)介質(zhì)存儲(chǔ)有計(jì)算機(jī)可執(zhí)行指令,該計(jì)算機(jī)可執(zhí)行指令可執(zhí)行上述任意方法實(shí)施例中的測(cè)試用例生成方法。

      實(shí)施例6

      圖4是本實(shí)施例提供的執(zhí)行測(cè)試用例生成方法的電子設(shè)備的硬件結(jié)構(gòu)示意圖,如圖4所示,該設(shè)備包括:

      一個(gè)或多個(gè)處理器401以及存儲(chǔ)器402,圖4中以一個(gè)處理器401為例。

      執(zhí)行測(cè)試用例生成方法的設(shè)備還可以包括:輸入裝置403和輸出裝置404。

      處理器401、存儲(chǔ)器402、輸入裝置403和輸出裝置404可以通過總線或者其他方式連接,圖4中以通過總線連接為例。

      存儲(chǔ)器402作為一種非易失性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),可用于存儲(chǔ)非易失性軟件程序、非易失性計(jì)算機(jī)可執(zhí)行程序以及模塊,如本申請(qǐng)實(shí)施例中的測(cè)試用例生成方法對(duì)應(yīng)的程序指令/模塊(例如,附圖3所示的環(huán)境參數(shù)獲取模塊301、序列獲取模塊302、訓(xùn)練模塊303和用例生成模塊304)。處理器401通過運(yùn)行存儲(chǔ)在存儲(chǔ)器402中的非易失性軟件程序、指令以及模塊,從而執(zhí)行服務(wù)器的各種功能應(yīng)用以及數(shù)據(jù)處理,即實(shí)現(xiàn)上述方法實(shí)施例測(cè)試用例生成方法。

      存儲(chǔ)器402可以包括存儲(chǔ)程序區(qū)和存儲(chǔ)數(shù)據(jù)區(qū),其中,存儲(chǔ)程序區(qū)可存儲(chǔ)操作系統(tǒng)、至少一個(gè)功能所需要的應(yīng)用程序;存儲(chǔ)數(shù)據(jù)區(qū)可存儲(chǔ)根據(jù)測(cè)試用例生成裝置的使用所創(chuàng)建的數(shù)據(jù)等。此外,存儲(chǔ)器402可以包括高速隨機(jī)存取存儲(chǔ)器,還可以包括非易失性存儲(chǔ)器,例如至少一個(gè)磁盤存儲(chǔ)器件、閃存器件、或其他非易失性固態(tài)存儲(chǔ)器件。在一些實(shí)施例中,存儲(chǔ)器402可選包括相對(duì)于處理器401遠(yuǎn)程設(shè)置的存儲(chǔ)器,這些遠(yuǎn)程存儲(chǔ)器可以通過網(wǎng)絡(luò)連接至列表項(xiàng)操作的處理裝置。上述網(wǎng)絡(luò)的實(shí)例包括但不限于互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、局域網(wǎng)、移動(dòng)通信網(wǎng)及其組合。

      輸入裝置403可接收輸入的數(shù)字或字符信息,以及產(chǎn)生與測(cè)試用例生成裝置的用戶設(shè)置以及功能控制有關(guān)的鍵信號(hào)輸入。輸出裝置404可包括顯示屏等顯示設(shè)備。

      所述一個(gè)或者多個(gè)模塊存儲(chǔ)在所述存儲(chǔ)器402中,當(dāng)被所述一個(gè)或者多個(gè)處理器401執(zhí)行時(shí),執(zhí)行上述任意方法實(shí)施例中的測(cè)試用例生成方法。

      上述產(chǎn)品可執(zhí)行本申請(qǐng)實(shí)施例所提供的方法,具備執(zhí)行方法相應(yīng)的功能模塊和有益效果。未在本實(shí)施例中詳盡描述的技術(shù)細(xì)節(jié),可參見本申請(qǐng)實(shí)施例所提供的方法。

      本發(fā)明實(shí)施例的電子設(shè)備以多種形式存在,包括但不限于:

      (1)移動(dòng)通信設(shè)備:這類設(shè)備的特點(diǎn)是具備移動(dòng)通信功能,并且以提供話音、數(shù)據(jù)通信為主要目標(biāo)。這類終端包括:智能手機(jī)(例如iPhone)、多媒體手機(jī)、功能性手機(jī),以及低端手機(jī)等。

      (2)超移動(dòng)個(gè)人計(jì)算機(jī)設(shè)備:這類設(shè)備屬于個(gè)人計(jì)算機(jī)的范疇,有計(jì)算和處理功能,一般也具備移動(dòng)上網(wǎng)特性。這類終端包括:PDA、MID和UMPC設(shè)備等,例如iPad。

      (3)便攜式娛樂設(shè)備:這類設(shè)備可以顯示和播放多媒體內(nèi)容。該類設(shè)備包括:音頻、視頻播放器(例如iPod),掌上游戲機(jī),電子書,以及智能玩具和便攜式車載導(dǎo)航設(shè)備。

      (4)服務(wù)器:提供計(jì)算服務(wù)的設(shè)備,服務(wù)器的構(gòu)成包括處理器、硬盤、內(nèi)存、系統(tǒng)總線等,服務(wù)器和通用的計(jì)算機(jī)架構(gòu)類似,但是由于需要提供高可靠的服務(wù),因此在處理能力、穩(wěn)定性、可靠性、安全性、可擴(kuò)展性、可管理性等方面要求較高。

      (5)其他具有數(shù)據(jù)交互功能的電子裝置。

      以上所描述的裝置實(shí)施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來實(shí)現(xiàn)本實(shí)施例方案的目的。

      通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到各實(shí)施方式可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件?;谶@樣的理解,上述技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,如ROM/RAM、磁碟、光盤等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。

      最后應(yīng)說明的是:以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。

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