自動(dòng)化測(cè)試之檢查點(diǎn)設(shè)置

<h2>一、檢測(cè)點(diǎn)設(shè)置技巧</h2>
正如我們上面所說(shuō)的,好的檢測(cè)點(diǎn)是發(fā)現(xiàn)Bug的關(guān)鍵。但是并不是說(shuō)檢測(cè)點(diǎn)設(shè)置的越多越好,因?yàn)闄z測(cè)點(diǎn)會(huì)消耗機(jī)器資源,測(cè)試用例出錯(cuò)的時(shí)候增加排查難度。所以如何設(shè)置檢測(cè)點(diǎn)呢?通??梢詤⒖既缦路椒ǎ?/p>

(1)根據(jù)測(cè)試用例的側(cè)重點(diǎn)設(shè)置檢測(cè)點(diǎn)

每個(gè)測(cè)試用例都有測(cè)試的重點(diǎn),比如說(shuō),我們測(cè)試登錄的時(shí)候,登錄是否成功,就需要檢測(cè)。但是在我們測(cè)試喜歡項(xiàng)目的時(shí)候,需要先登錄,這個(gè)時(shí)候登錄就不需要設(shè)置檢測(cè)點(diǎn)了,因?yàn)樵诘卿洔y(cè)試用例中已經(jīng)測(cè)試過(guò)了。

(2)設(shè)置檢測(cè)點(diǎn)要全面

我們?cè)诰帉憸y(cè)試用例的時(shí)候,一定要全面了解測(cè)試操作影響了哪些兒方面。對(duì)影響到的地方,都設(shè)置一下檢測(cè)點(diǎn),防止出現(xiàn)遺漏的地方。

(3)設(shè)置檢測(cè)點(diǎn)要靈活

設(shè)置檢測(cè)點(diǎn)的時(shí)候,我們通常會(huì)比較一下實(shí)際的結(jié)果和預(yù)期結(jié)果是否相同??墒怯行﹥簳r(shí)候,我們不能簡(jiǎn)單地進(jìn)行是否相等來(lái)判斷。比如說(shuō):檢測(cè)圖片的時(shí)候,可能會(huì)檢測(cè)圖片是否顯示;有的檢測(cè)對(duì)象在某些兒頁(yè)面會(huì)換行或是添加空格,與預(yù)期有變化,這個(gè)時(shí)候我們可以判斷是否包含關(guān)鍵字即可。靈活使用各種判斷函數(shù),才能使自動(dòng)化測(cè)試用例更加健壯。

<h2> 二、檢測(cè)點(diǎn)設(shè)置中常見(jiàn)的錯(cuò)誤</h2>
在測(cè)試過(guò)程中,我們編寫了測(cè)試用例,設(shè)置了檢測(cè)點(diǎn),可是在測(cè)試用例投入使用的過(guò)程中,我們不得不反復(fù)修改測(cè)試用例。因?yàn)闇y(cè)試用例總是通不過(guò),維護(hù)成本很高。雖然這一部分是因?yàn)楸粶y(cè)對(duì)象變化造成的,還有一部分原因是檢測(cè)點(diǎn)設(shè)置的不對(duì)。所以常見(jiàn)的檢測(cè)點(diǎn)設(shè)置中的錯(cuò)誤如下:

(1)檢測(cè)動(dòng)態(tài)變化的元素

檢測(cè)點(diǎn)不能隨著操作而變化,比如說(shuō)翻頁(yè)。我們想要測(cè)試翻頁(yè)是否成功,就不能去檢測(cè)第二頁(yè)第一個(gè)元素是否是某個(gè)項(xiàng)目。因?yàn)槿绻?xiàng)目增加的話,第二頁(yè)第一個(gè)元素的項(xiàng)目可能會(huì)變化。應(yīng)該先取一下第一個(gè)位置的項(xiàng)目名稱,然后翻頁(yè),再判斷現(xiàn)在第一個(gè)位置的項(xiàng)目是不是和剛剛獲取的項(xiàng)目名稱相同,如果不同,就證明翻頁(yè)成功。

