国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

筆記本電腦自動化測試的任務(wù)分配模型與方法①

2019-07-23 02:08:34黃永鋒孫自誠羅保國
關(guān)鍵詞:檢查點筆記本電量

黃永鋒,孫自誠,羅保國

1(東華大學(xué) 計算機(jī)科學(xué)與技術(shù)學(xué)院,上海 201620)

2(中國科學(xué)院 軟件研究所,北京,100190)

引言

隨著計算機(jī)技術(shù)的飛速發(fā)展,筆記本電腦的功能越來越強(qiáng)大,結(jié)構(gòu)也越來越復(fù)雜,各功能出現(xiàn)的錯誤種類也隨之增加,這無疑為其軟硬件的測試帶來諸多不便[1].傳統(tǒng)的手工測試已逐漸不能滿足日益增多的測試任務(wù)需求,因此自動化任務(wù)分配就成了筆記本軟硬件測試的必然方向,是筆記本高質(zhì)量、高可靠性的重要保障[2,3].在以往的手工測試過程中,測試員需要自主區(qū)分筆記本的工作狀態(tài)對每個檢查點進(jìn)行測試,這無疑是對測試員體力和精力上的雙重消耗[4].

近年來,軟件自動化測試技術(shù)的出現(xiàn),為傳統(tǒng)的筆記本測試提供了很大幫助,節(jié)省了更多的人力和財力,同時也提高了測試的質(zhì)量,縮短了研發(fā)和上市的周期[5,6].但完整的自動化測試工具除了應(yīng)該包含自動化測試功能外,還應(yīng)具有適應(yīng)筆記本在多種狀態(tài)下測試的任務(wù)自動分配功能.任務(wù)自動分配是自動化測試中非常重要的一環(huán),可以進(jìn)一步減少資源開銷,使得自動化測試更加有意義[7].

因此,本文以筆記本測試的實際需求為切入點,設(shè)計了適應(yīng)筆記本不同狀態(tài)和隨機(jī)性測試的任務(wù)模型并實現(xiàn)了自動分配的算法.使得每次測試任務(wù)與每組測試條件間形成一種映射.這種任務(wù)分配方式既能滿足測試過程中各種條件的約束,真實的覆蓋所有測試情況[8],又能使測試員從復(fù)雜的任務(wù)分配中解放出來,并且能更好的避免任務(wù)分配重復(fù)或不足的現(xiàn)象,提高測試效率[9].

1 測試任務(wù)的模型構(gòu)建

筆記本測試的目的是通過較真實地模擬用戶的使用場景,以發(fā)現(xiàn)筆記本電腦中比較隱藏的問題和其發(fā)生的概率.通過分析測試要求,首先提出了用于構(gòu)建模型的基礎(chǔ)概念和條件,然后再根據(jù)各種條件的疊加關(guān)系計算實際的任務(wù)數(shù)據(jù),最后再以表格的形式較直觀的展示模型中數(shù)據(jù)的分布情況[10].

1.1 任務(wù)模型概念與條件

由于測試任務(wù)的復(fù)雜性,了解相關(guān)概念是進(jìn)行模型構(gòu)建的前提.本文基于實際的測試場景,提出了以下概念和條件:

(1)檢查點:筆記本電腦每個測試周期中的測試點,如相機(jī)、麥克風(fēng)、觸摸板、觸摸屏等.由于檢查點具有擴(kuò)展性,因此本文將以十個檢查點為例構(gòu)建任務(wù)模型.

(2)測試周期:每個測試周期由多個僅測試一次的檢查點構(gòu)成.測試周期是測試任務(wù)的重要組成部分,也是筆記本完成一次測試的基本單位.

(3)檢查點測試百分比:每個測試周期中,某個檢查點被測試的概率.

(4)機(jī)器類型:不同機(jī)器型號的筆記本,測試的檢查點不同.機(jī)器類型為同一類型的機(jī)器所測試檢查點的集合.

(5)測試計劃:現(xiàn)階段筆記本一般都有多種使用模式,如正常筆記本模式和平板電腦模式等,每種模式的測試可作為一個測試計劃.本文將以正常筆記本模式為例構(gòu)建任務(wù)模型.

