國(guó)建勝 張亞楠 張雪石
摘 要:隨著技術(shù)發(fā)展,軟件測(cè)試技術(shù)的不斷提高,軟件功能越來(lái)越多,隨之出現(xiàn)的問(wèn)題也越來(lái)越多,測(cè)試人員除了做整體系統(tǒng)測(cè)試之外,還需要對(duì)被測(cè)系統(tǒng)的質(zhì)量有一個(gè)整體的把握。因此,文章開(kāi)發(fā)了一款軟件測(cè)試數(shù)據(jù)的收集分析與質(zhì)量評(píng)價(jià)系統(tǒng),旨在收集軟件測(cè)試數(shù)據(jù)并進(jìn)行數(shù)據(jù)分析和系統(tǒng)質(zhì)量評(píng)價(jià),幫助公司和測(cè)試人員從宏觀上了解被測(cè)系統(tǒng)的質(zhì)量并調(diào)整相應(yīng)的測(cè)試方案。
關(guān)鍵詞:軟件測(cè)試;數(shù)據(jù)分析;系統(tǒng)質(zhì)量
時(shí)代的發(fā)展和科技的不斷進(jìn)步,使得軟件規(guī)模不斷擴(kuò)大,軟件設(shè)計(jì)的復(fù)雜程度不斷提高,軟件開(kāi)發(fā)中出現(xiàn)錯(cuò)誤或者缺陷的概率越來(lái)越大。為了提高軟件測(cè)試人員的工作效率和系統(tǒng)質(zhì)量,我們開(kāi)發(fā)了一款軟件測(cè)試數(shù)據(jù)的收集分析與質(zhì)量評(píng)價(jià)系統(tǒng),通過(guò)獲取網(wǎng)站或者系統(tǒng)中測(cè)試人員提交的測(cè)試結(jié)果數(shù)據(jù),例如BUG嚴(yán)重程度、BUG類(lèi)型等信息,加以分析和整理,最終以表格、直方圖、餅狀圖等形式直觀地將統(tǒng)計(jì)結(jié)果顯現(xiàn)出來(lái),以便公司和測(cè)試人員進(jìn)行查看,并及時(shí)作出工作調(diào)整。軟件測(cè)試數(shù)據(jù)的收集分析與質(zhì)量評(píng)價(jià)系統(tǒng)適用于大多數(shù)軟件開(kāi)發(fā)公司。
1 系統(tǒng)整體設(shè)計(jì)
軟件測(cè)試數(shù)據(jù)的收集分析與系統(tǒng)質(zhì)量評(píng)價(jià)系統(tǒng)采用模塊化的設(shè)計(jì)理念,分為數(shù)據(jù)采集、綜合數(shù)據(jù)統(tǒng)計(jì)、項(xiàng)目統(tǒng)計(jì)查詢(xún)、軟件質(zhì)量關(guān)鍵績(jī)效指標(biāo)(Key Performance Indicator,KPI)統(tǒng)計(jì)、個(gè)人工作量統(tǒng)計(jì)5個(gè)模塊,其工作原理為用python編寫(xiě)的程序從測(cè)試人員提交問(wèn)題數(shù)據(jù)的網(wǎng)站上下載所需的數(shù)據(jù)并存入數(shù)據(jù)庫(kù),然后從數(shù)據(jù)庫(kù)中抽取所需要統(tǒng)計(jì)的數(shù)據(jù),通過(guò)分析整理,以直觀的形式顯示出來(lái)[1]。系統(tǒng)模塊結(jié)構(gòu)如圖1所示。
2 系統(tǒng)介紹
2.1 數(shù)據(jù)采集
數(shù)據(jù)采集模塊采用python語(yǔ)言開(kāi)發(fā),利用聚焦網(wǎng)絡(luò)爬蟲(chóng)和增量式網(wǎng)絡(luò)爬蟲(chóng)技術(shù)編寫(xiě)爬蟲(chóng)程序,HTML下載器和HTML解析器用來(lái)下載網(wǎng)頁(yè)和解析HTML,程序從網(wǎng)站或系統(tǒng)中讀取URL并下載網(wǎng)頁(yè),通過(guò)CSS元素識(shí)別、關(guān)鍵字等方式解析出測(cè)試人員提交的缺陷和執(zhí)行用例等所需的數(shù)據(jù),然后存儲(chǔ)到數(shù)據(jù)庫(kù)中。采集模塊中還包括數(shù)據(jù)存儲(chǔ)器子模塊用來(lái)將存儲(chǔ)的數(shù)據(jù)輸出為指定的文件格式,這里將數(shù)據(jù)輸出為HTML格式,爬蟲(chóng)調(diào)度器子模塊用來(lái)協(xié)調(diào)管理URL管理器,HTML下載器,HTML解析器和數(shù)據(jù)存儲(chǔ)器等模塊,按照運(yùn)行流程控制各個(gè)模塊的工作。
其他統(tǒng)計(jì)數(shù)據(jù)模塊可以從數(shù)據(jù)庫(kù)中提取所需數(shù)據(jù),進(jìn)行分析和計(jì)算,總結(jié)出各自模塊的功能。
2.2 綜合數(shù)據(jù)統(tǒng)計(jì)
綜合統(tǒng)計(jì)數(shù)據(jù)模塊首先從數(shù)據(jù)庫(kù)中獲取數(shù)據(jù),通過(guò)分析計(jì)算,得出缺陷總數(shù),執(zhí)行用例總數(shù)和項(xiàng)目總數(shù);其次,以曲線(xiàn)圖的形式直觀地顯示出每月測(cè)試成本,包括功能測(cè)試、性能測(cè)試和安全測(cè)試;最后以表格的形式對(duì)進(jìn)行中的項(xiàng)目數(shù)據(jù)進(jìn)行展示,表格內(nèi)容包括項(xiàng)目名稱(chēng)、項(xiàng)目負(fù)責(zé)人、報(bào)價(jià)、總問(wèn)題數(shù)、未解決問(wèn)題數(shù)、項(xiàng)目狀態(tài)。每部分都直觀清晰、界面友好,給用戶(hù)最直接和便捷的方式來(lái)查看數(shù)據(jù)信息[2]。
2.3 項(xiàng)目統(tǒng)計(jì)查詢(xún)
項(xiàng)目統(tǒng)計(jì)查詢(xún)模塊按照年份、季度、月份對(duì)項(xiàng)目進(jìn)行不同緯度的查詢(xún),統(tǒng)計(jì)的結(jié)果有項(xiàng)目類(lèi)型占比,此項(xiàng)詳細(xì)地展示了每個(gè)項(xiàng)目類(lèi)型的比例;問(wèn)題等級(jí)占比,分為核心、嚴(yán)重、一般和輕微4個(gè)等級(jí),以餅狀圖的形式直觀地展示了每個(gè)等級(jí)的占比和對(duì)應(yīng)的問(wèn)題數(shù)量。情況如圖2所示。
2.4 質(zhì)量KPI統(tǒng)計(jì)
軟件測(cè)試數(shù)據(jù)的收集分析與質(zhì)量評(píng)價(jià)系統(tǒng)統(tǒng)計(jì)軟件質(zhì)量的KPI包括需求滿(mǎn)足度、缺陷關(guān)閉率、缺陷關(guān)閉周期、項(xiàng)目平均缺陷發(fā)現(xiàn)數(shù)、軟件一次檢測(cè)通過(guò)率等信息。需求滿(mǎn)足度從客戶(hù)的角度,依據(jù)客戶(hù)需求或者通用協(xié)議、系統(tǒng)需求規(guī)格書(shū)、系統(tǒng)方案、軟件需求規(guī)格書(shū)4個(gè)方面來(lái)進(jìn)行評(píng)估。
缺陷關(guān)閉率=當(dāng)月關(guān)閉的缺陷數(shù)/當(dāng)月計(jì)劃關(guān)閉的軟件缺陷數(shù)
缺陷關(guān)閉周期分為嚴(yán)重缺陷關(guān)閉周期和一般缺陷關(guān)閉周期,計(jì)算公式如下。
缺陷關(guān)閉周期=AVG(實(shí)際缺陷關(guān)閉時(shí)間-缺陷發(fā)現(xiàn)時(shí)間)(天)
平均項(xiàng)目缺陷數(shù)分為平均項(xiàng)目嚴(yán)重缺陷數(shù)和平均項(xiàng)目一般缺陷數(shù),平均項(xiàng)目缺陷數(shù)計(jì)算公式如下。
平均項(xiàng)目缺陷數(shù)=當(dāng)月發(fā)現(xiàn)的缺陷數(shù)/當(dāng)月檢測(cè)的項(xiàng)目數(shù)
軟件一次檢測(cè)通過(guò)率=一次檢測(cè)通過(guò)的軟件數(shù)/提交的軟件項(xiàng)目數(shù)
生產(chǎn)及市場(chǎng)反饋軟件缺陷數(shù)為當(dāng)月生產(chǎn)或市場(chǎng)反饋回來(lái)的軟件質(zhì)量問(wèn)題數(shù)。
2.5 個(gè)人工作量統(tǒng)計(jì)
個(gè)人工作量統(tǒng)計(jì)模塊按照年月的方式查詢(xún)員工的工作量。以表格的形式展示出員工的姓名、編寫(xiě)用例數(shù)、執(zhí)行用例數(shù)、發(fā)布問(wèn)題數(shù)等信息,管理人員可以直觀地查看每位員工的月度和年度工作情況,統(tǒng)計(jì)個(gè)人實(shí)際工作量作為人員績(jī)效考核的參考[3]。
3 結(jié)語(yǔ)
綜上所述,技術(shù)的發(fā)展使得軟件系統(tǒng)越來(lái)越復(fù)雜,出現(xiàn)問(wèn)題的概率也越來(lái)越大,軟件測(cè)試數(shù)據(jù)的收集分析與質(zhì)量評(píng)價(jià)系統(tǒng)旨在從系統(tǒng)或網(wǎng)站上收集測(cè)試人員提交的結(jié)果數(shù)據(jù),存入數(shù)據(jù)庫(kù),再?gòu)臄?shù)據(jù)庫(kù)中提取相應(yīng)的數(shù)據(jù)進(jìn)行相應(yīng)的分析總結(jié)和計(jì)算,將統(tǒng)計(jì)結(jié)果詳細(xì)地呈現(xiàn)在每個(gè)模塊中。同時(shí)還統(tǒng)計(jì)了每個(gè)測(cè)試人員的實(shí)際工作量工作情況,使得測(cè)試管理人員了解整體項(xiàng)目的測(cè)試情況和每位員工的工作情況,從中發(fā)現(xiàn)問(wèn)題并及時(shí)調(diào)整,有利于公司對(duì)測(cè)試部門(mén)合理地進(jìn)行工作安排。
[參考文獻(xiàn)]
[1]呂金和.嵌入式軟件測(cè)試[J].軟件導(dǎo)刊,2010(9):40-41.
[2]易敏捷.軟件測(cè)試國(guó)內(nèi)外發(fā)展現(xiàn)狀及趨勢(shì)研究[J].電腦知識(shí)與技術(shù),2013(26):6020-6022.
[3]李明澤.淺談軟件自動(dòng)化測(cè)試技術(shù)[J].科教導(dǎo)刊,2016(31):171-172.