歡迎來到培訓(xùn)無憂網(wǎng)!

全國切換

咨詢熱線 400-001-5729

位置:培訓(xùn)無憂網(wǎng) > 新聞資訊 > 電腦/IT > 軟件測試 >  軟件測試如何做到充分性測試?

軟件測試如何做到充分性測試?

來源:www.elsolbar.com 發(fā)布人:彭二胖

2021-12-30 21:47:28|已瀏覽:184次

    做軟件測試要想保質(zhì)保量,就要做到測試充分,什么是測試充分,就是把所需要覆蓋的場景都要覆蓋到。

    如何做到場景全面覆蓋,特別是在時(shí)間緊任務(wù)重的時(shí)候?

    我把我這些年來工作的一點(diǎn)經(jīng)驗(yàn)總結(jié)一下分享給大家,希望對大家有點(diǎn)幫助:

    No.1 提前介入測試那么什么時(shí)候測試介入比較好?在需求明確下來進(jìn)入開發(fā)之前,測試就可以介入了解需求的相關(guān)內(nèi)容了。
    這塊一般有兩個(gè)階段:
    第一個(gè)階段是需求澄清階段,這個(gè)階段就是需求接口人向開發(fā)講解需求的詳細(xì)要求及實(shí)現(xiàn)功能,這個(gè)時(shí)候測試就可以參與進(jìn)來一起聽,聽過之后我們就對這個(gè)需求有了一個(gè)大概的了解,知道了這個(gè)功能的是要做什么,輸入輸出是什么,為后期了解詳細(xì)的實(shí)現(xiàn)方案做準(zhǔn)備。
    第二個(gè)階段是開發(fā)實(shí)現(xiàn)方案澄清階段,這個(gè)階段一般是相關(guān)的開發(fā)人員把需求的功能實(shí)現(xiàn)方案和詳細(xì)邏輯跟需求提出人和接口人確認(rèn),我們這個(gè)時(shí)候參與進(jìn)來,就可以根據(jù)開發(fā)講的實(shí)現(xiàn)方案和邏輯了解相關(guān)的的內(nèi)容:比如算法判斷邏輯是啥,取值是啥,輸入值的類型是啥,取的哪個(gè)表哪個(gè)字段的值,或者調(diào)取那個(gè)接口服務(wù),異常輸入又是如何處理的,結(jié)果體現(xiàn)在哪里等等。
    當(dāng)然有些小公司是沒有給這些階段的時(shí)間的,拿到需求就可能是口頭說一下開發(fā)就直接實(shí)現(xiàn),不會(huì)再次的澄清,這個(gè)時(shí)候我們怎么辦,只有自己主動(dòng)找開發(fā)溝通,遇到與開發(fā)理解不一致的時(shí)候,還要找產(chǎn)品經(jīng)理或需求拉口人再次確認(rèn),來避免需求不清晰導(dǎo)致的一些不必要的問題,也為我們后期的測試用例編寫找到明確的答案。
    No.2 測試分析,測試用例設(shè)計(jì)根據(jù)前期的了解,接下來我們就是要把這些存在于我們腦海中的信息轉(zhuǎn)化為文字形式列出來,并分析出我們的測試場景。
    為啥要把這些信息轉(zhuǎn)化文字,不根據(jù)所想直接列測試場景,因?yàn)檫@些信息存在我們腦海中的很容易忘記,而且不是很清晰,只有通過有章法的梳理信息后,才能形成對我們有用的信息。
    不知道大家有沒有這樣的情景,一個(gè)需求你看文檔或者聽需求接口人和開發(fā)都講過了,你也知道是啥了,感覺沒啥問題了,可是當(dāng)你下去寫測試用例的時(shí)候,你還是會(huì)有些地方模糊不清楚。
    那么把我們了解的信息形成文字,就能很好的幫助我們解決這個(gè)問題。
    如何梳理這些信息呢,我一般是按照這樣的順序來的:
    1)先分析需求的背景,業(yè)務(wù)要求。
    把之前了解的需求背景都寫出來,遇到不明確的及時(shí)詢問相關(guān)人員,直到明確。
    比如一個(gè)需求的背景是這樣的:業(yè)務(wù)人員在一線作業(yè)的時(shí)候發(fā)現(xiàn)某個(gè)模塊在一些國家是需要特殊型號的,而在系統(tǒng)訂單中默認(rèn)配置的是另外一個(gè)型號,他們希望配置這個(gè)國家訂單的時(shí)候,系統(tǒng)能自動(dòng)識別出來并把這個(gè)模塊替換成指定的型號。
    那我們在寫需求背景的時(shí)候不僅僅是寫上面那段話了,就要把“一些國家”中的國家給明確寫出來,就是這些國家是哪幾個(gè)國家,國家名稱是啥,代碼是啥,同時(shí)模塊型號也要明確寫出來,替換前的模塊是哪個(gè)?型號是啥?替換后的模塊是啥,型號又是啥?
    2)分析需求實(shí)現(xiàn)方案和邏輯
    這里就是把我們前期了解到的開發(fā)實(shí)現(xiàn)方案和邏輯一一羅列出來,有必要的可以用圖畫出來如開發(fā)的實(shí)現(xiàn)流程,邏輯判斷流程,數(shù)據(jù)走向等等。
    就比如上面那個(gè)需求,開發(fā)的實(shí)現(xiàn)方案是應(yīng)該包括這個(gè)國家是從訂單哪個(gè)信息里面取出來的,需要更換模塊型號的國家又是放在哪里的,是怎么取模塊型號的,更換后的結(jié)果在哪里體現(xiàn)等等
    那我們在這個(gè)分析模塊就要把這些都列出來,并一一明確。
    3)分析測試要點(diǎn),測試要素
    根據(jù)前面兩項(xiàng)的分析,我們應(yīng)該很快的就理出我們的測試要點(diǎn),重點(diǎn)關(guān)注項(xiàng)等內(nèi)容
    就說上面這個(gè)模塊型號更換吧,我們知道了:國家,指定模塊型號,更換后的模塊型號體現(xiàn)在哪里,都是我們的關(guān)注對象,同時(shí)我們還應(yīng)知道這個(gè)更換型號對于沒有不在指定國家的范圍內(nèi)的,型號是不受影響的。那么這些就是我們的測試要點(diǎn)和要素了。
    4)列出測試場景
    根據(jù)上面的分析,我們可以把我們所需要測試的場景以表格的形式寫出來了
    5)把測試場景轉(zhuǎn)化為測試用例
    到此,我們就可以輸出測試用例了,那我們這個(gè)用例到底充分與否,結(jié)果輸出是否正確,我們的理解是否到位呢?
    接下來我們就要請相關(guān)的人員對我們的文檔和用例進(jìn)行一個(gè)評審了。
    No.3 測試用例評審測試用例評審不僅僅評審的是測試用例,還有我們對這個(gè)需求的理解和我們的思路,所以在評審的時(shí)候我們應(yīng)該先把我們的測試分析文檔講一下,然后再把我們的測試用例拿出來給大家講一下,重點(diǎn)講測試的輸入和輸出結(jié)果。
    這樣下來在開發(fā)和系統(tǒng)設(shè)計(jì)人員的幫助下,我們就可以及早發(fā)現(xiàn)用例的不足以及我們忽略的測試點(diǎn),及時(shí)補(bǔ)充測試用例,完善測試用例。
    這個(gè)在以前的公司測試用例評審是要求很嚴(yán)的,每個(gè)參于評審的人都必須要提出問題點(diǎn),就是為了避免有些參于評審的人員只參于不評審,導(dǎo)致一些問題遺留到最后。
    No.4 嚴(yán)格按照測試用例執(zhí)行測試這一點(diǎn)很重要,為什么這么說呢?因?yàn)槟銣y試用例設(shè)計(jì)的再好,你不按照它來執(zhí)行,你的測試就不可能做到充分。
    還記得有一次我做好了一個(gè)需求的測試用例,評審?fù)耆y試的時(shí)候,我覺得自己記得差不多了就按自己記的開始測試沒有按測試用例一個(gè)個(gè)的執(zhí)行,前面測試的很快,問題也不多。
    等后面回歸測試的時(shí)候,我就突然發(fā)現(xiàn)多出好幾個(gè)問題,原因就是我沒按測試好的測試用例全面覆蓋漏測了兩個(gè)關(guān)聯(lián)點(diǎn),打此以后,我再也不敢脫離測試用例,自己憑記憶測試了。
    No.5 分解需求有些需求接到的晚或著手測試的晚,功能又復(fù)雜,又要求按時(shí)上線,這個(gè)時(shí)候怎么辦?
    把需求測試用例完成后,按功能分成幾個(gè)小功能點(diǎn),分配給多個(gè)組員測試(當(dāng)然這個(gè)在給參與測試的人員之前要把需求功能詳細(xì)的講解一下),在測試的過程中要保持經(jīng)常溝通,做到寧可交叉重復(fù)測試也不脫節(jié)測試。
    我記得當(dāng)時(shí)有一個(gè)web系統(tǒng)的功能,前期的時(shí)候因?yàn)槊χ鴳?yīng)對其他緊急的需求,就把它放在一邊了,后面提上日程的時(shí)候發(fā)現(xiàn)留給我的時(shí)間不多了,我一個(gè)人測試肯定測試不全,這時(shí)我就主動(dòng)找主管溝通,多調(diào)兩個(gè)同事來和我一起測試,然后在兩個(gè)同事的協(xié)助下,才順利完成了這個(gè)功能的測試。
    No.6 交叉測試對于大的需求或都功能復(fù)雜的需求要做到多人交叉測試,這種測試在系統(tǒng)測試的時(shí)候就可以進(jìn)行,以前我所在公司的項(xiàng)目每到系統(tǒng)測試都會(huì)進(jìn)行這樣的安排,這樣就可以避免到后期回歸測試出現(xiàn)更多的問題。
    No.7 重點(diǎn)功能要及時(shí)跟蹤進(jìn)行測試充分性分析對于那些功能復(fù)雜,風(fēng)險(xiǎn)性高的項(xiàng)目,我們要在每進(jìn)行完一輪測試,進(jìn)行一次測試充分性分析以便及時(shí)做出調(diào)整。

    有一次我們有一個(gè)比較大的改動(dòng),而這個(gè)改動(dòng)涉及到了我們這個(gè)軟件流程中的一個(gè)核心點(diǎn),也就是涉及到的內(nèi)容比較多,然而留給測試的時(shí)間卻不是很多只有兩周,怎么辦呢?組長首先把這個(gè)改動(dòng)按影響到的功能點(diǎn)細(xì)化分了一下,分給了三個(gè)人進(jìn)行測試,每天她都跟進(jìn)統(tǒng)計(jì)測試進(jìn)度,分析問題分布點(diǎn),跟進(jìn)問題修改情況,然后再根據(jù)這些及時(shí)調(diào)整測試策略,經(jīng)過兩周緊張的有序的測試,這個(gè)功能最終穩(wěn)當(dāng)?shù)纳暇。

    本文由培訓(xùn)無憂網(wǎng)長沙牛耳教育課程顧問老師整理發(fā)布,希望能夠?qū)ο雲(yún)⒓娱L沙軟件測試培訓(xùn)的學(xué)生有所幫助。更多軟件測試培訓(xùn)課程信息可關(guān)注培訓(xùn)無憂網(wǎng)電腦IT培訓(xùn)或添加老師微信:15033336050

      注:尊重原創(chuàng)文章,轉(zhuǎn)載請注明出處和鏈接 http://www.elsolbar.com/news-id-11367.html 違者必究!部分文章來源于網(wǎng)絡(luò)由培訓(xùn)無憂網(wǎng)編輯部人員整理發(fā)布,內(nèi)容真實(shí)性請自行核實(shí)或聯(lián)系我們,了解更多相關(guān)資訊請關(guān)注軟件測試頻道查看更多,了解相關(guān)專業(yè)課程信息您可在線咨詢也可免費(fèi)申請?jiān)囌n。關(guān)注官方微信了解更多:150 3333 6050

留下你的信息,課程顧問老師會(huì)一對一幫助你規(guī)劃更適合你的專業(yè)課程!
  • 姓名:

  • 手機(jī):

  • 地區(qū):

  • 想學(xué)什么:

  • 培訓(xùn)無憂網(wǎng)
免 費(fèi) 申 請 試 聽
提交申請,《培訓(xùn)無憂網(wǎng)》課程顧問老師會(huì)一對一幫助你規(guī)劃更適合你的專業(yè)課程!