(6)測試狀態(tài):測試狀態(tài)是指在執(zhí)行每個測試周期前筆記本的狀態(tài),常見的有睡眠、休眠、重啟等.一種測試計劃是由多種測試狀態(tài)組成.

(7)狀態(tài)屬性:狀態(tài)屬性描述的是筆記本以哪種方式進(jìn)入測試狀態(tài),例如筆記本可以通過電源按鈕、開始菜單和關(guān)閉蓋子等方式進(jìn)行睡眠狀態(tài).

(8)電量區(qū)間:測試時該筆記本所處的電量區(qū)間.電量區(qū)間可根據(jù)不同的測試需求進(jìn)行動態(tài)調(diào)節(jié),本文將電量區(qū)間分為接通電源和斷開電源下1%-50%,51%-100%這4 種情況.

(9)測試任務(wù):一次測試任務(wù)由相應(yīng)電量區(qū)間下的測試狀態(tài),狀態(tài)屬性和測試周期3 部分組成.每部分的具體參數(shù)值可通過算法計算得出.

在筆記本測試過程中,除了包含以上9 種概念外,任務(wù)分配還需要滿足一定的條件,即根據(jù)測試對象制定相應(yīng)的策略[11],具體如下:

(1)在同一電量區(qū)間下,測試狀態(tài)共有集中測試,隨機(jī)測試和輪換測試3 種測試策略.集中測試是指連續(xù)多個測試周期均在一種測試狀態(tài)下測試,直至此種狀態(tài)規(guī)定的次數(shù)測試完畢才進(jìn)入下一種狀態(tài)測試;隨機(jī)測試是指每個測試周期隨機(jī)選擇一種測試狀態(tài);輪換測試是指每種測試狀態(tài)根據(jù)測試周期依次選擇.

(2)在一種測試狀態(tài)下進(jìn)行測試時,狀態(tài)屬性共有3 種測試策略,即集中測試,隨機(jī)測試和輪換測試,形式與測試狀態(tài)的選擇類似.

1.2 測試項計算方法

通過上述的概念可知,測試周期雖然為一次測試的基本單位,但由于檢查點測試百分比和機(jī)器類型這兩個因素的存在,每個周期內(nèi)實際測試的檢查點也具有差異性.在本節(jié)中,暫且拋開測試周期之間的異同之處,具體分析測試狀態(tài)、測試屬性和電量區(qū)間這3 個因素在測試周期上的交互關(guān)系,并將滿足相同因素的所有測試周期的集合稱為一個“測試項”.文獻(xiàn)[12]采用“成對測試算法”來降低測試條件組合數(shù),但筆記本測試是多條件組合且多次重復(fù)的測試,因此該方法并不適用,仍需考慮完整的條件覆蓋.

為了方便描述,不妨將測試狀態(tài)的個數(shù)用Ns表示,每種測試狀態(tài)設(shè)為Si;同理測試屬性的個數(shù)為Na,每種測試屬性為Aj;四種電量區(qū)間為B1-B4,每個電量區(qū)間對應(yīng)的電量數(shù)值大小分別為Nb1-Nb4.再將一個測試計劃的總測試周期數(shù)設(shè)為T,滿足這3 種條件下的測試項包含的周期數(shù)設(shè)為Cijk,則Cijk與Si、Aj、Bk和T的關(guān)系為:

其中,1 ≤i≤Ns,1 ≤j≤Na,1 ≤k≤4且i,j,k為整數(shù)

若因特殊的測試需求,測試狀態(tài)、測試屬性和測試電量區(qū)間不再根據(jù)數(shù)值平均分配,而是根據(jù)測試方提供的相應(yīng)比率進(jìn)行分配,那么只需改變f(Si,Aj,Bk)的函數(shù)式即可.不妨將不同測試狀態(tài)下測試周期數(shù)所占比率的命名為Psi,不同測試屬性所占的比率為Paj,4 種電量區(qū)間所占的比率為Pb1-Pb4.則f(Si,Aj,Bk)的函數(shù)式為:

其中,1 ≤i≤Ns,1 ≤j≤Na,1 ≤k≤4且i,j,k為整數(shù)

