本發(fā)明涉及網(wǎng)頁(yè)頁(yè)面測(cè)試領(lǐng)域,更具體地涉及一種生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的方法和裝置。
背景技術(shù):
:隨著適配手機(jī)、平板電腦、PC等的網(wǎng)頁(yè)應(yīng)用程序的快速發(fā)展,開發(fā)人員和測(cè)試人員在應(yīng)用測(cè)試上花費(fèi)的時(shí)間和精力越來(lái)越多。不同的系統(tǒng),不同的瀏覽器,不同的屏幕分辨率等導(dǎo)致了很大的困難。測(cè)試人員需要為每個(gè)系統(tǒng)編寫?yīng)毩⒌臏y(cè)試用例,這些測(cè)試用例很難用到其他系統(tǒng)上。在測(cè)試用例的生成中,存在如下問(wèn)題。目前對(duì)于每一個(gè)待測(cè)的系統(tǒng),測(cè)試人員必須手寫很多測(cè)試用例,這是非常耗時(shí)和不便的。而且這些測(cè)試用例并不能重新應(yīng)用在新的工程中,對(duì)于一個(gè)新的工程,測(cè)試人員必須重新編寫用例。這類工作也是非常耗時(shí)的。因此,需要一種能夠輔助測(cè)試人員自動(dòng)或者更智能地生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的方法和裝置。技術(shù)實(shí)現(xiàn)要素:在下文中給出關(guān)于本發(fā)明的簡(jiǎn)要概述,以便提供關(guān)于本發(fā)明的某些方面的基本理解。應(yīng)當(dāng)理解,這個(gè)概述并不是關(guān)于本發(fā)明的窮舉性概述。它并不是意圖確定本發(fā)明的關(guān)鍵或重要部分,也不是意圖限定本發(fā)明的范圍。其目的僅僅是以簡(jiǎn)化的形式給出某些概念,以此作為稍后論述的更詳細(xì)描述的前序。本發(fā)明的一個(gè)主要目的在于,提供了一種生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的方法,包括:基于網(wǎng)頁(yè)頁(yè)面的文檔對(duì)象模型DOM樹提取特征;根據(jù)所提取的特征,基于預(yù)先存儲(chǔ)的分類模型將網(wǎng)頁(yè)頁(yè)面分類為預(yù)設(shè)類別;以及根據(jù)網(wǎng)頁(yè)頁(yè)面被分類的預(yù)設(shè)類別,利用預(yù)設(shè)的測(cè)試用例模板來(lái)生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例。根據(jù)本發(fā)明的一個(gè)方面,提供一種生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的裝置,包括:特征提取單元,被配置為基于待測(cè)試網(wǎng)頁(yè)頁(yè)面的文檔對(duì)象模型DOM樹提取網(wǎng)頁(yè)頁(yè)面所包括的獨(dú)立模塊的特征;分類單元,被配置為根據(jù)所提取的特征,基于預(yù)先存儲(chǔ)的分類模型將獨(dú)立模塊分類為預(yù)設(shè)類別;以及測(cè)試用例生成單元,被配置為根據(jù)獨(dú)立模塊被分類的預(yù)設(shè)類別,利用預(yù)設(shè)的測(cè)試用例模板來(lái)生成獨(dú)立模塊的測(cè)試用例。另外,本發(fā)明的實(shí)施例還提供了用于實(shí)現(xiàn)上述方法的計(jì)算機(jī)程序。此外,本發(fā)明的實(shí)施例還提供了至少計(jì)算機(jī)可讀介質(zhì)形式的計(jì)算機(jī)程序產(chǎn)品,其上記錄有用于實(shí)現(xiàn)上述方法的計(jì)算機(jī)程序代碼。通過(guò)以下結(jié)合附圖對(duì)本發(fā)明的最佳實(shí)施例的詳細(xì)說(shuō)明,本發(fā)明的這些以及其他優(yōu)點(diǎn)將更加明顯。附圖說(shuō)明參照下面結(jié)合附圖對(duì)本發(fā)明實(shí)施例的說(shuō)明,會(huì)更加容易地理解本發(fā)明的以上和其它目的、特點(diǎn)和優(yōu)點(diǎn)。附圖中的部件只是為了示出本發(fā)明的原理。在附圖中,相同的或類似的技術(shù)特征或部件將采用相同或類似的附圖標(biāo)記來(lái)表示。圖1示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的總體框架圖;圖2示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的方法200的示例性過(guò)程的流程圖;圖3示出了訓(xùn)練得到分類模型的一種示例性過(guò)程的流程圖;圖4示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例進(jìn)行訓(xùn)練、分類及生成測(cè)試用例的示意圖;圖5示出了根據(jù)本發(fā)明的另一個(gè)實(shí)施例的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的方法500的示例性過(guò)程的流程圖;圖6是示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的裝置600的示例性配置的框圖;圖7是示出根據(jù)本發(fā)明的另一個(gè)實(shí)施例的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的裝置700的示例性配置的框圖;圖8是示出用于生成分類模型的分類模型訓(xùn)練單元800的示例性配置的框圖;以及圖9是示出可以用于實(shí)施本發(fā)明的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的方法和裝置的計(jì)算設(shè)備的示例性結(jié)構(gòu)圖。具體實(shí)施方式下面參照附圖來(lái)說(shuō)明本發(fā)明的實(shí)施例。在本發(fā)明的一個(gè)附圖或一種實(shí)施方式中描述的元素和特征可以與一個(gè)或更多個(gè)其它附圖或?qū)嵤┓绞街惺境龅脑睾吞卣飨嘟Y(jié)合。應(yīng)當(dāng)注意,為了清楚的目的,附圖和說(shuō)明中省略了與本發(fā)明無(wú)關(guān)的、本領(lǐng)域普通技術(shù)人員已知的部件和處理的表示和描述。本發(fā)明提出了一種能夠輔助測(cè)試人員自動(dòng)或者更智能地生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的方法和裝置。在本發(fā)明,認(rèn)為對(duì)于類似的頁(yè)面模塊,測(cè)試用例也會(huì)是類似的。當(dāng)前的網(wǎng)頁(yè)應(yīng)用越來(lái)越復(fù)雜,一個(gè)頁(yè)面可能包含很多模塊,每個(gè)模塊負(fù)責(zé)一個(gè)獨(dú)立的功能??梢灾塾谶@些獨(dú)立的功能模塊,自動(dòng)生成對(duì)應(yīng)的測(cè)試用例,每個(gè)測(cè)試用例對(duì)應(yīng)于一個(gè)單一的模塊。通過(guò)分析頁(yè)面模塊的分類,可以自動(dòng)生成測(cè)試用例,從而大大提高了工作效率。例如:大多數(shù)的登錄模塊都是類似的,可以根據(jù)這個(gè)類似的特性,使用預(yù)設(shè)的測(cè)試腳本模板去對(duì)應(yīng)登錄模塊,對(duì)于待測(cè)的登錄模塊,自動(dòng)生成可用的測(cè)試腳本。下面結(jié)合附圖詳細(xì)說(shuō)明根據(jù)本發(fā)明的實(shí)施例的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的方法和裝置。圖1示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的總體框架圖。在本發(fā)明中,認(rèn)為每個(gè)網(wǎng)頁(yè)頁(yè)面都包含一個(gè)或多個(gè)部分,比如導(dǎo)航條、廣告欄、主題內(nèi)容等等。每個(gè)部分可以看作一個(gè)獨(dú)立模塊,獨(dú)立模塊是頁(yè)面中負(fù)責(zé)一個(gè)獨(dú)立功能的模塊。通常在一個(gè)測(cè)試用例中,只測(cè)試一個(gè)獨(dú)立模塊。如果要測(cè)試不同的獨(dú)立模塊,通常使用不同的測(cè)試用例。否則的話,測(cè)試用例會(huì)出現(xiàn)混亂,造成很大的維護(hù)成本。通過(guò)分析網(wǎng)頁(yè)頁(yè)面和測(cè)試用例,發(fā)明人認(rèn)為如果可以分割頁(yè)面,并且發(fā)現(xiàn)分割得到的獨(dú)立模塊的類別,就可以自動(dòng)化的針對(duì)固定的模塊類別,進(jìn)行自動(dòng)化的生成測(cè)試用例。發(fā)明人發(fā)現(xiàn),能夠被認(rèn)為是屬于同一個(gè)獨(dú)立模塊的頁(yè)面內(nèi)容,都有著相似的特 征。比如,在同一個(gè)獨(dú)立模塊中的控件,通常在同一個(gè)區(qū)域中,或者有類似的CSS(級(jí)聯(lián)樣式表)樣式。這是因?yàn)樵O(shè)計(jì)人員在設(shè)計(jì)頁(yè)面的時(shí)候,通常會(huì)把完成獨(dú)立功能的控件放在一起并且設(shè)置類似的樣式。所以可以利用這個(gè)特性,來(lái)分割頁(yè)面,然后針對(duì)每個(gè)分割得到的獨(dú)立模塊進(jìn)行自動(dòng)化地生成對(duì)應(yīng)的測(cè)試用例。圖2示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的方法200的示例性過(guò)程的流程圖。圖2示出的實(shí)施例是在頁(yè)面包含多個(gè)獨(dú)立模塊的情況下,生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的方法的流程圖。對(duì)于包含多個(gè)獨(dú)立模塊的頁(yè)面,首先要對(duì)頁(yè)面進(jìn)行分割,在步驟S202中,將網(wǎng)頁(yè)頁(yè)面分割為多個(gè)獨(dú)立模塊。具體地,根據(jù)網(wǎng)頁(yè)頁(yè)面的DOM樹的節(jié)點(diǎn)的特征設(shè)定多個(gè)規(guī)則,根據(jù)這些規(guī)則可以對(duì)節(jié)點(diǎn)執(zhí)行不進(jìn)行分割、進(jìn)行分割或調(diào)整相鄰節(jié)點(diǎn)之間的關(guān)聯(lián)度的操作。本發(fā)明使用迭代式的規(guī)則匹配方法進(jìn)行頁(yè)面分割。也就是說(shuō),對(duì)于頁(yè)面的DOM樹的全部節(jié)點(diǎn),使用例如先序遍歷方式對(duì)節(jié)點(diǎn)進(jìn)行規(guī)則匹配,即將每個(gè)節(jié)點(diǎn)與多個(gè)規(guī)則依次進(jìn)行匹配來(lái)執(zhí)行不對(duì)節(jié)點(diǎn)進(jìn)行分割、對(duì)節(jié)點(diǎn)進(jìn)行分割或者調(diào)整相鄰節(jié)點(diǎn)之間的關(guān)聯(lián)度的操作。對(duì)節(jié)點(diǎn)的分割也即對(duì)相應(yīng)的頁(yè)面模塊進(jìn)行分割,在下文中,對(duì)節(jié)點(diǎn)進(jìn)行分割與對(duì)頁(yè)面模塊進(jìn)行分割表示的是相同的意思。在一個(gè)示例中,可以設(shè)置一個(gè)WoB值(即相鄰節(jié)點(diǎn)之間的關(guān)聯(lián)度)作為表示兩個(gè)被分割的模塊之間的連接強(qiáng)度。每?jī)蓚€(gè)被分割開的模塊都有其對(duì)應(yīng)的WoB值。這個(gè)值需要預(yù)設(shè)一個(gè)默認(rèn)值,比如5。有些規(guī)則會(huì)改變這個(gè)WoB值,每輪規(guī)則匹配結(jié)束時(shí),查看每個(gè)WoB值是否小于一個(gè)預(yù)設(shè)的閾值,如果小于這個(gè)閾值,那么對(duì)應(yīng)的模塊將會(huì)被合并。重復(fù)這個(gè)迭代操作,直到所有的WoB值都不再變化或者頁(yè)面模塊不再發(fā)生變化或者達(dá)到預(yù)設(shè)的迭代次數(shù)。從而實(shí)現(xiàn)將網(wǎng)頁(yè)頁(yè)面分割為多個(gè)獨(dú)立模塊。網(wǎng)頁(yè)頁(yè)面都有自己的DOM樹結(jié)構(gòu),DOM樹包含了一系列的標(biāo)簽比如html,body,div等等,這些標(biāo)簽組成一個(gè)樹形結(jié)構(gòu)。根據(jù)HTML5標(biāo)準(zhǔn),把DOM樹的標(biāo)簽節(jié)點(diǎn)分成以下幾個(gè)類別:1)非斷行節(jié)點(diǎn):不會(huì)導(dǎo)致斷行的標(biāo)簽。比如FONT,B,I等標(biāo)簽。2)斷行節(jié)點(diǎn):會(huì)導(dǎo)致斷行的標(biāo)簽,比如BR,HR等標(biāo)簽。3)有效節(jié)點(diǎn):顯示在頁(yè)面上的節(jié)點(diǎn),對(duì)應(yīng)的不顯示的節(jié)點(diǎn)為非有效節(jié)點(diǎn)。4)文本節(jié)點(diǎn):節(jié)點(diǎn)只包含文字。根據(jù)以上所述的節(jié)點(diǎn)的特征,可以設(shè)定分別用于不對(duì)節(jié)點(diǎn)進(jìn)行分割、對(duì)節(jié)點(diǎn)進(jìn)行分割或調(diào)整相鄰節(jié)點(diǎn)之間的關(guān)聯(lián)度的多個(gè)規(guī)則。其中,不對(duì)節(jié)點(diǎn)進(jìn)行分割的規(guī)則可以包括:如果節(jié)點(diǎn)不是文本節(jié)點(diǎn)并且其沒(méi)有有效節(jié)點(diǎn),則該節(jié)點(diǎn)不被分割并且該節(jié)點(diǎn)的子節(jié)點(diǎn)也不被分割;如果節(jié)點(diǎn)只包含一個(gè)有效節(jié)點(diǎn)并且該節(jié)點(diǎn)不是文本節(jié)點(diǎn),則該節(jié)點(diǎn)不被分割,然后進(jìn)入該節(jié)點(diǎn)的子節(jié)點(diǎn)進(jìn)行規(guī)則匹配;如果節(jié)點(diǎn)的子節(jié)點(diǎn)都是文本節(jié)點(diǎn),則該節(jié)點(diǎn)不被分割;如果節(jié)點(diǎn)僅包含相同樣式的內(nèi)容列表,則該節(jié)點(diǎn)不被分割;以及如果節(jié)點(diǎn)的部分子節(jié)點(diǎn)具有類似的級(jí)聯(lián)樣式表樣式,則這些子節(jié)點(diǎn)不被分割。對(duì)節(jié)點(diǎn)進(jìn)行分割的規(guī)則可以包括:如果節(jié)點(diǎn)包含<HR>,則該節(jié)點(diǎn)被分割;以及如果節(jié)點(diǎn)的兩個(gè)子節(jié)點(diǎn)之間的距離大于該兩個(gè)子節(jié)點(diǎn)中的較小子節(jié)點(diǎn)的長(zhǎng)度或?qū)挾鹊念A(yù)定比例,則該節(jié)點(diǎn)被分割。調(diào)整相鄰節(jié)點(diǎn)之間的關(guān)聯(lián)度的規(guī)則可以包括:如果節(jié)點(diǎn)的子節(jié)點(diǎn)之一是斷行節(jié)點(diǎn),則分割該節(jié)點(diǎn),并基于兩個(gè)模塊之間的距離將關(guān)聯(lián)度設(shè)置為第一預(yù)定值;如果節(jié)點(diǎn)中有兩塊內(nèi)容的背景顏色不同,則分割該節(jié)點(diǎn),基于兩塊內(nèi)容之間的距離將關(guān)聯(lián)度設(shè)置為第二預(yù)定值,其中第二預(yù)定值小于等于第一預(yù)定值;如果節(jié)點(diǎn)中存在表單,則將表單所分割的模塊的關(guān)聯(lián)度都減去預(yù)定差數(shù);如果所有子節(jié)點(diǎn)具有相同的級(jí)聯(lián)樣式表樣式,則將子節(jié)點(diǎn)的關(guān)聯(lián)度減去預(yù)定差數(shù)。在步驟S202中,對(duì)DOM樹的每個(gè)節(jié)點(diǎn)都進(jìn)行規(guī)則匹配,直到迭代 式的規(guī)則匹配操作完成后,可以得到網(wǎng)頁(yè)頁(yè)面分割的多個(gè)獨(dú)立模塊,并且用于下一步的操作中。接下來(lái),在步驟S204中,基于網(wǎng)頁(yè)頁(yè)面的文檔對(duì)象模型DOM樹提取網(wǎng)頁(yè)頁(yè)面所包括的獨(dú)立模塊的特征。在一個(gè)示例中,設(shè)置了以下7類獨(dú)立模塊的特征。特征描述特征1超鏈接與文本句子的比值特征2表單控件和超鏈接的比值特征3是否存在提交按鈕特征4是否存在表單特征5列表子節(jié)點(diǎn)的數(shù)量特征6節(jié)點(diǎn)文本的平均長(zhǎng)度特征7超鏈接和圖像的比值特征8是否存在提交的JavaScript腳本特征9表單控件和文字?jǐn)?shù)量的比值特征1表示超鏈接和文本句子的比值,定義句子通過(guò)句號(hào),嘆號(hào)和問(wèn)號(hào)進(jìn)行分割。特征2表示表單控件和超鏈接的比值。特征3表示這個(gè)模塊中是否存在提交按鈕,如果存在提交按鈕,那么這個(gè)模塊更可能是包含用戶交互的應(yīng)用類。特征4表示是否存在表單。特征5表示列表中的節(jié)點(diǎn)數(shù)量,如果有足夠的節(jié)點(diǎn)數(shù)量,那么其更可能是一個(gè)列表模塊。特征6表示節(jié)點(diǎn)文本的平均長(zhǎng)度。特征7表示超鏈接和圖像數(shù)量的比值。特征8表示是否存在用于提交表單的JS代碼。特征9表示表單控件和文字?jǐn)?shù)量的比值。提取獨(dú)立模塊的特征的具體方法將在下文中說(shuō)明。在步驟S206中,根據(jù)所提取的特征,基于預(yù)先存儲(chǔ)的分類模型將獨(dú)立模塊分類為預(yù)設(shè)類別。這里的分類模型可以通過(guò)訓(xùn)練來(lái)得到。圖3示出了訓(xùn)練得到分類模型的一種示例性過(guò)程的流程圖。首先,在步驟S302中,獲得一個(gè)訓(xùn)練數(shù)據(jù)集來(lái)進(jìn)行訓(xùn)練。訓(xùn)練數(shù)據(jù) 集包括多個(gè)網(wǎng)頁(yè)頁(yè)面,其中每個(gè)網(wǎng)頁(yè)頁(yè)面標(biāo)注有所包括的獨(dú)立模塊和各獨(dú)立模塊所對(duì)應(yīng)的類別。在一個(gè)示例中,可以將頁(yè)面模塊分為三個(gè)大類,每個(gè)大類中分別包含若干小類。1)列表類。這類模塊包含一個(gè)元素的列表,這些元素包含相似或者相同的樣式,并且其內(nèi)容也是相似的,比如新聞標(biāo)題列表。列表類可以細(xì)分為以下幾個(gè)小類:a)帶超鏈接的純文本列表b)帶超鏈接和圖片的純文本列表c)圖片列表d)純文本列表2)文本模塊。這類模塊包含文本,比如新聞報(bào)告的正文模塊。這類模塊可以細(xì)分為以下幾個(gè)小類:a)純文本b)純文本帶評(píng)論3)應(yīng)用模塊。這類模塊包含單一信息,比如當(dāng)?shù)靥鞖忸A(yù)報(bào),日程管理模塊等等。這類模塊可以細(xì)分為如下兩個(gè)小類:a)包含用戶交互的應(yīng)用b)沒(méi)有用戶交互的應(yīng)用。簡(jiǎn)單來(lái)說(shuō),可以將頁(yè)面模塊分為1)帶超鏈接的純文本列表、2)帶超鏈接和圖片的純文本列表、3)圖片列表、4)純文本列表、5)純文本、6)純文本帶評(píng)論、7)包含用戶交互的應(yīng)用、8)沒(méi)有用戶交互的應(yīng)用這八個(gè)類別。在訓(xùn)練數(shù)據(jù)集中包含每個(gè)獨(dú)立模塊對(duì)應(yīng)這個(gè)八個(gè)類別中的哪個(gè)類別的信息。接下來(lái),在步驟S304中,基于訓(xùn)練數(shù)據(jù)集中的多個(gè)網(wǎng)頁(yè)頁(yè)面的DOM樹提取各個(gè)獨(dú)立模塊的特征。然后,在步驟S306中,基于所提取的各個(gè)獨(dú)立模塊的特征以及各獨(dú)立模塊所對(duì)應(yīng)的類別進(jìn)行訓(xùn)練得到分類模型。具體地,可以收集一個(gè)獨(dú)立模塊關(guān)于以上所述9類特征的所有特征值, 然后將這些特征值都放在一個(gè)向量中,作為該模塊的特征向量。將特征向量和已經(jīng)標(biāo)注好的該模塊的類別信息傳入訓(xùn)練流程中進(jìn)行訓(xùn)練,來(lái)得到分類模型。在一個(gè)示例中,可以通過(guò)訓(xùn)練生成用于分類的決策樹,來(lái)確定不同特征在決策樹中所處的位置。在一個(gè)示例中,可以使用信息增益的方法進(jìn)行訓(xùn)練,來(lái)得到最終的決策樹,即步驟S206中的分類模型。該分類模型可以預(yù)先存儲(chǔ)在系統(tǒng)中,用于對(duì)待分類的獨(dú)立模塊進(jìn)行分類。本領(lǐng)域技術(shù)人員可以理解,對(duì)于步驟S204中提取待測(cè)試網(wǎng)頁(yè)頁(yè)面的獨(dú)立模塊的特征,可以采用與訓(xùn)練分類模型中所采用的提取獨(dú)立模塊的特征的同樣的方法來(lái)提取。在一個(gè)示例中,提取待測(cè)試的獨(dú)立模塊的所有特征值,組成該獨(dú)立模塊的特征向量,將該特征向量放入預(yù)先得到的決策樹模型中,就可以確定該獨(dú)立模塊的分類結(jié)果,即該獨(dú)立模塊屬于哪個(gè)預(yù)設(shè)類別。最后,在步驟S208中,根據(jù)獨(dú)立模塊被分類的預(yù)設(shè)類別,利用預(yù)設(shè)的測(cè)試用例模板來(lái)生成獨(dú)立模塊的測(cè)試用例。在一個(gè)示例中,針對(duì)以上所述的八種頁(yè)面類別,預(yù)先設(shè)定八種相應(yīng)的測(cè)試用例模板,使用這些測(cè)試用例模板,可以對(duì)不同的類別自動(dòng)化地生成相應(yīng)的測(cè)試用例。由于對(duì)于相同種類的模塊來(lái)說(shuō),都有著相同或類似的測(cè)試操作,把這些操作抽象匯總起來(lái),就能夠建立對(duì)應(yīng)的測(cè)試用例模板。下面給出對(duì)于各個(gè)類別的一些簡(jiǎn)單示例:對(duì)于列表類的帶超鏈接和圖片的純文本列表類別的模塊來(lái)說(shuō),可能需要下列測(cè)試操作:·判斷超鏈接和圖片是否有異常(鏈接是否有效,圖片是否顯示等)·依次點(diǎn)擊所有超鏈接和圖片并截圖·判斷每個(gè)列表項(xiàng)的格式是否一致·等對(duì)于文本類的純文本帶評(píng)論類別的模塊來(lái)說(shuō),可能需要下列測(cè)試操 作:·判斷文字顯示是否有異常(段落格式是否一致,字體等是否一致等)·判斷評(píng)論是否有異常(格式是否一致等)·判斷頁(yè)面中是否有圖片無(wú)法顯示·等對(duì)于應(yīng)用類的包含用戶交互的應(yīng)用的模塊來(lái)說(shuō),可能需要下列測(cè)試操作:·判斷各個(gè)按鈕(以及其他可點(diǎn)擊的組件)是否可用·判斷模塊中的各個(gè)超鏈接是否無(wú)效·記錄每個(gè)點(diǎn)擊事件的結(jié)果·等對(duì)于新的需要測(cè)試的頁(yè)面塊,可以直接套用相應(yīng)的模板,直接生成測(cè)試用例。生成測(cè)試用例時(shí),需要用到以下兩方面的信息:第一是頁(yè)面模塊的DOM樹結(jié)構(gòu),即HTML源代碼,例如通過(guò)HTML源碼,可以獲得所有超鏈接所指向的地址,以及所有圖片的地址,通過(guò)這些地址,就能夠判斷超鏈接是否失效,或者圖片是否能正確顯示。第二是頁(yè)面模塊在顯示屏上的視覺(jué)信息,通過(guò)對(duì)這方面信息的采集,可以用來(lái)判斷組件的樣式是否顯示正確,比如圖片是否顯示不一致(有大有小,或者出現(xiàn)偏移)。圖4示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例進(jìn)行訓(xùn)練、分類及生成測(cè)試用例的示意圖。在圖4的上半部分,是決策樹的訓(xùn)練過(guò)程,下半部分是對(duì)待測(cè)模塊進(jìn)行分類,然后根據(jù)分類結(jié)果生成測(cè)試用例的過(guò)程。在訓(xùn)練階段,對(duì)于帶有標(biāo)注的訓(xùn)練數(shù)據(jù)集,基于DOM樹來(lái)提取特征,得到特征向量,從而訓(xùn)練得到?jīng)Q策樹。在分類階段,對(duì)于待測(cè)試的模塊,基于DOM書來(lái)提取特征,得到特征向量,將該特征向量放入預(yù)先得到的決策樹模型中,得到分類結(jié)果。最后,根據(jù)分類結(jié)果,選擇測(cè)試用例模板來(lái)生成測(cè)試用例。圖5示出了根據(jù)本發(fā)明的另一個(gè)實(shí)施例的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的 方法500的示例性過(guò)程的流程圖。圖5中的實(shí)施例是在頁(yè)面只包含一個(gè)獨(dú)立模塊(例如登錄模塊)的情況下生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的方法。在這種情況下,不需要對(duì)頁(yè)面進(jìn)行分割的步驟。首先,在步驟S504中,基于待測(cè)試網(wǎng)頁(yè)頁(yè)面的文檔對(duì)象模型DOM樹提取網(wǎng)頁(yè)頁(yè)面所包括的獨(dú)立模塊的特征。接著,在步驟S506中,根據(jù)所提取的特征,基于預(yù)先存儲(chǔ)的分類模型將獨(dú)立模塊分類為預(yù)設(shè)類別。最后,在步驟S508中,根據(jù)獨(dú)立模塊被分類的預(yù)設(shè)類別,利用預(yù)設(shè)的測(cè)試用例模板來(lái)生成獨(dú)立模塊的測(cè)試用例。本領(lǐng)域技術(shù)人員可以理解,圖5中的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的方法500與圖2中的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的方法200相比,不需要對(duì)頁(yè)面進(jìn)行分割的步驟S202,而圖5中的步驟S504、S506和S508與圖1中的步驟S204、S206和S208類似,在此不做詳細(xì)說(shuō)明。圖6是示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的裝置600的示例性配置的框圖。如圖6所示,生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的裝置600包括分割單元602、特征提取單元604、分類單元606和測(cè)試用例生成單元608。其中,分割單元602被配置為將網(wǎng)頁(yè)頁(yè)面分割為多個(gè)獨(dú)立模塊。特征提取單元604被配置為基于待測(cè)試網(wǎng)頁(yè)頁(yè)面的文檔對(duì)象模型DOM樹提取網(wǎng)頁(yè)頁(yè)面所包括的獨(dú)立模塊的特征。分類單元606被配置為根據(jù)所提取的特征,基于預(yù)先存儲(chǔ)的分類模型將獨(dú)立模塊分類為預(yù)設(shè)類別。測(cè)試用例生成單元608被配置為根據(jù)獨(dú)立模塊被分類的預(yù)設(shè)類別,利用預(yù)設(shè)的測(cè)試用例模板來(lái)生成獨(dú)立模塊的測(cè)試用例。圖7是示出根據(jù)本發(fā)明的另一個(gè)實(shí)施例的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的裝置700的示例性配置的框圖。如圖7所示,生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的裝置700包括特征提取單元704、分類單元706和測(cè)試用例生成單元708。換句話說(shuō),圖7所示的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的裝置700與圖6所示的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的 裝置600相比少了分割單元602。圖7中的實(shí)施例是在頁(yè)面只包含一個(gè)獨(dú)立模塊的情況下生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的裝置。圖7中的特征提取單元704、分類單元706和測(cè)試用例生成單元708與圖6中的特征提取單元604、分類單元606和測(cè)試用例生成單元608類似,在此不再贅述。圖8是示出用于生成在根據(jù)本發(fā)明的實(shí)施例的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的裝置600和700中所利用的分類模型的分類模型訓(xùn)練單元800的示例性配置的框圖。如圖8所示,分類模型訓(xùn)練單元800包括訓(xùn)練數(shù)據(jù)集獲得子單元802、特征提取子單元804和分類模型訓(xùn)練子單元806。其中,訓(xùn)練數(shù)據(jù)集獲得子單元802被配置為獲得訓(xùn)練數(shù)據(jù)集,訓(xùn)練數(shù)據(jù)集包括多個(gè)網(wǎng)頁(yè)頁(yè)面,其中每個(gè)網(wǎng)頁(yè)頁(yè)面標(biāo)注有所包括的獨(dú)立模塊、以及各獨(dú)立模塊所對(duì)應(yīng)的類別。特征提取子單元804被配置為基于訓(xùn)練數(shù)據(jù)集中的多個(gè)網(wǎng)頁(yè)頁(yè)面的DOM樹提取各個(gè)獨(dú)立模塊的特征。分類模型訓(xùn)練子單元806被配置為基于所提取的各個(gè)獨(dú)立模塊的特征以及各獨(dú)立模塊所對(duì)應(yīng)的類別進(jìn)行訓(xùn)練得到分類模型。關(guān)于生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的裝置600和700以及分類模型訓(xùn)練單元800的各個(gè)部分的操作和功能的細(xì)節(jié)可以參照結(jié)合圖1-5描述的本發(fā)明的生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的方法的實(shí)施例,這里不再詳細(xì)描述。在此需要說(shuō)明的是,圖6-8所示的裝置及其組成單元的結(jié)構(gòu)僅僅是示例性的,本領(lǐng)域技術(shù)人員可以根據(jù)需要對(duì)圖6-8所示的結(jié)構(gòu)框圖進(jìn)行修改。本發(fā)明提出一種能夠輔助測(cè)試人員自動(dòng)或者更智能地生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的方法和裝置。根據(jù)本發(fā)明的方法和裝置,將頁(yè)面模塊和測(cè)試用例聯(lián)系在一起,通過(guò)分析頁(yè)面模塊的分類,可以自動(dòng)生成測(cè)試用例,從而大大提高了工作效率。以上結(jié)合具體實(shí)施例描述了本發(fā)明的基本原理,但是,需要指出的是,對(duì)本領(lǐng)域的普通技術(shù)人員而言,能夠理解本發(fā)明的方法和裝置的全部或者任何步驟或者部件,可以在任何計(jì)算裝置(包括處理器、存儲(chǔ)介質(zhì)等)或者計(jì)算裝置的網(wǎng)絡(luò)中,以硬件、固件、軟件或者它們的組合加以實(shí)現(xiàn),這是本領(lǐng)域普通技術(shù)人員在閱讀了本發(fā)明的說(shuō)明的情況下運(yùn)用他們的基本 編程技能就能實(shí)現(xiàn)的。因此,本發(fā)明的目的還可以通過(guò)在任何計(jì)算裝置上運(yùn)行一個(gè)程序或者一組程序來(lái)實(shí)現(xiàn)。所述計(jì)算裝置可以是公知的通用裝置。因此,本發(fā)明的目的也可以僅僅通過(guò)提供包含實(shí)現(xiàn)所述方法或者裝置的程序代碼的程序產(chǎn)品來(lái)實(shí)現(xiàn)。也就是說(shuō),這樣的程序產(chǎn)品也構(gòu)成本發(fā)明,并且存儲(chǔ)有這樣的程序產(chǎn)品的存儲(chǔ)介質(zhì)也構(gòu)成本發(fā)明。顯然,所述存儲(chǔ)介質(zhì)可以是任何公知的存儲(chǔ)介質(zhì)或者將來(lái)所開發(fā)出來(lái)的任何存儲(chǔ)介質(zhì)。在通過(guò)軟件和/或固件實(shí)現(xiàn)本發(fā)明的實(shí)施例的情況下,從存儲(chǔ)介質(zhì)或網(wǎng)絡(luò)向具有專用硬件結(jié)構(gòu)的計(jì)算機(jī),例如圖9所示的通用計(jì)算機(jī)900安裝構(gòu)成該軟件的程序,該計(jì)算機(jī)在安裝有各種程序時(shí),能夠執(zhí)行各種功能等等。在圖9中,中央處理單元(CPU)501根據(jù)只讀存儲(chǔ)器(ROM)902中存儲(chǔ)的程序或從存儲(chǔ)部分908加載到隨機(jī)存取存儲(chǔ)器(RAM)903的程序執(zhí)行各種處理。在RAM903中,也根據(jù)需要存儲(chǔ)當(dāng)CPU901執(zhí)行各種處理等等時(shí)所需的數(shù)據(jù)。CPU901、ROM902和RAM903經(jīng)由總線904彼此鏈路。輸入/輸出接口905也鏈路到總線904。下述部件鏈路到輸入/輸出接口905:輸入部分906(包括鍵盤、鼠標(biāo)等等)、輸出部分907(包括顯示器,比如陰極射線管(CRT)、液晶顯示器(LCD)等,和揚(yáng)聲器等)、存儲(chǔ)部分908(包括硬盤等)、通信部分909(包括網(wǎng)絡(luò)接口卡比如LAN卡、調(diào)制解調(diào)器等)。通信部分909經(jīng)由網(wǎng)絡(luò)比如因特網(wǎng)執(zhí)行通信處理。根據(jù)需要,驅(qū)動(dòng)器910也可鏈路到輸入/輸出接口905??刹鹦督橘|(zhì)911比如磁盤、光盤、磁光盤、半導(dǎo)體存儲(chǔ)器等等根據(jù)需要被安裝在驅(qū)動(dòng)器910上,使得從中讀出的計(jì)算機(jī)程序根據(jù)需要被安裝到存儲(chǔ)部分908中。在通過(guò)軟件實(shí)現(xiàn)上述系列處理的情況下,從網(wǎng)絡(luò)比如因特網(wǎng)或存儲(chǔ)介質(zhì)比如可拆卸介質(zhì)911安裝構(gòu)成軟件的程序。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,這種存儲(chǔ)介質(zhì)不局限于圖9所示的其中存儲(chǔ)有程序、與設(shè)備相分離地分發(fā)以向用戶提供程序的可拆卸介質(zhì)911??刹鹦督橘|(zhì)911的例子包含磁盤(包含軟盤(注冊(cè)商標(biāo)))、光盤(包含光盤只讀存儲(chǔ)器(CD-ROM)和數(shù)字通用盤(DVD))、磁光盤(包含迷你盤(MD)(注冊(cè)商標(biāo)))和半導(dǎo)體存儲(chǔ)器?;蛘撸鎯?chǔ)介質(zhì)可以是ROM902、存儲(chǔ)部分908中包含的硬盤等等,其中存有程序,并且與包含它們的設(shè)備一起被分發(fā)給用戶。本發(fā)明還提出一種存儲(chǔ)有機(jī)器可讀取的指令代碼的程序產(chǎn)品。指令代碼由機(jī)器讀取并執(zhí)行時(shí),可執(zhí)行上述根據(jù)本發(fā)明實(shí)施例的方法。相應(yīng)地,用于承載上述存儲(chǔ)有機(jī)器可讀取的指令代碼的程序產(chǎn)品的存儲(chǔ)介質(zhì)也包括在本發(fā)明的公開中。存儲(chǔ)介質(zhì)包括但不限于軟盤、光盤、磁光盤、存儲(chǔ)卡、存儲(chǔ)棒等。本領(lǐng)域的普通技術(shù)人員應(yīng)理解,在此所例舉的是示例性的,本發(fā)明并不局限于此。在本說(shuō)明書中,“第一”、“第二”以及“第N個(gè)”等表述是為了將所描述的特征在文字上區(qū)分開,以清楚地描述本發(fā)明。因此,不應(yīng)將其視為具有任何限定性的含義。作為一個(gè)示例,上述方法的各個(gè)步驟以及上述設(shè)備的各個(gè)組成模塊和/或單元可以實(shí)施為軟件、固件、硬件或其組合,并作為相應(yīng)設(shè)備中的一部分。上述裝置中各個(gè)組成模塊、單元通過(guò)軟件、固件、硬件或其組合的方式進(jìn)行配置時(shí)可使用的具體手段或方式為本領(lǐng)域技術(shù)人員所熟知,在此不再贅述。作為一個(gè)示例,在通過(guò)軟件或固件實(shí)現(xiàn)的情況下,可以從存儲(chǔ)介質(zhì)或網(wǎng)絡(luò)向具有專用硬件結(jié)構(gòu)的計(jì)算機(jī)(例如圖9所示的通用計(jì)算機(jī)900)安裝構(gòu)成該軟件的程序,該計(jì)算機(jī)在安裝有各種程序時(shí),能夠執(zhí)行各種功能等。在上面對(duì)本發(fā)明具體實(shí)施例的描述中,針對(duì)一種實(shí)施方式描述和/或示出的特征可以以相同或類似的方式在一個(gè)或更多個(gè)其他實(shí)施方式中使用,與其他實(shí)施方式中的特征相組合,或替代其他實(shí)施方式中的特征。應(yīng)該強(qiáng)調(diào),術(shù)語(yǔ)“包括/包含”在本文使用時(shí)指特征、要素、步驟或組件的存在,但并不排除一個(gè)或更多個(gè)其他特征、要素、步驟或組件的存在或附加。此外,本發(fā)明的方法不限于按照說(shuō)明書中描述的時(shí)間順序來(lái)執(zhí)行,也可以按照其他的時(shí)間順序地、并行地或獨(dú)立地執(zhí)行。因此,本說(shuō)明書中描述的方法的執(zhí)行順序不對(duì)本發(fā)明的技術(shù)范圍構(gòu)成限制。本發(fā)明及其優(yōu)點(diǎn),但是應(yīng)當(dāng)理解在不超出由所附的權(quán)利要求所限定的本發(fā)明的精神和范圍的情況下可以進(jìn)行各種改變、替代和變換。而且,本發(fā)明的范圍不僅限于說(shuō)明書所描述的過(guò)程、設(shè)備、手段、方法和步驟的具體實(shí)施例。本領(lǐng)域內(nèi)的普通技術(shù)人員從本發(fā)明的公開內(nèi)容將容易理解,根 據(jù)本發(fā)明可以使用執(zhí)行與在此的相應(yīng)實(shí)施例基本相同的功能或者獲得與其基本相同的結(jié)果的、現(xiàn)有和將來(lái)要被開發(fā)的過(guò)程、設(shè)備、手段、方法或者步驟。因此,所附的權(quán)利要求旨在在它們的范圍內(nèi)包括這樣的過(guò)程、設(shè)備、手段、方法或者步驟。基于以上的說(shuō)明,可知公開至少公開了以下技術(shù)方案:附記1、一種生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的方法,包括:基于待測(cè)試網(wǎng)頁(yè)頁(yè)面的文檔對(duì)象模型DOM樹提取所述網(wǎng)頁(yè)頁(yè)面所包括的獨(dú)立模塊的特征;根據(jù)所提取的特征,基于預(yù)先存儲(chǔ)的分類模型將所述獨(dú)立模塊分類為預(yù)設(shè)類別;以及根據(jù)所述獨(dú)立模塊被分類的預(yù)設(shè)類別,利用預(yù)設(shè)的測(cè)試用例模板來(lái)生成所述獨(dú)立模塊的測(cè)試用例。附記2、根據(jù)附記1所述的方法,還包括:將所述網(wǎng)頁(yè)頁(yè)面分割為多個(gè)獨(dú)立模塊。附記3、根據(jù)附記2所述的方法,其中,將所述網(wǎng)頁(yè)頁(yè)面分割為多個(gè)獨(dú)立模塊進(jìn)一步包括:根據(jù)所述網(wǎng)頁(yè)頁(yè)面的DOM樹的節(jié)點(diǎn)的特征來(lái)設(shè)定用于不對(duì)節(jié)點(diǎn)進(jìn)行分割、對(duì)節(jié)點(diǎn)進(jìn)行分割或調(diào)整相鄰節(jié)點(diǎn)之間的關(guān)聯(lián)度的多個(gè)規(guī)則;以及對(duì)所述DOM樹的全部節(jié)點(diǎn)進(jìn)行遍歷,將每個(gè)節(jié)點(diǎn)與所述多個(gè)規(guī)則依次進(jìn)行匹配來(lái)執(zhí)行不對(duì)節(jié)點(diǎn)進(jìn)行分割、對(duì)節(jié)點(diǎn)進(jìn)行分割或者調(diào)整相鄰節(jié)點(diǎn)之間的關(guān)聯(lián)度的操作,迭代匹配直到分割的頁(yè)面模塊不再改變、或者相鄰節(jié)點(diǎn)之間的關(guān)聯(lián)度不再改變或者達(dá)到預(yù)定的迭代次數(shù)。附記4、根據(jù)附記3所述的方法,其中,所述節(jié)點(diǎn)的特征包括:非斷行節(jié)點(diǎn)、斷行節(jié)點(diǎn)、有效節(jié)點(diǎn)和文本節(jié)點(diǎn)。附記5、根據(jù)附記3所述的方法,其中,不對(duì)節(jié)點(diǎn)進(jìn)行分割的規(guī)則包括:如果節(jié)點(diǎn)不是文本節(jié)點(diǎn)并且其沒(méi)有有效節(jié)點(diǎn),則該節(jié)點(diǎn)不被分割并且該節(jié)點(diǎn)的子節(jié)點(diǎn)也不被分割;如果節(jié)點(diǎn)只包含一個(gè)有效節(jié)點(diǎn)并且該節(jié)點(diǎn)不是文本節(jié)點(diǎn),則該節(jié)點(diǎn)不被分割,然后進(jìn)入該節(jié)點(diǎn)的子節(jié)點(diǎn)進(jìn)行規(guī)則匹配;如果節(jié)點(diǎn)的子節(jié)點(diǎn)都是文本節(jié)點(diǎn),則該節(jié)點(diǎn)不被分割;如果節(jié)點(diǎn)僅包含相同樣式的內(nèi)容列表,則該節(jié)點(diǎn)不被分割;以及如果節(jié)點(diǎn)的部分子節(jié)點(diǎn)具有類似的級(jí)聯(lián)樣式表樣式,則這些子節(jié)點(diǎn)不被分割。附記6、根據(jù)附記3所述的方法,其中,對(duì)節(jié)點(diǎn)進(jìn)行分割的規(guī)則包括:如果節(jié)點(diǎn)包含<HR>,則該節(jié)點(diǎn)被分割;以及如果節(jié)點(diǎn)的兩個(gè)子節(jié)點(diǎn)之間的距離大于該兩個(gè)子節(jié)點(diǎn)中的較小子節(jié)點(diǎn)的長(zhǎng)度或?qū)挾鹊念A(yù)定比例,則該節(jié)點(diǎn)被分割。附記7、根據(jù)附記3所述的方法,其中,調(diào)整相鄰節(jié)點(diǎn)之間的關(guān)聯(lián)度的規(guī)則包括:如果節(jié)點(diǎn)的子節(jié)點(diǎn)之一是斷行節(jié)點(diǎn),則分割該節(jié)點(diǎn),并基于兩個(gè)模塊之間的距離將關(guān)聯(lián)度設(shè)置為第一預(yù)定值;如果節(jié)點(diǎn)中有兩塊內(nèi)容的背景顏色不同,則分割該節(jié)點(diǎn),基于兩塊內(nèi)容之間的距離將關(guān)聯(lián)度設(shè)置為第二預(yù)定值,其中第二預(yù)定值小于等于第一預(yù)定值;如果節(jié)點(diǎn)中存在表單,則將所述表單所分割的模塊的關(guān)聯(lián)度都減去預(yù)定差數(shù);如果所有子節(jié)點(diǎn)具有相同的級(jí)聯(lián)樣式表樣式,則將子節(jié)點(diǎn)的關(guān)聯(lián)度減去預(yù)定差數(shù)。附記8、根據(jù)附記1或2所述的方法,其中,所述分類模型通過(guò)以下步驟訓(xùn)練得到:獲得訓(xùn)練數(shù)據(jù)集,所述訓(xùn)練數(shù)據(jù)集包括多個(gè)網(wǎng)頁(yè)頁(yè)面,其中每個(gè)網(wǎng)頁(yè) 頁(yè)面標(biāo)注有所包括的獨(dú)立模塊、以及各獨(dú)立模塊所對(duì)應(yīng)的類別;基于所述訓(xùn)練數(shù)據(jù)集中的多個(gè)網(wǎng)頁(yè)頁(yè)面的DOM樹提取各個(gè)獨(dú)立模塊的特征;以及基于所提取的各個(gè)獨(dú)立模塊的特征以及各獨(dú)立模塊所對(duì)應(yīng)的類別進(jìn)行訓(xùn)練得到所述分類模型。附記9、根據(jù)附記1或2所述的方法,其中,所述獨(dú)立模塊被分類的所述預(yù)設(shè)類別包括:帶有超鏈接的純文本的列表、帶有超鏈接和圖像的文本的列表、圖片列表、純文本的列表、純文本、帶有評(píng)論的純文本、帶有用戶交互的應(yīng)用程序、以及沒(méi)有用戶交互的應(yīng)用程序。附記10、根據(jù)附記8所述的方法,其中,基于網(wǎng)頁(yè)頁(yè)面的DOM樹所提取的獨(dú)立模塊的特征包括以下中的一項(xiàng)或多項(xiàng):超鏈接與文本句子的比值、表單控件和超鏈接的比值、是否存在提交按鈕、是否存在表單、列表子節(jié)點(diǎn)的數(shù)量、節(jié)點(diǎn)文本的平均長(zhǎng)度、超鏈接和圖像的比值、是否存在提交的JavaScript腳本、表單控件和文字?jǐn)?shù)量的比值。附記11、一種生成網(wǎng)頁(yè)頁(yè)面的測(cè)試用例的裝置,包括:特征提取單元,被配置為基于待測(cè)試網(wǎng)頁(yè)頁(yè)面的文檔對(duì)象模型DOM樹提取所述網(wǎng)頁(yè)頁(yè)面所包括的獨(dú)立模塊的特征;分類單元,被配置為根據(jù)所提取的特征,基于預(yù)先存儲(chǔ)的分類模型將所述獨(dú)立模塊分類為預(yù)設(shè)類別;以及測(cè)試用例生成單元,被配置為根據(jù)所述獨(dú)立模塊被分類的預(yù)設(shè)類別,利用預(yù)設(shè)的測(cè)試用例模板來(lái)生成所述獨(dú)立模塊的測(cè)試用例。附記12、根據(jù)附記11所述的裝置,還包括分割單元,被配置為將所述網(wǎng)頁(yè)頁(yè)面分割為多個(gè)獨(dú)立模塊。附記13、根據(jù)附記12所述的裝置,其中,所述分割單元進(jìn)一步被配置為:根據(jù)所述網(wǎng)頁(yè)頁(yè)面的DOM樹的節(jié)點(diǎn)的特征來(lái)設(shè)定用于不對(duì)節(jié)點(diǎn)進(jìn)行分割、對(duì)節(jié)點(diǎn)進(jìn)行分割或調(diào)整相鄰節(jié)點(diǎn)之間的關(guān)聯(lián)度的多個(gè)規(guī)則;以及對(duì)所述DOM樹的全部節(jié)點(diǎn)進(jìn)行遍歷,將每個(gè)節(jié)點(diǎn)與所述多個(gè)規(guī)則依次進(jìn)行匹配來(lái)執(zhí)行不對(duì)節(jié)點(diǎn)進(jìn)行分割、對(duì)節(jié)點(diǎn)進(jìn)行分割或者調(diào)整相鄰節(jié)點(diǎn)之間的關(guān)聯(lián)度的操作,迭代匹配直到分割的頁(yè)面模塊不再改變、或者相鄰節(jié)點(diǎn)之間的關(guān)聯(lián)度不再改變或者達(dá)到預(yù)定的迭代次數(shù)。附記14、根據(jù)附記13所述的裝置,其中,所述節(jié)點(diǎn)的特征包括:非斷行節(jié)點(diǎn)、斷行節(jié)點(diǎn)、有效節(jié)點(diǎn)和文本節(jié)點(diǎn)。附記15、根據(jù)附記13所述的裝置,其中,不對(duì)節(jié)點(diǎn)進(jìn)行分割的規(guī)則包括:如果節(jié)點(diǎn)不是文本節(jié)點(diǎn)并且其沒(méi)有有效節(jié)點(diǎn),則該節(jié)點(diǎn)不被分割并且該節(jié)點(diǎn)的子節(jié)點(diǎn)也不被分割;如果節(jié)點(diǎn)只包含一個(gè)有效節(jié)點(diǎn)并且該節(jié)點(diǎn)不是文本節(jié)點(diǎn),則該節(jié)點(diǎn)不被分割,然后進(jìn)入該節(jié)點(diǎn)的子節(jié)點(diǎn)進(jìn)行規(guī)則匹配;如果節(jié)點(diǎn)的子節(jié)點(diǎn)都是文本節(jié)點(diǎn),則該節(jié)點(diǎn)不被分割;如果節(jié)點(diǎn)僅包含相同樣式的內(nèi)容列表,則該節(jié)點(diǎn)不被分割;以及如果節(jié)點(diǎn)的部分子節(jié)點(diǎn)具有類似的級(jí)聯(lián)樣式表樣式,則這些子節(jié)點(diǎn)不被分割。附記16、根據(jù)附記13所述的裝置,其中,對(duì)節(jié)點(diǎn)進(jìn)行分割的規(guī)則包括:如果節(jié)點(diǎn)包含<HR>,則該節(jié)點(diǎn)被分割;以及如果節(jié)點(diǎn)的兩個(gè)子節(jié)點(diǎn)之間的距離大于該兩個(gè)子節(jié)點(diǎn)中的較小子節(jié)點(diǎn)的長(zhǎng)度或?qū)挾鹊念A(yù)定比例,則該節(jié)點(diǎn)被分割。附記17、根據(jù)附記13所述的裝置,其中,調(diào)整相鄰節(jié)點(diǎn)之間的關(guān)聯(lián)度的規(guī)則包括:如果節(jié)點(diǎn)的子節(jié)點(diǎn)之一是斷行節(jié)點(diǎn),則分割該節(jié)點(diǎn),并基于兩個(gè)模塊之間的距離將關(guān)聯(lián)度設(shè)置為第一預(yù)定值;如果節(jié)點(diǎn)中有兩塊內(nèi)容的背景顏色不同,則分割該節(jié)點(diǎn),基于兩塊內(nèi)容之間的距離將關(guān)聯(lián)度設(shè)置為第二預(yù)定值,其中第二預(yù)定值小于等于第一預(yù)定值;如果節(jié)點(diǎn)中存在表單,則將所述表單所分割的模塊的關(guān)聯(lián)度都減去預(yù)定差數(shù);如果所有子節(jié)點(diǎn)具有相同的級(jí)聯(lián)樣式表樣式,則將子節(jié)點(diǎn)的關(guān)聯(lián)度減去預(yù)定差數(shù)。附記18、根據(jù)附記11或12所述的裝置,還包括:分類模型訓(xùn)練單元,所述分類模型訓(xùn)練單元包括:訓(xùn)練數(shù)據(jù)集獲得子單元,被配置為獲得訓(xùn)練數(shù)據(jù)集,所述訓(xùn)練數(shù)據(jù)集包括多個(gè)網(wǎng)頁(yè)頁(yè)面,其中每個(gè)網(wǎng)頁(yè)頁(yè)面標(biāo)注有所包括的獨(dú)立模塊、以及各獨(dú)立模塊所對(duì)應(yīng)的類別;特征提取子單元,被配置為基于所述訓(xùn)練數(shù)據(jù)集中的多個(gè)網(wǎng)頁(yè)頁(yè)面的DOM樹提取各個(gè)獨(dú)立模塊的特征;以及分類模型訓(xùn)練子單元,被配置為基于所提取的各個(gè)獨(dú)立模塊的特征以及各獨(dú)立模塊所對(duì)應(yīng)的類別進(jìn)行訓(xùn)練得到所述分類模型。附記19、根據(jù)附記11或12所述的裝置,其中,所述獨(dú)立模塊被分類的所述預(yù)設(shè)類別包括:帶有超鏈接的純文本的列表、帶有超鏈接和圖像的文本的列表、圖片列表、純文本的列表、純文本、帶有評(píng)論的純文本、帶有用戶交互的應(yīng)用程序、以及沒(méi)有用戶交互的應(yīng)用程序。附記20、根據(jù)附記18所述的裝置,其中,基于網(wǎng)頁(yè)頁(yè)面的DOM樹所提取的獨(dú)立模塊的特征包括以下中的一項(xiàng)或多項(xiàng):超鏈接與文本句子的 比值、表單控件和超鏈接的比值、是否存在提交按鈕、是否存在表單、列表子節(jié)點(diǎn)的數(shù)量、節(jié)點(diǎn)文本的平均長(zhǎng)度、超鏈接和圖像的比值、是否存在提交的JavaScript腳本、表單控件和文字?jǐn)?shù)量的比值。當(dāng)前第1頁(yè)1 2 3