《培訓(xùn)提綱(軟件測試常識)》由會員分享,可在線閱讀,更多相關(guān)《培訓(xùn)提綱(軟件測試常識)(35頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、,單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級,第三級,第四級,第五級,*,軟件測試常識介紹,2010,年,9,月,內(nèi)容簡介,軟件測試概念,軟件測試基礎(chǔ),軟件開發(fā)與軟件測試,軟件缺陷產(chǎn)生,測試類型,名詞:,測試、質(zhì)量、質(zhì)量保證,一、軟件測試,概念,測試定義,軟件測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程。,測試目的,通過一定的人力、物力和時間找出軟件中潛在的各種錯誤和缺陷。,測試是對軟件質(zhì)量的度量與評估,以驗(yàn)證軟件的質(zhì)量滿足用戶的需求的程度,為用戶選擇與接受軟件提供有力的依據(jù)。,通過分析錯誤產(chǎn)生的原因還可以幫助發(fā)現(xiàn)當(dāng)前開發(fā)工作所采用的軟件過程的缺陷,以便進(jìn)行軟件過程改進(jìn)。,通過最終的驗(yàn)收
2、測試,也可以證明軟件滿足用戶的需求,樹立人們使用軟件的信心。,一、軟件測試,概念,軟件質(zhì)量,軟件滿足規(guī)定或潛在用戶需求特性的總和。,質(zhì)量保證,(,QUALITY ASSURANCE,),質(zhì)量保證的重要工作為通過預(yù)防、檢查與改進(jìn)來保證軟件的質(zhì)量。,一、軟件測試,概念,軟件測試與質(zhì)量保證,測試并不等同于質(zhì)量保證,,兩者的區(qū)別是:,軟件測試員的目標(biāo)是盡可能早和徹底地找出軟件缺陷,并確保缺陷得以修復(fù)。,軟件質(zhì)量保證人員的主要職責(zé)是創(chuàng)建和改進(jìn)軟件開發(fā)過 程、測試過程以及防止軟件缺陷發(fā)生的標(biāo)準(zhǔn)和方法。,當(dāng)然,在實(shí)際工作中軟件測試員會兼做一些,QA,的工作,,QA,人員也會做一些軟件測試。雙方的工作和任務(wù)交
3、織在一起,不一定會區(qū)分不同的角色來完成,。,一、軟件測試,概念,二、軟件測試,基礎(chǔ),測試的原則,測試的對象,測試的分類,盡早和不斷的測試,軟件缺陷產(chǎn)生的原因很多,有源自產(chǎn)品說明書、源自,設(shè)計(jì)、源自編碼等。在開發(fā)過程的每個階段,(,需求、設(shè)計(jì)、,編碼、測試、發(fā)布,),都有可能存在缺陷。所謂“盡早測試”,,是指測試活動盡可能早地介入軟件生命周期中。盡早發(fā)現(xiàn),缺陷的直接目的就是,降低修復(fù)及售后服務(wù)成本,。,大量統(tǒng)計(jì),數(shù)據(jù)表明,修復(fù)軟件缺陷的花銷(時間、金錢)會隨著時,間推移呈指數(shù)級地增長,.,二、軟件測試,基礎(chǔ),-,測試原則,二、軟件測試,基礎(chǔ),-,測試原則,所有的軟件測試應(yīng)以用戶需求為本,軟件測試
4、最直接的目的是揭示所有使軟件達(dá)不到用戶期,望、滿足不了用戶需求的缺陷和錯誤。用戶就是上帝,只有,滿足了用戶的需求,并讓他們用得方便、放心,用戶才會心,甘情愿地為軟件買單。所以作為軟件質(zhì)量的把關(guān)者,測試人,員要把用戶的想法放在首位,從設(shè)計(jì)測試用例到執(zhí)行測試,,都要從用戶的思維角度去考慮每一個問題,確保通過測試后,的軟件能夠滿足用戶的需求,達(dá)到用戶的期望。,避免程序員測試自己的程序,測試工作應(yīng),由獨(dú)立的測試部門來完成,基于心理因素,人們往往覺得揭露自己程序中的問題不,是一件愉快的事情,潛意識總是不想否認(rèn)自己的工作成果;,基于思維定勢,人們也難于發(fā)現(xiàn)自己的錯誤。因此,測試工,作應(yīng)由客觀、公正、嚴(yán)格的
5、獨(dú)立部門或第三方測試機(jī)構(gòu)來進(jìn),行。,二、軟件測試,基礎(chǔ),-,測試原則,軟件測試基礎(chǔ),-,測試的對象,軟件生命周期各階段,軟件測試對象,軟件測試活動,需求分析,需求規(guī)格說明文檔,需求評審,設(shè)計(jì),(,概要設(shè)計(jì)、詳細(xì)設(shè)計(jì),),設(shè)計(jì)文檔,設(shè)計(jì)評審,編碼,源代碼,代碼審查、單元測試、集成測試,測 試,軟件系統(tǒng),系統(tǒng)測試(包括功能測試、性能測試、安全性測試等),發(fā) 布,軟件系統(tǒng),發(fā)布測試,軟件測試基礎(chǔ),-,測試的分類,按照開發(fā)階段劃分,單元測試、集成測試、系統(tǒng)測試、確認(rèn)測試和驗(yàn)收測試,按照測試實(shí)施組織劃分,開發(fā)方測試(驗(yàn)收測試)、用戶測試和第三方測試,按照測試技術(shù)劃分,白盒測試、黑盒測試、灰盒測試,三、軟
6、件測試與軟件開發(fā),名詞,軟件生命周期、軟件生命周期過程、,軟件測試過程模型,三、軟件測試與軟件開發(fā),軟件生命周期,軟件從無到有,又從有到無所經(jīng)歷的時間周期,軟件生命周期過程,軟件生存周期內(nèi)為達(dá)到一定目標(biāo)而必須實(shí)施的一系列相關(guān)過程的集合,包括:立項(xiàng)、需求分析、設(shè)計(jì)、編碼、測試、交付、維護(hù)、管理的各種活動、質(zhì)量保證、環(huán)境基礎(chǔ)設(shè)施配置、文檔管理、退役等,軟件測試,V,模型,模型圖中箭頭代表了時間方向,左邊下降的是開發(fā)過程各階段,右邊上升的部分是測試過程的各個階段。,軟件測試過程模型,V,模型,軟件測試過程模型,V,模型,優(yōu),點(diǎn),指明,在軟件生命周期中需要經(jīng)歷的若干個測試,級別,缺 點(diǎn),忽略,了測試的
7、對象不應(yīng)該僅僅包括程序,沒有明確指出對,需求大道設(shè)計(jì),的測試,未體現(xiàn)“盡早地和不斷地進(jìn)行軟件測試”的原則,軟件測試,W,模型,軟件測試過程模型,W,模型,軟件測試過程模型,W,模型,優(yōu),點(diǎn),充分,體現(xiàn),“,全面及全程測試,”,的理念,補(bǔ)充了,V,模型中忽略的測試活動。,測試與開發(fā)是 同步進(jìn)行,有利于盡早地發(fā)現(xiàn)缺陷,及早制定應(yīng)對措施,降低風(fēng)險(xiǎn),。,缺 點(diǎn),把,測試活動看作是伴隨需求到編碼結(jié)束的串行活動,只有上一階段完成后,才可以開始下一階段的活動,無法支持迭代的開發(fā)模型,難以應(yīng)付突如其來的復(fù)雜變更。,軟件測試,H,模型,軟件測試過程模型,H,模型,軟件測試過程模型,H,模型,將,測試活動完全獨(dú)立
8、出來,形成一個獨(dú)立的流程,與其,他任意流程并發(fā)進(jìn)行。人們在軟件開發(fā)過程中摸索出了螺旋,、迭代等諸多模型,需求、設(shè)計(jì)、編碼工作可能重疊、反復(fù),地進(jìn)行,這時的測試活動也將是迭代和反復(fù)的。,優(yōu) 點(diǎn),:,將測試過程從開發(fā)過程中適當(dāng)?shù)爻橄蟪鰜?,作為一個獨(dú)立的過程進(jìn)行管理。它強(qiáng)調(diào)測試是獨(dú)立的,只要測試條件成熟、測試準(zhǔn)備工作就緒,就可以執(zhí)行測試。適合當(dāng)前軟件開發(fā)中廣泛應(yīng)用的迭代模型。,軟件測試過程模型,測試過程模型選取策略,在實(shí)際的測試工作中,應(yīng)該盡可能利用各模型的優(yōu)勢,,揚(yáng)長避短。比較理想的選取策略:以,W,模型作為測試框,架,盡早、全面的開展測試。同時靈活運(yùn)用,H,模型獨(dú)立測,試的思想,在達(dá)到恰當(dāng)?shù)木途w
9、點(diǎn)時就開展獨(dú)立的測試工作,并使測試工作迭代、反復(fù)地開展。,四、軟件缺陷的產(chǎn)生及分類,缺陷的定義及產(chǎn)生,缺陷的類型,缺陷的重要屬性,四、軟件缺陷的產(chǎn)生及分類,1,、缺陷的定義,軟件存在的不希望或不可接受的偏差,一般包括以下,4,方面,軟件功能未達(dá)到產(chǎn)品說明書中的要求;,軟件功能超出產(chǎn)品說明書指明范圍;,軟件未達(dá)到產(chǎn)品說明書雖未指出但應(yīng)達(dá)到的目標(biāo);,測試員或用戶認(rèn)為該軟件難以理解、易用性差、運(yùn)行速度緩慢。,常見的,4,種類型,1,)沒有實(shí)現(xiàn)預(yù)期的功能;,例如:用戶需要使用計(jì)算器完成乘法運(yùn)算,但系統(tǒng)未實(shí)現(xiàn)。,2,)功能實(shí)現(xiàn)不正確或不能正常使用;,例如:系統(tǒng)實(shí)現(xiàn)了乘法運(yùn)算,但是計(jì)算結(jié)果不對,,2*3=
10、8,。,3,)實(shí)現(xiàn)了用戶不需要的功能。,例如:用戶只需要進(jìn)行加減乘除的運(yùn)算,但開發(fā)人員好意的幫用戶實(shí)現(xiàn)了乘方。,4,)測試員或用戶認(rèn)為該軟件難以理解、易用性差、運(yùn)行速度緩慢。,例如:系統(tǒng)進(jìn)行簡單的加法運(yùn)算(,2+3,),需要,3,分鐘。,四、軟件缺陷的產(chǎn)生及分類,缺陷的產(chǎn)生的原因,簡單的說,軟件由人來開發(fā),在整個軟件生存期的各個階段,都貫穿著人的直接或間接的干預(yù)。然而,人難免會犯錯,這必然會給軟件留下不良的痕跡。,四、軟件缺陷的產(chǎn)生及分類,2,、缺陷的類型,可以根據(jù)缺陷產(chǎn)生的環(huán)節(jié)對缺陷進(jìn)行分類,例如:需求缺陷、設(shè)計(jì)缺陷等,可以對缺陷產(chǎn)生的原因進(jìn)行分類,例如:需求不明確、功能實(shí)現(xiàn)錯誤、功能未實(shí)現(xiàn)
11、、數(shù)據(jù)缺陷等,3,、缺陷的重要屬性,嚴(yán)重程度(表示缺陷造成的危害的惡劣程度),嚴(yán)重:導(dǎo)致系統(tǒng)崩潰、數(shù)據(jù)丟失、功能未實(shí)現(xiàn)(主流程);,一般:功能未實(shí)現(xiàn)(非主流程)、功能錯誤等;,輕微:不影響用戶使用的錯誤。,優(yōu)先級(表示修復(fù)缺陷的重要程度與次序),緊急:,必須立即修復(fù),將影響下一步的開發(fā),/,測試工作;,一般:應(yīng)在發(fā)布前修復(fù);,低:,可延期修復(fù),對應(yīng)的缺陷狀態(tài)可能是延期。,四、軟件缺陷的產(chǎn)生及分類,嚴(yán)重等級、優(yōu)先等級的區(qū)別,1,、填寫人不同,嚴(yán)重等級:由測試人員填寫;,優(yōu)先等級:由項(xiàng)目經(jīng)理或模塊負(fù)責(zé)人填寫。,2,、含義不同,嚴(yán)重等級:缺陷對系統(tǒng)的影響程度;,優(yōu)先等級:修復(fù)缺陷的先后次序。,舉例:
12、,1,、缺陷,A,:觸發(fā)時會導(dǎo)致系統(tǒng)崩潰,可以通過重啟解決。但出現(xiàn)幾率為,0.0009%,。,嚴(yán)重等級,=,高;優(yōu)先等級,=,一般,/,低。,2,、缺陷,B,:無法按日期查詢。但該功能屬于用戶常用功能,,2,天后要發(fā)布給用戶使用。,嚴(yán)重等級,=,一般;優(yōu)先等級,=,緊急。,五、常見測試的類型介紹,軟件功能測試,應(yīng)用負(fù)載壓力測試,易用性測試,兼容性測試,文檔測試,安全測試,五、常見測試的類型介紹,1,、軟件功能測試,功能測試也稱黑盒測試,它是通過測試來檢測每個功能是否都能正常使用。在測試中,把程序看作一個不能打開,.,黑盒測試著眼于程序外部結(jié)構(gòu),不考慮內(nèi)部邏輯結(jié)構(gòu),主要針對軟件界面和軟件功能進(jìn)行
13、測試。,五、常見測試的類型介紹,2,、應(yīng)用負(fù)載壓力測試,指在一定約束條件下測試系統(tǒng)所能承受的并發(fā)用戶數(shù)、運(yùn)行時間、數(shù)量數(shù),以確定系統(tǒng)所能承受的最大負(fù)載壓力。,五、常見測試的類型介紹,3,、易用性測試,指軟件產(chǎn)品被理解、學(xué)習(xí)、使用和吸引用戶的能力。涉及易理解性、易學(xué)習(xí)性、美觀性、一致性、業(yè)務(wù)符合性等方面。,包括:安裝測試、用戶界面測試、輔助系統(tǒng)測試,五、常見測試的類型介紹,4,、兼容性測試,兼容性測試驗(yàn)證的是軟件與其所依賴的環(huán)境的依賴程度,包括硬件和軟件。,硬件兼容:整機(jī)兼容、配件兼容、打印機(jī)兼容等,軟件兼容:操作系統(tǒng)兼容、數(shù)據(jù)庫兼容、瀏覽器兼容等。,五、常見測試的類型介紹,5,、文檔測試,文檔為軟件產(chǎn)品的重要的組成部分,軟件過程中產(chǎn)生的重要文檔都應(yīng)采用合適的測試方式。,五、常見測試的類型介紹,6,、安全性測試,軟件安全性是防止對程序及數(shù)據(jù)的非授權(quán)的故意或意外訪問能力有關(guān)的軟件屬性。,包括:用戶認(rèn)證機(jī)制、加密機(jī)制、防病毒系統(tǒng)、數(shù)據(jù)備份與恢復(fù)、防,SQL,注入等。,