通過以上的計算方法,可以實現(xiàn)在滿足不同的測試條件下將一個測試計劃的總測試周期數(shù)分為Ns×Na×4 種測試項,每個測試項的測試周期數(shù)Cijk與測試條件Si、Aj、Bk相關(guān).

1.3 生成模型數(shù)據(jù)表格

為了方便數(shù)據(jù)的展示,采用二維表格形式顯示模型數(shù)據(jù).可將十個檢查點設(shè)置成為二維表格的列,測試項為表格的行.并且將測試狀態(tài)與狀態(tài)屬性兩個條件進(jìn)行合并,然后再與電量區(qū)間條件進(jìn)行組合.通過以上分析,將測試項和檢查點測試數(shù)表示成一個10×(Ns×4)的二維測試數(shù)據(jù)表格(10 表示為十個檢查點),如表1所示(注意:數(shù)據(jù)可根據(jù)具體測試需求進(jìn)行更改;“觸控筆”檢查點表示只有部分筆記本支持此項測試,在分配任務(wù)時,需要根據(jù)包含此檢查點的機(jī)器類型,將此檢測點的測試次數(shù)100% 的分配給特定的筆記本測試).

表1 正常筆記本測試模式測試數(shù)據(jù)表

2 測試任務(wù)生成方法

在根據(jù)測試特點建立了測試任務(wù)模型之后,則需要生成待測筆記本可以執(zhí)行的測試任務(wù).依照測試條件,電量區(qū)間由測試機(jī)決定,不可改變,因此不作計算;測試狀態(tài)和狀態(tài)屬性根據(jù)選擇的測試策略動態(tài)調(diào)節(jié);測試周期將根據(jù)機(jī)器類型和檢查點測試百分比計算生成.經(jīng)過上述過程,生成一份完整的測試任務(wù),流程如圖1.

2.1 生成測試狀態(tài)

測試狀態(tài)有集中測試,隨機(jī)測試和輪換測試3 種測試策略,具體選擇哪一種方式可根據(jù)測試需求而定.可以采用一個十進(jìn)制數(shù)來表示每次任務(wù)選擇的測試狀態(tài).可繼續(xù)使用Ns,Na,Psi等變量的含義,另外用S表示該十進(jìn)制(S可取的值為1-Ns),用SBik表示每種測試狀態(tài)下每個電量區(qū)間內(nèi)已測的周期數(shù)(表1中SBik的個數(shù)為數(shù)據(jù)行數(shù),即3×4,共12 種).則3 種策略下S的計算方式為:

(1)集中測試:測完一個測試狀態(tài)的所以周期數(shù)再切換到下一個測試狀態(tài).

(2)隨機(jī)測試:隨機(jī)測試策略下狀態(tài)的選擇是根據(jù)Psi的值來選擇的.

其中,S等于滿足的最小i值.

(3)輪換測試:根據(jù)當(dāng)前已測的周期數(shù)對測試狀態(tài)個數(shù)取模得到結(jié)果.

其中,1 ≤i≤Ns,1 ≤k≤4.

圖1 生成測試任務(wù)流程圖

2.2 生成狀態(tài)屬性

測試屬性也有集中測試,隨機(jī)測試和輪換測試3 種策略.可用一個十進(jìn)制變量A表示每次任務(wù)所選擇的狀態(tài)屬性,ABjk表示每種狀態(tài)屬性下每個電量區(qū)間內(nèi)已測的周期數(shù).3 種策略下A的計算方式如下:

(1)集中測試:

(2)隨機(jī)測試:

其中,A等于滿足的最小j值.

(3)輪換測試:

其中,1 ≤j≤Na,1 ≤k≤4.

2.3 選擇機(jī)器類型

機(jī)器類型是依據(jù)待測試的筆記本電腦的型號和功能,選擇所需測試的檢查點集合,一種集合即為一種機(jī)器類型.該集合可用十位二進(jìn)制數(shù)來描述,每個檢測點對應(yīng)一位,若對應(yīng)二進(jìn)制位的檢查點屬于此集合,則該位為1,反之為0.通過上述描述不難發(fā)現(xiàn),機(jī)器類型與待測機(jī)之間為一種一對多的關(guān)系.在所有測試開始之前,可以根據(jù)待測筆記本電腦的特點,設(shè)置多個機(jī)器類型,然后在任務(wù)分配時,根據(jù)待測筆記本特征選擇一種機(jī)器類型進(jìn)行計算.