(2)遺漏檢測(cè)點(diǎn)

在一個(gè)測(cè)試用例中,我們要檢測(cè)所有影響到的地方。如喜歡項(xiàng)目操作,如果我們只檢測(cè)我的喜歡項(xiàng)目列表中有沒(méi)有剛剛喜歡的項(xiàng)目,這是不夠的。還要檢測(cè)一下這個(gè)項(xiàng)目的喜歡數(shù)據(jù)是否+1,喜歡項(xiàng)目的入口是否變成已喜歡等相關(guān)檢測(cè)點(diǎn)。

(3)檢測(cè)點(diǎn)設(shè)置過(guò)多

既然上面講到,檢測(cè)點(diǎn)是檢測(cè)Bug的關(guān)鍵,我們就在每一步操作后添加檢測(cè)點(diǎn)。這樣做也是多余的,雖然增加檢測(cè)點(diǎn),更加安全一點(diǎn)兒,但是過(guò)多的檢測(cè)點(diǎn)影響測(cè)試用例運(yùn)行。而且測(cè)試用例如果出錯(cuò)了,我們?nèi)ザㄎ诲e(cuò)誤的時(shí)候,是非常困難,或是一個(gè)測(cè)試用例出錯(cuò)會(huì)導(dǎo)致相關(guān)的測(cè)試用例無(wú)法執(zhí)行。

(4)忘記設(shè)置檢測(cè)點(diǎn)或是檢測(cè)點(diǎn)不是測(cè)試重點(diǎn)

新手寫自動(dòng)化測(cè)試用例的時(shí)候,往往會(huì)寫了每一步的測(cè)試操作代碼,沒(méi)有添加對(duì)應(yīng)的檢測(cè)點(diǎn)或是檢測(cè)點(diǎn)設(shè)置不正確。明明是登錄操作,操作完成之后卻檢測(cè)頁(yè)面顯示是否正確,這樣會(huì)不管操作成功與否,測(cè)試用例都不會(huì)報(bào)錯(cuò),使自動(dòng)化測(cè)試用例失去了意義。

(5)檢測(cè)需要刷新才有反映的元素

在測(cè)試的時(shí)候,有些兒元素在操作完成后需要刷新一下頁(yè)面才能顯示出操作的結(jié)果。手工測(cè)試的時(shí)候,一般會(huì)觸發(fā)刷新操作,可是自動(dòng)化的時(shí)候,如果不刷新,就不符合預(yù)期結(jié)果。所以我們要添加刷新頁(yè)面的代碼,然后再去檢測(cè)。

這幾種是常見(jiàn)的錯(cuò)誤,當(dāng)然也會(huì)有一些比較奇葩的檢測(cè)點(diǎn)設(shè)置錯(cuò)誤的情況。在此也不能一下列舉了,遇到問(wèn)題,要多嘗試幾種方法,會(huì)在網(wǎng)上搜索解決辦法,這也是學(xué)習(xí)自動(dòng)化測(cè)試必備的技能。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,881評(píng)論 25 709
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,534評(píng)論 19 139
  • 文章來(lái)自:http://blog.csdn.net/mj813/article/details/52451355 ...
    好大一只鵬閱讀 9,346評(píng)論 2 126
  • 1.測(cè)試與軟件模型 軟件開(kāi)發(fā)生命周期模型指的是軟件開(kāi)發(fā)全過(guò)程、活動(dòng)和任務(wù)的結(jié)構(gòu)性框架。軟件項(xiàng)目的開(kāi)發(fā)包括:需求、設(shè)...
    Mr希靈閱讀 22,387評(píng)論 7 278
  • 一、古老 這里的樓體沒(méi)有精致的裝修,墻壁窗戶都是類似防火土和防火磚樣的原色,甚至有些地方還有些不完整,缺邊少角;黑...
    李靜_2bd9閱讀 622評(píng)論 0 2

友情鏈接更多精彩內(nèi)容