集體測試
也許專業(yè)測試?yán)镏v這種方式,很可能不叫“集體測試”。因?yàn)槲腋鶕?jù)的自己的理解起了大概符合意思的名詞叫集體測試“集體測試”。
就是測試模式就是,公司里所有的測試人員抱成一團(tuán)兒,來一個(gè)項(xiàng)目,所有測試人員就集中測試一個(gè)項(xiàng)目。
先說這種分工方式的優(yōu)點(diǎn):
1、因?yàn)闇y試團(tuán)隊(duì)的中每個(gè)成員有都有優(yōu)缺,人員在之中相互取長補(bǔ)短。可以很快的找出軟件中的缺陷。三個(gè)臭皮匠頂一個(gè)諸葛亮,一個(gè)經(jīng)驗(yàn)再豐富的測試不一定有三個(gè)水平一般的測試員發(fā)現(xiàn)的問題多。
2、人多的另一個(gè)好處是測試項(xiàng)目能可以在更快的時(shí)間內(nèi)發(fā)現(xiàn)更多人缺陷??偨Y(jié)一下就是更短時(shí)間內(nèi)發(fā)現(xiàn)更多的問題。
再來說說這種方式的缺點(diǎn):
1、一個(gè)人員一張嘴,人力成本很高(人員工資,人員平均時(shí)間投入,測試機(jī)等硬件資源投入)。
2、當(dāng)同時(shí)需要測試多個(gè)項(xiàng)目中時(shí),不要意思,按順序來,請(qǐng)?jiān)诤竺媾藕藐?duì)。
3、重復(fù),同樣一個(gè)缺陷,很可以同時(shí)被所有測試員發(fā)現(xiàn),或者叫重復(fù)率很高。
4、人員水平難以區(qū)分,在一個(gè)項(xiàng)目測試過程中,有的測人員可能一個(gè)缺陷也沒找到,有的測試人員卻發(fā)現(xiàn)了幾乎所有的問題。也許這個(gè)項(xiàng)目一個(gè)缺陷也沒找到的測試員在下個(gè)項(xiàng)目中卻發(fā)現(xiàn)了很多缺陷。
5、了漏測現(xiàn)象是整個(gè)測試團(tuán)隊(duì)的責(zé)任。(這也不是明確的缺點(diǎn),要看團(tuán)隊(duì)的氛圍是積極的還是消極的。)
(也許,你說照這么個(gè)分析法是不是漏了太多東西,也許你有興趣繼續(xù)看下去話,我后面會(huì)講解。)
好吧!集體測試缺點(diǎn)太多,就像國家成立初期的“吃大鍋飯”,肯定是阻礙發(fā)展的。那我們來看看幾種分工方式。
按測試內(nèi)容分工
一個(gè)項(xiàng)目的測試?yán)ㄎ臋n測試,易用性測試,邏輯功能測試,界面測試,配置和兼容等多個(gè)方面。我們可以根據(jù)人員的特點(diǎn)為每個(gè)人員分配不同的測試內(nèi)容。
內(nèi)容分工方式的優(yōu)點(diǎn):
1、分工明確,每位人員都清楚自己的測試的內(nèi)容重點(diǎn)。
2、責(zé)任到位,通過漏測的缺陷就可明確是誰的責(zé)任。
按測試流程劃分
我們的項(xiàng)目測試流程一般需要,制定測試計(jì)劃,編寫測試用例,執(zhí)行測試用例,輸出測試報(bào)告等,我們可以根據(jù)流程中的各個(gè)階段來進(jìn)行劃分。
不同的人員負(fù)責(zé)不同測試階段的。
優(yōu)點(diǎn):
1、流程清晰,就像瀑布式項(xiàng)目開發(fā)流程,不同階段的由不同的人員擔(dān)任。
2、劃分流程的每個(gè)階段難易程度和所需要的技能。
編寫測試計(jì)劃人員需要對(duì)整個(gè)項(xiàng)目的時(shí)間、資源分配,測試內(nèi)容,實(shí)施過程有整體的把控能力。
用例辨析人員,需要對(duì)項(xiàng)目需求,測試方法,測試點(diǎn)有深入的了解。
用例執(zhí)行人員需要細(xì)心,使用缺陷系統(tǒng),溝通,協(xié)助研發(fā)定位缺陷。
輸出測試報(bào)告人員需要對(duì)項(xiàng)目的測試過程,缺陷數(shù)量,類型,分布。用例執(zhí)行情況等進(jìn)行統(tǒng)計(jì)。也可以由測試執(zhí)行人員擔(dān)任。
按項(xiàng)目模塊劃分
對(duì)中大型的項(xiàng)目,這種劃分就非常必要了,項(xiàng)目的模塊非常多,功能也非常多。不同的測試人員負(fù)責(zé)不同模塊的功能,這樣會(huì)使用測試變得更加清晰。
1、人員利用率高,為什么這么說呢?不同的人員負(fù)責(zé)的功能不一樣。就不會(huì)存在交叉與重復(fù)。
2、更容易挖掘深度缺陷,假如A人員今天測試這個(gè)功能,明天測試那個(gè)功能,他就不可以對(duì)被測功能內(nèi)部邏輯與業(yè)務(wù)有深入有了解。找到的也只是很表面的缺陷。那么如果一個(gè)人員長期負(fù)責(zé)一個(gè)模塊的功能,那么就會(huì)更容易發(fā)現(xiàn)更有深度的缺陷。而往往深度的缺陷是致命的。
按照測試類型分工
我們知道軟件除了功能需要測試以外,軟件在編碼階段需要單元測試,接口測試等,在系統(tǒng)測試階段,為提高功能測試的效率,可能對(duì)某些模塊進(jìn)行功能自動(dòng)化,我們還要考慮軟件的性能、安全性等問題。這些類型也是我項(xiàng)目中最常見的分類。我們可以根據(jù)這些類型為測試人員分配測試。當(dāng)然,其專業(yè)性對(duì)測試人員的要求也比較高。
這種分工方式的特點(diǎn)。
1、專業(yè)技能要求較高,在這些分類中除了手工測試要求較低外(表面看是這樣的),其它分類都需要較高的專業(yè)技能。例如,安全性測試需要掌握網(wǎng)絡(luò)協(xié)議,編程技術(shù),腳本攻擊,SQL注入,漏洞分析等方面的技能。
2、不同分類之間交互性低,正因?yàn)椴煌诸愋枰募寄懿煌?,雖然同為“測試”,但一個(gè)做單元測試的人就無法讓其去做性能測試。
上面分類方式的疑問
看了上面的幾種分工方式,你是不是每一種測試人員分工方式都似曾相識(shí),但又沒有哪個(gè)公司是單一的按照上述某種分方式。
拿筆者目前所在的公司,是一個(gè)長期的互聯(lián)網(wǎng)產(chǎn)品,產(chǎn)品功能比較多,每位測試人員負(fù)責(zé)不同的功能模塊,測試員人員從測試計(jì)劃到測試報(bào)告都基本由一個(gè)人來完成。當(dāng)然對(duì)于比較大和緊急的版本迭代,也會(huì)多人協(xié)作對(duì)版本進(jìn)行測試(協(xié)作的方式一般更將版本功能再次細(xì)分到每個(gè)人員身上)。安全測試由專業(yè)的安全人員指導(dǎo)功能測試人員對(duì)自己負(fù)責(zé)的功能進(jìn)行安全掃描與分析。有獨(dú)立的性能測試小組,對(duì)需要進(jìn)行性能的產(chǎn)品版本進(jìn)行性能測試。在獨(dú)立的功能自動(dòng)化人員,對(duì)于適合自動(dòng)化的功能進(jìn)行自動(dòng)化。
筆者公司的分方式幾乎括了上面所有的分工方式。那么,我為什么要進(jìn)行上面那么單一的分工方式劃分呢?這樣有助于我們理清對(duì)測試的各種分工方式。在實(shí)際的中,有大型項(xiàng)目,有小型項(xiàng)目,有客戶端軟件,也有互聯(lián)網(wǎng)產(chǎn)品,有短到幾天的項(xiàng)目,也有“永久”性的項(xiàng)目。有一次開發(fā)完成交付的,也有不斷迭代更新的。根據(jù)項(xiàng)目的情況,我們可以可以選擇合適的分工方式來應(yīng)用于項(xiàng)目中。
投入人員與發(fā)現(xiàn)缺陷的關(guān)系
在人員分工時(shí),這也是一個(gè)必須也要考慮問題,對(duì)一個(gè)項(xiàng)目,投入的人員數(shù)量,投入的時(shí)間,與發(fā)現(xiàn)缺陷的數(shù)量有密切的關(guān)系。
投入時(shí)間與發(fā)現(xiàn)缺陷的關(guān)系:
在人員一定的情況下,投入的時(shí)間越多,發(fā)現(xiàn)的缺陷越多。但有一個(gè)規(guī)律,越到后期發(fā)現(xiàn)的新缺陷越少。假設(shè)軟件總?cè)毕轂?00個(gè),周發(fā)現(xiàn)50個(gè)問題,第二周發(fā)現(xiàn)20個(gè),第二周可能只發(fā)現(xiàn)10個(gè)新缺陷。而且一個(gè)必然的結(jié)果是,測試不可能發(fā)現(xiàn)所有的缺陷。
投入人員數(shù)量與缺陷的關(guān)系:
在時(shí)間一定有的情況下,投入的人員越多,發(fā)現(xiàn)的問題越多,從圖中可以看出,投入的人員越多,人員發(fā)現(xiàn)缺陷的重疊度越高。當(dāng)然,你可以說,把每個(gè)人員要測試的內(nèi)容劃分清晰就不會(huì)重疊了。做為一個(gè)系統(tǒng)的各個(gè)功能模塊,他們之間肯定存在必然的聯(lián)系。有可能A人員在測試時(shí)會(huì)涉及到B人員測試的功能,并且發(fā)現(xiàn)了問題,不管是告訴B缺陷還是A人員直接提交缺陷(當(dāng)然,你也可以裝作沒看到,等著B去發(fā)現(xiàn)),這都算不可避免的重疊。
當(dāng)然了,劃分更清晰的任務(wù)有效的降低重疊度。同步也降低了發(fā)現(xiàn)缺陷的數(shù)量,提高項(xiàng)目風(fēng)險(xiǎn)。除非投入更多的時(shí)間測試。這之間的關(guān)系,需要測試管理者認(rèn)真去權(quán)衡。
在項(xiàng)目不緊急測試時(shí)間充分的情況下,可以投入更少的人員,延長測試時(shí)間發(fā)現(xiàn)更多的缺陷。在項(xiàng)目緊急的情況下,需要投入更多的人員測試,以便盡快的發(fā)現(xiàn)更多的缺陷。在項(xiàng)目質(zhì)量要求很高的情況下需要投入更多的人員與時(shí)間進(jìn)行測試。在測試時(shí)間少,項(xiàng)目質(zhì)量要求不高的情況下,可以投入較少的人員與時(shí)間進(jìn)行測試。
今天,上海博為峰it來和大家聊聊Web安全測試。目前,很多企業(yè)的業(yè)務(wù)發(fā)展都依賴于互聯(lián)網(wǎng),比如,網(wǎng)上銀行、網(wǎng)絡(luò)購物、網(wǎng)絡(luò)游戲等。但,由于很多惡意攻擊者想通過截獲他人信息去謀取利益,因此,會(huì)對(duì)Web服務(wù)器進(jìn)行攻擊。攻擊的方式也非常多,常見的有SQL注入、跨站腳本攻擊、跨站請(qǐng)求偽造、緩存區(qū)溢出等。由此,我們不得不對(duì)網(wǎng)絡(luò)環(huán)境的安全性加以提升。軟件測試工程師通過分析黑客的攻擊行為等方式,對(duì)網(wǎng)站進(jìn)行Web安全... [詳情]
每年的3、4月份是跳槽換的季節(jié),今天,我們上海博為峰it的小編精心撰寫了這篇文章來給大家講講軟件測試面試的一些事,快來看看吧,想要了解軟件測試面試的朋友,請(qǐng)接著往下看。... [詳情]
今天,上海博為峰it的小編來給大家講講軟件測試工程師在30歲之前應(yīng)該怎么做。30歲以前,應(yīng)該是人努力學(xué)習(xí)和積累的時(shí)間段,你一定要把時(shí)間花在解決問題的技能上。就是說,你一定要練就成的技能是——你能解決大多數(shù)人不能解決的問題。... [詳情]
今天,小編來和大家聊聊我們?cè)撊绾芜M(jìn)行測試。快來看看吧!對(duì)于復(fù)雜的系統(tǒng)來說,如果想要做功能測試,一般需要考慮到測試數(shù)據(jù)的問題,還要考慮如何從全局出發(fā),既要把整個(gè)業(yè)務(wù)流程需要測試的內(nèi)容充分覆蓋到。即使是多個(gè)功能點(diǎn)交叉、存在復(fù)雜約束的條件下,也不會(huì)出現(xiàn)漏測或者新bug的問題。作為軟件測試工程師,我們需要在日常中不斷積累經(jīng)驗(yàn),精進(jìn)技術(shù),確保自己能夠應(yīng)對(duì)不同場景完成測試任務(wù)。那么針對(duì)這些復(fù)雜的系統(tǒng),... [詳情]
今天,我們上海博為峰it的小編來給各位朋友聊聊怎樣有效降低測試的輪次。軟件測試的輪次多少,大多數(shù)情況取決于項(xiàng)目大小、軟件質(zhì)量和測試效率。在項(xiàng)目確定的情況下,談?wù)勎覀儓F(tuán)隊(duì)的做法,希望同行繼續(xù)補(bǔ)充指正。... [詳情]
今天,我們上海博為峰it的小編來和大家聊聊軟件測試工程師面試內(nèi)容。在參加軟件測試面試時(shí),很多小伙伴會(huì)因?yàn)槊嬖嚽皽?zhǔn)備不充分,而導(dǎo)致面試降低。基于此,我向多年面試軟件測試工程師的HR取了經(jīng),并結(jié)合自己的經(jīng)歷,總結(jié)成文,希望對(duì)即將參加軟件測試面試的小伙伴們,有所幫助。... [詳情]