本發(fā)明設(shè)計web測試領(lǐng)域,尤其涉及一種兼容性缺陷的分析方法及系統(tǒng)。
背景技術(shù):
隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,人們的生活越來越網(wǎng)絡(luò)化,太多多的事情都可以通過網(wǎng)絡(luò)來完成。當(dāng)然,每一個開發(fā)出來的產(chǎn)品都需要經(jīng)過嚴(yán)格的測試才能交付使用,測試變的越來越重要,測試的任務(wù)也越來越繁重。層出不窮的新網(wǎng)站涌出,在保證基本功能的前提下,還要保證網(wǎng)站在不同的瀏覽器下都可以正常運行,所以瀏覽器兼容性測試也變的異常重要。
因為操作系統(tǒng)、瀏覽器越來越多樣性,軟件兼容性測試在目前軟件測試領(lǐng)域占有很重要的地位,無論是b/s架構(gòu)還是c/s架構(gòu)的軟件都需要進(jìn)行兼容性測試,為了充分保證產(chǎn)品的平臺無關(guān)性,使用戶充分感受到軟件的友好。
兼容性測試指對所設(shè)計程序與硬件、軟件之間的兼容性的測試。一般分為瀏覽器兼容測試和分辨率兼容測試。一般來說,兼容性指能同時容納多個方面,在計算機(jī)術(shù)語上兼容是指幾個硬件之間、幾個軟件之間或是軟硬件之間的相互配合程度。兼容性測試是指測試軟件在特定的硬件平臺上、不同的應(yīng)用軟件之間、不同的操作系統(tǒng)平臺上、不同的網(wǎng)絡(luò)等環(huán)境中是否能夠很友好的運行的測試。
兼容性測試的作用主要有:1、兼容性測試能夠進(jìn)一步提高產(chǎn)品的質(zhì)量。2、兼容性測試能使軟件與盡可能多的其他軟件“和平共處”,盡可能達(dá)到平臺無關(guān)性。3、兼容性測試能盡可能的保證軟件存在的價值,它是衡量一個軟件質(zhì)量的重要指標(biāo)。4、兼容性測試能使軟件產(chǎn)品的市場更廣闊。對于web測試來說,瀏覽器兼容性測試尤為重要。
目前進(jìn)行瀏覽器兼容性測試,大多都是憑測試人員的經(jīng)驗來判斷哪些地方可能出現(xiàn)兼容性問題,這樣很有可能因為新人經(jīng)驗不足導(dǎo)致測試覆蓋不全面,遺漏重大問題。更有甚至為了保證全面性,很多人在所有瀏覽器下都去執(zhí)行所有功能用例,這樣雖然保證了測試全面性,但是測試效率卻大大降低。
技術(shù)實現(xiàn)要素:
針對現(xiàn)有技術(shù)存在的問題,現(xiàn)提供了一種兼容性缺陷的分析方法及系統(tǒng)。
具體的技術(shù)方案如下:
一種兼容性缺陷的分析方法,包括:
根據(jù)web測試缺陷數(shù)據(jù)集的分類信息篩選出兼容性缺陷;
按照web測試缺陷描述中的屬性,對瀏覽器的所述兼容性缺陷進(jìn)行分類分析,輸出瀏覽器測試等級排序;
根據(jù)所述瀏覽器測試等級排序選取相應(yīng)的瀏覽器進(jìn)行兼容性預(yù)測。
優(yōu)選的,所述web測試缺陷描述中的屬性包括:
缺陷所屬系統(tǒng)和/或瀏覽器和/或缺陷分類和/或缺陷嚴(yán)重程度和/或缺陷概要和/或缺陷的具體步驟描述。
優(yōu)選的,按照所述web測試缺陷描述中的屬性,對瀏覽器的所述兼容性缺陷進(jìn)行分類分析包括:對所述瀏覽器兼容性缺陷按照所述缺陷所屬瀏覽器進(jìn)行分類;
所述輸出瀏覽器測試等級排序包括:對所述分類根據(jù)數(shù)量做降序排列,作為所述瀏覽器測試等級排序。
優(yōu)選的,按照所述web測試缺陷描述中的屬性,對瀏覽器的所述兼容性缺陷進(jìn)行分類分析包括:通過于所述缺陷概要中的技術(shù)關(guān)鍵字匹配,獲取兼容性錯誤對應(yīng)的使用技術(shù),并對所述使用技術(shù)按照所述缺陷所屬瀏覽器進(jìn)行分類,形成第一分類。
優(yōu)選的,于對所述使用技術(shù)按照所述缺陷所屬瀏覽器進(jìn)行分類后還包括:通過于所述缺陷概要中的功能點關(guān)鍵字匹配,對所述第一分類按照功能點進(jìn)行分類,形成第二分類;
所述輸出瀏覽器測試等級排序包括:按照待測功能點與所述第二分類中功能點的對應(yīng)關(guān)系,對所述第二分類根據(jù)數(shù)量做降序排列,作為所述瀏覽器測試等級排序。
一種兼容性缺陷的分析系統(tǒng),包括:
分類模塊,根據(jù)web測試缺陷數(shù)據(jù)集的分類信息篩選出兼容性缺陷;
分析模塊,連接所述分類模塊,按照web測試缺陷描述中的屬性,對瀏覽器的所述兼容性缺陷進(jìn)行分類分析,輸出瀏覽器測試等級排序;
預(yù)測模塊,連接所述分析模塊,根據(jù)所述瀏覽器測試等級排序選取相應(yīng)的瀏覽器進(jìn)行兼容性預(yù)測。
優(yōu)選的,所述web測試缺陷描述中的屬性包括:
缺陷所屬系統(tǒng)和/或瀏覽器和/或缺陷分類和/或缺陷嚴(yán)重程度和/或缺陷概要和/或缺陷的具體步驟描述。
優(yōu)選的,所述分析模塊對所述瀏覽器兼容性缺陷按照所述缺陷所屬瀏覽器進(jìn)行分類;以及
所述預(yù)測模塊對所述分類根據(jù)數(shù)量做降序排列,作為所述瀏覽器測試等級排序。
優(yōu)選的,所述分析模塊通過于所述缺陷概要中的技術(shù)關(guān)鍵字匹配,獲取兼容性錯誤對應(yīng)的使用技術(shù),并對所述使用技術(shù)按照所述缺陷所屬瀏覽器進(jìn)行分類,形成第一分類。
優(yōu)選的,所述分析模塊通過于所述缺陷概要中的功能點關(guān)鍵字匹配,對所述第一分類按照功能點進(jìn)行分類,形成第二分類;
所述預(yù)測模塊按照待測功能點與所述第二分類中功能點的對應(yīng)關(guān)系,對所述第二分類根據(jù)數(shù)量做降序排列,作為所述瀏覽器測試等級排序。
上述技術(shù)方案的有益效果是:
上述技術(shù)方案中,通過web測試缺陷數(shù)據(jù)集的分類信息篩選出兼容性缺陷,并分析這些缺陷輸出瀏覽器測試等級排序,同時對缺陷在各個瀏覽器下出現(xiàn)的幾率進(jìn)行兼容性預(yù)測。預(yù)測結(jié)果可以用于預(yù)測新web項目的兼容性缺陷,為測試人員設(shè)計兼容性測試用例提供指導(dǎo),提高了測試的效率。
附圖說明
圖1為本發(fā)明一種兼容性缺陷的分析方法的實施例的流程圖;
圖2為本發(fā)明一種兼容性缺陷的分析系統(tǒng)的實施例的結(jié)構(gòu)示意圖。
具體實施方式
需要說明的是,在不沖突的情況下,下述技術(shù)方案,技術(shù)特征之間可以相互組合。
下面結(jié)合附圖對本發(fā)明的具體實施方式作進(jìn)一步的說明:
一種兼容性缺陷的分析方法,如圖1所示,該分析方法包括:
根據(jù)web測試缺陷數(shù)據(jù)集的分類信息篩選出兼容性缺陷;
按照web測試缺陷描述中的屬性,對瀏覽器的所述兼容性缺陷進(jìn)行分類分析,輸出瀏覽器測試等級排序;
根據(jù)所述瀏覽器測試等級排序選取相應(yīng)的瀏覽器進(jìn)行兼容性預(yù)測。
本實施例通過在云環(huán)境下,對所有缺陷進(jìn)行分析,通過分析結(jié)果為測試人設(shè)計兼容性測試用例提供指導(dǎo)。
本實施例可以通過web測試缺陷數(shù)據(jù)集對已有web測試缺陷進(jìn)行分析,從而進(jìn)行預(yù)測并給測試人員給出指導(dǎo),首先建立一個web測試缺陷數(shù)據(jù)集,可以是web測試缺陷的大數(shù)據(jù)庫,根據(jù)web測試缺陷描述中的屬性分類,篩選出所有兼容性缺陷并對兼容性缺陷進(jìn)行分析,輸出并根據(jù)瀏覽器測試等級排序選取瀏覽器,以進(jìn)行兼容性預(yù)測,為測試人員提供指導(dǎo),提高測試效率。
本發(fā)明一個較佳的實施例中,web測試缺陷描述中的屬性包括:
缺陷所屬系統(tǒng)和/或瀏覽器和/或缺陷分類和/或缺陷嚴(yán)重程度和/或缺陷概要和/或缺陷的具體步驟描述。
目前很多測試基于云環(huán)境進(jìn)行測試,對缺陷用缺陷管理工具進(jìn)行標(biāo)準(zhǔn)化管理。本實施例中的web測試缺陷數(shù)據(jù)集中的缺陷要包含以下數(shù)據(jù)分析中所需要的內(nèi)容:缺陷所屬系統(tǒng)、瀏覽器、缺陷分類、嚴(yán)重程度、缺陷概要、缺陷具體步驟描述。在云環(huán)境中,對所有項目進(jìn)行篩選,篩選出所有瀏覽器項目,并得到這些瀏覽器項目下的所有缺陷,從而建立一個含有所有web測試缺陷數(shù)據(jù)集,例如web測試缺陷的大數(shù)據(jù)庫。隨著技術(shù)的進(jìn)步和瀏覽器的更新迭代,建立分析數(shù)據(jù)庫時可以選取近兩年的項目,以保證得到的結(jié)果更加精確。
本發(fā)明一個較佳的實施例中,web測試缺陷數(shù)據(jù)集可以包括:
兼容性缺陷;和
代碼錯誤;和/或
需求類缺陷;和/或
程序?qū)崿F(xiàn)間接類錯誤;和/或
環(huán)境類缺陷;和/或
數(shù)據(jù)錯誤。
本實施例中,對web測試缺陷數(shù)據(jù)集進(jìn)行分類,把web測試缺陷分成以下錯誤類型:
a、兼容性錯誤(各種瀏覽器下的錯誤)
b、代碼錯誤(如代碼語法錯誤、代碼引用錯誤、代碼邏輯錯誤、代碼循環(huán)錯誤等);
c、需求類缺陷(如未按需求實現(xiàn)、需求變更等都屬于此類);
d、程序?qū)崿F(xiàn)間接類錯誤(主要指接口問題);
e、環(huán)境類缺陷(如版本未控制好,測試過程中更新了代碼造成的錯誤、輸出了不該輸出的調(diào)試信息等);
f、數(shù)據(jù)錯誤(如臟數(shù)據(jù))。
本發(fā)明一個較佳的實施例中,按照所述web測試缺陷描述中的屬性,對瀏覽器的所述兼容性缺陷進(jìn)行分類分析包括:對所述瀏覽器兼容性缺陷按照所述缺陷所屬瀏覽器進(jìn)行分類;
所述輸出瀏覽器測試等級排序包括:對所述分類根據(jù)數(shù)量做降序排列,作為所述瀏覽器測試等級排序。
上述實施例中,根據(jù)缺陷所屬瀏覽器進(jìn)行分類,得出所有瀏覽器下兼容性缺陷,例如,在兼容性缺陷中,缺陷1屬于ie9下的問題,缺陷2屬于ie10下的問題,缺陷3屬于chrome下的問題,每一個瀏覽器得到一個結(jié)果集,c1屬于ie9,c2屬于ie10,c3屬于chrome等等。
按照以上的分析方法可以得到:把結(jié)果集c1c2c3等按照降序排列,作為所述瀏覽器測試等級排序,例如排序為c2c3c1,就可得出ie10下兼容性問題最多。在選取兼容性瀏覽器時,根據(jù)時間進(jìn)度有選擇的進(jìn)行一些瀏覽器測試,如兼容性缺陷最多的瀏覽器作為最高級別測試瀏覽器。
本發(fā)明一個較佳的實施例中,按照所述web測試缺陷描述中的屬性,對瀏覽器的所述兼容性缺陷進(jìn)行分類分析包括:通過于所述缺陷概要中的技術(shù)關(guān)鍵字匹配,獲取兼容性錯誤對應(yīng)的使用技術(shù),并對所述使用技術(shù)按照所述缺陷所屬瀏覽器進(jìn)行分類,形成第一分類。
本發(fā)明一個較佳的實施例中,于對所述使用技術(shù)按照所述缺陷所屬瀏覽器進(jìn)行分類后還包括:通過于所述缺陷概要中的功能點關(guān)鍵字匹配,對所述第一分類按照功能點進(jìn)行分類,形成第二分類;
所述輸出瀏覽器測試等級排序包括:按照待測功能點與所述第二分類中功能點的對應(yīng)關(guān)系,對所述第二分類根據(jù)數(shù)量做降序排列,作為所述瀏覽器測試等級排序。
此外,還可以針對已有兼容性缺陷,根據(jù)技術(shù)關(guān)鍵字,例如缺陷概要中的關(guān)鍵字、瀏覽器關(guān)鍵字等進(jìn)行篩選,得出同類問題會同時在哪個瀏覽器下出現(xiàn),獲取兼容性錯誤對應(yīng)的使用技術(shù),比如所有輸入框輸入判斷使用ajax技術(shù),記為類別1,其他按此方法分別記為類別2,類別3等。進(jìn)行篩選得出第一分類d1,d2,d3等。
針對第一分類,d1,d2,d3對功能點關(guān)鍵字進(jìn)行分析比對,找出最相似的缺陷,把同類問題再進(jìn)行細(xì)分到一個具體的功能點,形成第二分類。例如,根據(jù)ajax技術(shù)形成第一分類后,繼續(xù)對該第一分類以具體功能,如登錄,或注冊等為關(guān)鍵詞在缺陷概要中進(jìn)行檢索匹配,從而形成對應(yīng)的上述第二分類,如使用ajax技術(shù)的登錄功能分類,或使用ajax技術(shù)的注冊功能分類。根據(jù)以上分析,在拿到一個新的web項目時,對功能模塊劃分完成后對容易出現(xiàn)兼容錯誤的地方都需要進(jìn)行兼容測試。在確定要測試的瀏覽器后,對于同一問題會在多個瀏覽器下出現(xiàn)的問題,在時間緊張的情況下,優(yōu)先測試錯誤率最高的瀏覽器。
一種兼容性缺陷的分析系統(tǒng),如圖2所示,包括:
分類模塊,根據(jù)web測試缺陷數(shù)據(jù)集的分類信息篩選出兼容性缺陷;
分析模塊,連接所述分類模塊,按照web測試缺陷描述中的屬性,對瀏覽器的所述兼容性缺陷進(jìn)行分類分析,輸出瀏覽器測試等級排序;
預(yù)測模塊,連接所述分析模塊,根據(jù)所述瀏覽器測試等級排序選取相應(yīng)的瀏覽器進(jìn)行兼容性預(yù)測。
基于上述實施例,從一種實際需求場景出發(fā),本實施例為一種兼容性測試缺陷的分析、預(yù)測系統(tǒng),從而為測試人員進(jìn)行兼容性測試提供指導(dǎo)。運用此系統(tǒng)還可以對其他兼容性測試進(jìn)行分析,如app系統(tǒng)兼容,c/s架構(gòu)產(chǎn)品的兼容等都屬于本實施例的范疇。
首先建立一個web根據(jù)web測試缺陷數(shù)據(jù)集的分類信息篩選出兼容性缺陷,分析模塊對兼容性缺陷進(jìn)行分析,輸出瀏覽器測試等級排序,以使預(yù)測模塊根據(jù)瀏覽器測試等級排序進(jìn)行兼容性的預(yù)測。
本發(fā)明一個較佳的實施例中,web測試缺陷描述中的屬性包括:
缺陷所屬系統(tǒng)和/或瀏覽器和/或缺陷分類和/或缺陷嚴(yán)重程度和/或缺陷概要和/或缺陷的具體步驟描述。
本發(fā)明一個較佳的實施例中,web測試缺陷數(shù)據(jù)集可以包括:
兼容性缺陷;和
代碼缺錯誤;和/或
需求類缺陷;和/或
程序?qū)崿F(xiàn)間接類錯誤;和/或
環(huán)境類缺陷;和/或
數(shù)據(jù)錯誤。
本發(fā)明一個較佳的實施例中,所述分析模塊對所述瀏覽器兼容性缺陷按照所述缺陷所屬瀏覽器進(jìn)行分類;以及
所述預(yù)測模塊對所述分類根據(jù)數(shù)量做降序排列,作為所述瀏覽器測試等級排序。
本發(fā)明一個較佳的實施例中,所述分析模塊通過于所述缺陷概要中的技術(shù)關(guān)鍵字匹配,獲取兼容性錯誤對應(yīng)的使用技術(shù),并對所述使用技術(shù)按照所述缺陷所屬瀏覽器進(jìn)行分類,形成第一分類。
本發(fā)明一個較佳的實施例中,所述分析模塊通過于所述缺陷概要中的功能點關(guān)鍵字匹配,對所述第一分類按照功能點進(jìn)行分類,形成第二分類;
所述預(yù)測模塊按照待測功能點與所述第二分類中功能點的對應(yīng)關(guān)系,對所述第二分類根據(jù)數(shù)量做降序排列,作為所述瀏覽器測試等級排序。
上述實施例中,分類模塊于web測試缺陷數(shù)據(jù)集中篩選出兼容性缺陷,分析模塊通過分析哪個瀏覽器下兼容性缺陷最多,在拿到一個新的web項目時,預(yù)測模塊根據(jù)時間進(jìn)度有選擇的進(jìn)行一些瀏覽器測試,如兼容性問題最多的瀏覽器作為最高級別測試瀏覽器。
分析模塊還可以根據(jù)缺陷摘要中關(guān)鍵字、瀏覽器關(guān)鍵字等技術(shù)關(guān)鍵字進(jìn)行篩選,得出同類問題會同時在哪個瀏覽器下出現(xiàn),比如所有輸入框輸入判斷使用ajax技術(shù),記為類別1,其他按此方法分別記為類別2,類別3等。進(jìn)行篩選得出結(jié)果集d1,d2,d3等。
通過對d1,d2,d3對結(jié)果集中缺陷的摘要、描述進(jìn)行分析比對,找出最相似的缺陷,把同類問題再進(jìn)行細(xì)分到一個具體的功能點。在確定要測試的瀏覽器后,預(yù)測模塊對于同一問題會在多個瀏覽器下出現(xiàn)的問題,在時間緊張的情況下,優(yōu)先測試錯誤率最高的瀏覽器。
綜上,上述技術(shù)方案中,通過web測試缺陷數(shù)據(jù)集的分類信息篩選出兼容性缺陷,并分析這些缺陷輸出瀏覽器測試等級排序,同時對缺陷在各個瀏覽器下出現(xiàn)的幾率進(jìn)行兼容性預(yù)測。預(yù)測結(jié)果可以用于預(yù)測新web項目的兼容性缺陷,為測試人員設(shè)計兼容性測試用例提供指導(dǎo),提高了測試的效率。
通過說明和附圖,給出了具體實施方式的特定結(jié)構(gòu)的典型實施例,基于本發(fā)明精神,還可作其他的轉(zhuǎn)換。盡管上述發(fā)明提出了現(xiàn)有的較佳實施例,然而,這些內(nèi)容并不作為局限。
對于本領(lǐng)域的技術(shù)人員而言,閱讀上述說明后,各種變化和修正無疑將顯而易見。因此,所附的權(quán)利要求書應(yīng)看作是涵蓋本發(fā)明的真實意圖和范圍的全部變化和修正。在權(quán)利要求書范圍內(nèi)任何和所有等價的范圍與內(nèi)容,都應(yīng)認(rèn)為仍屬本發(fā)明的意圖和范圍內(nèi)。