一降铸、什么是需求分析
我理解的需求分析就是要弄清楚用戶需要的是什么功能,用戶會怎樣使用系統(tǒng)荤傲。這樣我們測試的時候才能更加清楚的知道系統(tǒng)該怎么樣運(yùn)行垮耳,才能更好的設(shè)計測試用例,才能更好的測試遂黍。
?? ?測試需求分析是測試工作的第一步终佛,經(jīng)過需求分析,對原始需求列表中列出的每一個需求點(diǎn)雾家,找到我們需要測試的測試要點(diǎn)铃彰;針對所確定的測試要點(diǎn),分析測試執(zhí)行時對應(yīng)的測試方案/方法芯咧。
二牙捉、為什么要做需求分析
1、需求分析的必要性
如果要成功的做一個測試項目敬飒,首先必須了解測試規(guī)模邪铲、復(fù)雜程度與可能存在的風(fēng)險,這些都需要通過詳細(xì)的測試需求來了解无拗。所謂知己知彼带到,百戰(zhàn)不殆。測試需求不明確英染,只會造成獲取的信息不正確揽惹,無法對所測軟件有一個清晰全面的認(rèn)識,測試計劃就毫無根據(jù)可言四康,只憑感覺不做詳細(xì)了解就下定論的項目是失敗的搪搏。?
測試需求分析越詳細(xì)精準(zhǔn),表明對所測軟件的了解越深闪金,對所要進(jìn)行的任務(wù)內(nèi)容就越清晰疯溺,就更有把握保證測試的質(zhì)量與進(jìn)度。?
如果把測試活動比作軟件生命周期,測試需求分析就相當(dāng)于軟件的需求規(guī)格囱嫩,測試策略相當(dāng)于軟件的架構(gòu)設(shè)計嗅辣,測試用例相當(dāng)于軟件的詳細(xì)設(shè)計,測試執(zhí)行相當(dāng)于軟件的編碼過程挠说。只是在測試過程中,我們把”軟件”兩個字全部替換成了”測試”愿题。這樣隅很,我們就明白了整個測試活動的依據(jù)來源于測試需求忠藤,所以需求分析是整個測試活動必不可少的環(huán)節(jié)。
2、不做需求分析的后果
不做需求分析或需求分析不到位材原,可能會產(chǎn)生很嚴(yán)重的問題,比如:
(1)??????? 浪費(fèi)時間和資源實(shí)現(xiàn)了用戶不需要的需求扼雏;
(2)??????? 遺漏了需求文檔中沒提到南捂,但很重要的需求,導(dǎo)致客戶滿意度降低缸兔。
(3)??????? 需求分析不到位日裙,錯誤的估計了測試的工作量,導(dǎo)致延誤發(fā)布周期昂拂,可能會降低發(fā)布質(zhì)量抛猖。
以上的幾個問題财著,在實(shí)際開發(fā)中是比較常見的,主要的原因就是需求分析不到位朝墩,會導(dǎo)致影響客戶的滿意度鱼辙。
三倒戏、怎么做需求分析
1杜跷、???? 通過需求文檔了解需求的實(shí)現(xiàn)背景
拿到一個需求后,我們首先應(yīng)該通讀需求文檔憋槐,先通過需求文檔阳仔,對要做的需求的背景有個整體的了解扣泊,其實(shí)這個過程也是對需求文檔測試的過程,對需求整體的了解后评矩,我們可以先記錄自己的一些疑惑阱飘,為后面需求的分析做一個準(zhǔn)備工作,這個環(huán)節(jié)我們應(yīng)該更多的了解一些需求的目的和一些用戶的使用場景蔗喂。
例:3.3版本大立案流程需求咐熙,需求文檔中對于業(yè)務(wù)場景給了一個流程圖
保密要求-圖片忽略?
從需求示意圖中我們大致可以了昆明大立案的整個流程棋恼,使用的法院只有中院與基層院爪飘,主要是一個案件在基層院與中院的流轉(zhuǎn)過程师崎,使用的人員主要是法院的立案庭的人員犁罩,但是我們不知道涉及的案件主要有哪些床估,以及出現(xiàn)這樣的場景是基于哪些業(yè)務(wù)邏輯丐巫,這些都是我們接下來要和需求人員了解的勺美,這是我們分析這個需求和設(shè)計用例的基礎(chǔ)赡茸,也是我們分析需求合理性的依據(jù)。
2祝闻、???? 分析需求合理性
可以通過業(yè)務(wù)知識來分析需求的合理性占卧,而不是單單通過系統(tǒng)是怎樣實(shí)現(xiàn)的來判斷需求是否合理,這也是測試人員必備的技能之一联喘,即需要我們有深厚的業(yè)務(wù)功底,然后在通過結(jié)合系統(tǒng)現(xiàn)有的實(shí)現(xiàn)來分析需求的合理性耸袜。
在我看來需求是否合理主要包括兩個方面:第一牲平,滿足客戶需求堤框。第二,在系統(tǒng)原有的基礎(chǔ)上纵柿,盡量減少改動成本。
3昂儒、???? 確定測試的范圍和優(yōu)先級
通過以上對需求的分析,我們就可以確定測試的范圍和優(yōu)先級了腊嗡。首先我們要確定好這個需求所涉及的全部測試點(diǎn)燕少,然后通過分析客们,分析出測試范圍的優(yōu)先級。
4、???? 細(xì)化測試點(diǎn)并確定測試方法
確定了測試范圍和優(yōu)先級后建邓,就可以對各模塊進(jìn)行細(xì)化,可以用MindManager列出個模塊下的測試點(diǎn)湿痢,各模塊或大的測試點(diǎn)需要寫出對應(yīng)的測試方法涝缝,或測試策略扑庞。是否需要性能測試、白盒測試拒逮,是否需要提前準(zhǔn)備數(shù)據(jù)罐氨,或會遇到什么樣的測試難點(diǎn),采取怎樣的應(yīng)對措施滩援。
5栅隐、???? 確定哪些工作測試人員可以提前介入
根據(jù)以往的經(jīng)驗我們都知道,在開發(fā)一個比較復(fù)雜的需求的周期中玩徊,測試的前期準(zhǔn)備工作通常都是比較充足的租悄,當(dāng)然特殊情況除外,因此在確定了測試范圍和優(yōu)先級后恩袱,測試人員和測試負(fù)責(zé)人應(yīng)該先確定一下哪些需求測試是可以提前介入的泣棋,比如,15FB新增新案件來源和新結(jié)案方式字段的需求畔塔,前期的新舊關(guān)系對應(yīng)文檔潭辈,測試就是可以提前進(jìn)行介入,在需求完成了對應(yīng)關(guān)系文檔后澈吨,測試在進(jìn)行重新梳理一下把敢,這樣既提高了文檔的可靠性,也相當(dāng)于測試提前介入測試了谅辣,規(guī)避了后面的測試的進(jìn)度風(fēng)險和質(zhì)量風(fēng)險修赞。
6、???? 查缺補(bǔ)漏
做完了需求的細(xì)化后桑阶,要對自己做的需求分析從頭到尾在捋一遍柏副,查看有沒有什么遺漏的,因為需求也又可能遺漏的地方蚣录。主要關(guān)注有沒有場景需求沒有考慮全面搓扯, 涉及的修改范圍被遺漏了,以及一些特殊的關(guān)聯(lián)配置沒有考慮到的包归,另外如果需求做了一些變動也要及時補(bǔ)充需求分析锨推,主要是分析變動可能帶來的風(fēng)險,以及準(zhǔn)備哪些應(yīng)對之策公壤。
四换可、如何提高需求分析能力
1、熟悉業(yè)務(wù)厦幅,了解系統(tǒng)
任何系統(tǒng)都有大的業(yè)務(wù)背景沾鳄,只要熟悉了業(yè)務(wù)知識才能更有效的使用系統(tǒng)。
任何系統(tǒng)在使用過程中确憨,都有一個熟悉的過程译荞,對系統(tǒng)越熟悉瓤的,越容易發(fā)現(xiàn)系統(tǒng)問題和業(yè)務(wù)問題。
2吞歼、用客觀的思考方式站在用戶的角度分析
作為測試人員如果想提升需求分析能力圈膏,首先應(yīng)該做到的就是站在客戶的角度分析客戶需要什么和客戶想要什么,至于這個需求該不該做篙骡,那是需求人員的職責(zé)稽坤,這個需求做起來復(fù)不復(fù)雜那是開發(fā)人員的事情,作為測試人員需要考慮的事就是在滿足客戶要求的基礎(chǔ)上(這個很重要)糯俗,然后在站在業(yè)務(wù)或者系統(tǒng)現(xiàn)有實(shí)現(xiàn)的角度尿褪,給需求和開發(fā)人員一些設(shè)計上的建議,換句話說就是如果拋開客戶得湘,你這個需求做的在高大上杖玲,在酷炫,都是沒有意義的淘正。
3天揖、多思考,不要拘束于慣性思維
我們知道一個人做一個工作時間越久跪帝,也就是我們說的經(jīng)驗越豐富,可能這個思維方式就會越被限定住些阅。比如伞剑,測試的統(tǒng)計表多了,當(dāng)拿到一個新增的統(tǒng)計表的時候市埋,首先想到的是公用用例上所列的測試點(diǎn)基本上就是最全的了黎泣,我都不用思考,直接用就行了缤谎。
其實(shí)這是一個誤區(qū)抒倚,公用用例的目的是幫助我們減少一些不必要的內(nèi)耗,但是我們的思維不要被它所限定坷澡,如果公用用例中某個點(diǎn)是錯的托呕,那我們豈不要一錯再錯了。所以作為一個測試人員如果想要提升自己的需求分析能力频敛,一定要多思考项郊,不要被這種慣性思維束縛,不要被所謂的經(jīng)驗束縛斟赚。
4着降、不要閉門造車,利用好網(wǎng)絡(luò)資源
提升需求分析能力拗军,多思考是非常重要的任洞,但是不是讓你傻思考蓄喇,當(dāng)你的進(jìn)步遇到瓶頸的時候,不要閉門造車交掏,做井底之蛙妆偏,要充分利用網(wǎng)絡(luò)上的學(xué)習(xí)資源,學(xué)習(xí)一些前輩的經(jīng)驗耀销,并把這些運(yùn)用到實(shí)際的需求分析中去楼眷。山外青山樓外樓,多瀏覽和關(guān)注一些關(guān)于需求分析的網(wǎng)站或者微信公眾號熊尉,廣開言路罐柳,相信會對你的需求分析能力有非常大的提升。
5狰住、善于總結(jié)分享
基于以上四點(diǎn)我們還要做到善于總結(jié)张吉,樂于分享,把經(jīng)常見到的用例設(shè)計的誤區(qū)和一些好的需求分析實(shí)例催植,和需求分析習(xí)慣分享給周圍的小伙伴肮蛹,這樣可以集眾人之所長,不斷提升我們的需求分析能力创南。