2.4 生成測試周期

生成測試周期首先根據(jù)當(dāng)前測試機(jī)所屬機(jī)器類型的二進(jìn)制數(shù),選擇測試的檢查點.若某個檢查點對應(yīng)位置為0,則直接不測;若為1,則進(jìn)一步考慮此檢查點的測試概率.可將當(dāng)前分配任務(wù)的測試機(jī)所選擇的機(jī)器類型中每個檢查點的值用MTm表示,相應(yīng)地,所生成的測試周期中每個檢測點的值用CPm表示,每個檢測點測試百分比用Pcpm表示,則CPm的計算方法為:

其中,1 ≤m≤10.

2.5 閾值判斷

通過上述算法,可以發(fā)現(xiàn)無論是測試狀態(tài)和狀態(tài)屬性在隨機(jī)測試策略下的計算,還是測試周期中每個檢查點的計算,都用到了隨機(jī)數(shù)Random(1)作為參數(shù).由于隨機(jī)概率具有不確定性的特點,很難保證所有任務(wù)都能嚴(yán)格按照相應(yīng)的百分比分布,因此,還需考慮設(shè)置一個閾值,并且在每次生成任務(wù)時進(jìn)行閾值判斷.由于測試狀態(tài)和狀態(tài)屬性在計算測試任務(wù)時都會選擇其中的一種,且當(dāng)某一種測試周期數(shù)測試完畢后,之后的測試任務(wù)就只會在剩余的選項中選擇,故不會存在漏測的情況.對于檢查點的計算,當(dāng)一個檢查點的測試百分比小于100%時,每次任務(wù)中此檢查點是否測試完全依照隨機(jī)概率和測試百分比計算得出,因此會出現(xiàn)漏測的情況.可為每個測試項設(shè)置一個閾值TH=5,在計算該測試項內(nèi)某個檢查點是否測試時,若滿足條件:

其中,Remainder(Cijk)為測試項剩余周期數(shù),Remainder(CPm)為檢查點剩余周期數(shù)

則在接下來的任務(wù)分配中,該檢查點的測試百分比會默認(rèn)升至為100%,即每次任務(wù)都會測試.可重新計算CPm的值:

2.6 生成測試任務(wù)

通過上述算法,可以在每一次任務(wù)分配時,依據(jù)選擇的測試策略計算出這次任務(wù)的測試狀態(tài)和狀態(tài)屬性,再根據(jù)機(jī)器類型和檢查點測試百分比生成每個檢測點的測試情況并組合成了一個測試周期.為了表示方便,測試周期也用十位十進(jìn)制數(shù)替代二進(jìn)制數(shù)來表示,每位數(shù)只有0 或1 兩種數(shù)值.則每次測試任務(wù)的組成結(jié)構(gòu)為:

算法偽代碼如下所示:

GetTask(battery){ //battery 為電池電量區(qū)間s,a=getPara(battery);//獲取測試狀態(tài)和狀態(tài)屬性參數(shù)//生成測試狀態(tài)state 和狀態(tài)屬性attr switch(strategy){//選擇的測試策略case 1://集中測試state=s;attr=a;case 2://隨機(jī)測試if(sum_p(s-1)<random(1)<=sum_p(s))state=s;

if(sum_p(a-1)<random(1)<=sum_p(a))attr=a;case 3://輪換測試state=(s++)%num(s);atrr=(a++)%num(a);}while(c<num(c)){//生成測試周期checkPoint[]checkPoint[c] = MT[c]*(random(1)<p(c)?1:0);if(getThreshold(c))//閾值判斷checkPoint[c]= MT[c];}task=state+attr+checkPoint[];//生成測試任務(wù)}

3 實例應(yīng)用與評估

3.1 系統(tǒng)應(yīng)用

目前,采用該模型和算法的系統(tǒng)已應(yīng)用于上海企順信息系統(tǒng)有限公司的實際項目中,該企業(yè)為聯(lián)想、戴爾、英特爾等筆記本生產(chǎn)商提供測試服務(wù).以某型號筆記本的測試為例,在測試中共有1 臺筆記本用作任務(wù)分配的服務(wù)器,18 臺用作領(lǐng)取測試任務(wù)的測試機(jī).測試狀態(tài)為集中測試策略,狀態(tài)屬性為輪換測試策略,測試檢查點個數(shù)為15 個.所采集的睡眠測試狀態(tài)下測試任務(wù)總計數(shù)據(jù)如表2所示(該次測試有五種測試狀態(tài),大量數(shù)據(jù)無法全部展示,且數(shù)據(jù)格式也具有重復(fù)性),其中某1 臺測試機(jī)的測試任務(wù)如表3所示(該臺測試機(jī)選擇的機(jī)器類型中未包含檢查點"觸控筆").從表中可以看出,測試任務(wù)數(shù)據(jù)分布能很好的滿足實際測試的條件和需求.除此之外,該算法可以實現(xiàn)向多臺測試機(jī)分配任務(wù)的同時,保證一個測試計劃中周期數(shù)的一致性約束.

表2 測試任務(wù)總計

3.2 模型與算法評估

任務(wù)自動分配的優(yōu)點是使測試員從復(fù)雜的任務(wù)分配過程中解脫出來.為了綜合評估該算法的實用性,將實現(xiàn)的任務(wù)自動分配功能與傳統(tǒng)的人工分配做比較,從一次任務(wù)分配時間、人力資源、用戶體驗、符合測試要求程度四個方面對任務(wù)分配進(jìn)行評估.表4為任務(wù)分配的比較.

通過上述比較可見,自動任務(wù)分配效率遠(yuǎn)高于人工分配.該算法的實現(xiàn)充分利用了計算機(jī)運算速度快,處理能力強(qiáng)的特點,有效的降低了任務(wù)分配時間和人力資源開銷.除此之外,該算法相較于人工而言更能滿足測試要求,可以較真實的模擬測試的隨機(jī)性和交替性.總而言之,自動化測試任務(wù)分配模型和算法的實現(xiàn) 在自動化測試方面具有更高的優(yōu)越性和實用性.

表3 某1 臺測試機(jī)的測試任務(wù)

表4 任務(wù)分配的比較

4 總結(jié)與展望

筆記本測試自動化任務(wù)分配是筆記本自動化測試的一個重要組成部分,實現(xiàn)此部分功能也是邁向全自動化測試的一個重要階段.本文從筆記本電腦自動化測試出發(fā),設(shè)計了用于測試任務(wù)自動化分配的模型和算法,從而進(jìn)一步提升自動化測試的百分比.從實際測試的效果可以看出,該算法既能滿足復(fù)雜條件下的測試需求,也能進(jìn)一步解放測試過程的勞動力,提高測試效率.當(dāng)然,本文設(shè)計的算法剛處于初步實用階段,在多客戶端并發(fā)任務(wù)分配效率上還有很大的提升空間,將在以后的研究中進(jìn)一步改進(jìn)和完善.

猜你喜歡
檢查點筆記本電量
電量越低越透明的手機(jī)
Spark效用感知的檢查點緩存并行清理策略①
免疫檢查點抑制劑相關(guān)內(nèi)分泌代謝疾病
免疫檢查點抑制劑在腫瘤治療中的不良反應(yīng)及毒性管理
筆記本
四川2018年7月轉(zhuǎn)讓交易結(jié)果:申報轉(zhuǎn)讓電量11.515 63億千瓦時
可愛的筆記本
電量隔離傳感器測試儀的研制
聯(lián)想發(fā)布YOGA系列超薄酷睿i多模筆記本
電子世界(2015年22期)2015-12-29 02:49:42
愛的筆記本
页游| 宣化县| 金华市| 安仁县| 贵州省| 日喀则市| 法库县| 济源市| 招远市| 阜宁县| 精河县| 达拉特旗| 富平县| 海林市| 安宁市| 平谷区| 河南省| 沙坪坝区| 蛟河市| 额尔古纳市| 汽车| 社会| 陆良县| 沅陵县| 平远县| 宝鸡市| 贞丰县| 威远县| 西昌市| 陆川县| 邓州市| 余干县| 招远市| 墨江| 濮阳市| 渭南市| 文水县| 丰台区| 壶关县| 东辽县| 都昌县|