日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

软件测试基础知识大全(新手入门必备)

發(fā)布時(shí)間:2023/12/14 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 软件测试基础知识大全(新手入门必备) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

軟件測(cè)試基礎(chǔ)知識(shí)大全(新手入門必備)

測(cè)?試?基?礎(chǔ)

1、?軟件測(cè)試的目的:證明(表達(dá)軟件能夠工作)→?檢測(cè)(發(fā)現(xiàn)錯(cuò)誤)→?預(yù)防(管

?理質(zhì)量)

2、?測(cè)試執(zhí)行:單元測(cè)試(UT執(zhí)行):一個(gè)測(cè)試用例的測(cè)試執(zhí)行;

??集成測(cè)試(IT執(zhí)行):一個(gè)測(cè)試用例集的測(cè)試執(zhí)行;

??系統(tǒng)測(cè)試(ST執(zhí)行):不同測(cè)試階段的測(cè)試執(zhí)行。這幾句話是什么意思,覺得不是很有針對(duì)性?

3、?回歸測(cè)試的目的:a.?驗(yàn)證錯(cuò)誤是否修復(fù);

b.?檢測(cè)對(duì)代碼的修改是否引入了新的錯(cuò)誤。

5、?軟件測(cè)試的主要工作:a.?檢視代碼,評(píng)審開發(fā)文檔;

b.?進(jìn)行測(cè)試設(shè)計(jì),寫作測(cè)試文檔(測(cè)試計(jì)劃、測(cè)試方案、測(cè)試用例等);

c.?執(zhí)行測(cè)試,發(fā)現(xiàn)軟件缺陷,提交缺陷報(bào)告,并確認(rèn)缺陷最終得到了修正;

d.?通過測(cè)試度量軟件質(zhì)量。??????????????????????????????????????????????????????????????????????????????

6、?軟件危機(jī)的出現(xiàn)主要表現(xiàn)在:a.?由于缺乏大型軟件開發(fā)經(jīng)驗(yàn)和軟件開發(fā)數(shù)據(jù)積累,開發(fā)工作計(jì)劃很難制定;

??????????????????????????????b.?開發(fā)早期需求分析不夠明確,造成開發(fā)后期矛盾集中暴露;

??????????????????????????????c.?不遵循開發(fā)規(guī)范,開發(fā)文檔不完整,軟件難以維護(hù);

??????????????????????????????d.?缺乏嚴(yán)密有效的軟件質(zhì)量檢測(cè)手段,交付給用戶的軟件質(zhì)量差。

7、?軟件危機(jī)的后果:a.?軟件質(zhì)量不高,很難穩(wěn)定;

b.?軟件項(xiàng)目延期,進(jìn)度無法控制;

c.?成本增加,無法控制預(yù)算。

8、?軟件危機(jī)的根源:a.?根據(jù)摩爾定律,硬件發(fā)展很快,相應(yīng)對(duì)軟件系統(tǒng)的期望

越來越高;

????????????????????b.?軟件系統(tǒng)復(fù)雜性提高,需多人合作;

????????????????????c.?軟件開發(fā)是人的智力活動(dòng),無法用已有的產(chǎn)業(yè)工程方法來組織管理。

9、?軟件生命周期的各個(gè)階段:計(jì)劃→?需求分析→?設(shè)計(jì)→?編碼→?測(cè)試→?運(yùn)行→?評(píng)價(jià)

10、?設(shè)計(jì):概要設(shè)計(jì)(HLD):在設(shè)計(jì)階段把各項(xiàng)需求轉(zhuǎn)換成相應(yīng)的體系結(jié)構(gòu),每一部分是功能明確的模塊;

???????????詳細(xì)設(shè)計(jì)(LLD):對(duì)每個(gè)模塊要完成的工作進(jìn)行具體的描述。

11、?軟件研發(fā)相關(guān)要素:人員、過程、工具。

12、?軟件項(xiàng)目組人員組成:分析人員、設(shè)計(jì)人員、開發(fā)人員、測(cè)試人員、配置管理人員、SQA(質(zhì)量保證人員);

13、?軟件研發(fā)流程類型:瀑布模型、螺旋模型、RVPRUP流程、IPD流程。

14、?軟件研發(fā)中幾個(gè)重要的過程:需求管理;配置管理;缺陷管理;同行評(píng)審。

15、?常見的引入缺陷的原因:a.?開發(fā)過程缺乏有效的溝通,或者沒有進(jìn)行溝通;

???????????????????????????b.?軟件復(fù)雜度越來越高;

???????????????????????????c.?編程中產(chǎn)生錯(cuò)誤;

???????????????????????????d.?需求不斷變更;

???????????????????????????e.?項(xiàng)目進(jìn)度的壓力;

???????????????????????????f.?不重視開發(fā)文檔;

g.?軟件開發(fā)工具本身隱藏的問題。等等……?


軟?件?質(zhì)?量

軟件質(zhì)量管理體系:

?

?

?

軟件質(zhì)量管理體系:

??????????????????????????

???????????????????????????

?

?

?

?

?

ISO90002000版)???????????CMM??????????????????????六西格瑪

ISO?9000???????????????ISO?9004

???????????????

????????

ISO90002000版標(biāo)準(zhǔn)

ISO9000:制定管理理念和原則

ISO9001:標(biāo)準(zhǔn)對(duì)組織質(zhì)量管理體系必須履行的要求做了明確的規(guī)定,是對(duì)產(chǎn)品要求的進(jìn)一進(jìn)補(bǔ)充。(梳心)

ISO9004:是組織進(jìn)行持續(xù)改進(jìn)的指南標(biāo)準(zhǔn)。

八項(xiàng)質(zhì)量管理原則:?

一.?以顧客為中心:組織依存于其顧客,因此,組織應(yīng)理解顧客當(dāng)前的和未來的需求,??????????????

??????????????滿足顧客要求并爭取趕超顧客期望。

二.?領(lǐng)導(dǎo)作用:?領(lǐng)導(dǎo)者將本組織的宗旨.方向和內(nèi)部環(huán)境編統(tǒng)一起來,并創(chuàng)造使員工能???

???????????????????夠充參與實(shí)現(xiàn)組織目標(biāo)的環(huán)境。

三.?全員參與:??各級(jí)人員是組織之本,只有他們的充分參與,才能使他們的才干為組?

????????????????????織帶來最大的收益。

四.?過程方法:?將相關(guān)的資源和活動(dòng)作為過程進(jìn)行管理,可以更高效地得到期望的結(jié)

???????????????????果。?

五.????管理系統(tǒng)方法:針對(duì)設(shè)定的目標(biāo),識(shí)別.理解并管理一個(gè)由相互關(guān)聯(lián)的過程的過程

???????????????????????所組成的體系,有助于提高組織的有效性和效率。

六.????持續(xù)改進(jìn):持續(xù)改進(jìn)是組織的一個(gè)永恒的目標(biāo)。

七.?????基于事實(shí)的決策方法:對(duì)數(shù)據(jù)和信息的邏輯分析或直覺判斷是有效決策的基礎(chǔ)。

八.?????互利的供方關(guān)系:通過互利的關(guān)系,增強(qiáng)組織及其供方創(chuàng)造價(jià)值的能力。

其中與軟件產(chǎn)品產(chǎn)品優(yōu)其相關(guān)有:(一...七項(xiàng))

?

1、?軟件質(zhì)量的定義:一個(gè)實(shí)體的所有特性,基于這些特性可以滿足明顯的或隱含的需求。而質(zhì)量就是實(shí)體基于這些特性滿足需求的程度。

2、?軟件質(zhì)量的三個(gè)層次:a.?符合需求規(guī)格;b.?符合用戶顯示需求;

????????????????????????c.?符合用戶實(shí)際需求。

3、?影響軟件質(zhì)量的因素:流程、技術(shù)、組織。

流程:一組活動(dòng)(活動(dòng)是否都是必須的;活動(dòng)角色之間的關(guān)系)

過程:一組將輸入轉(zhuǎn)化為輸出的相關(guān)聯(lián)或相互作用的活動(dòng)。

4、?八項(xiàng)質(zhì)量管理原則的意義:a.?是質(zhì)量管理的理論基礎(chǔ);

????????????????????????????b.用高度概括易于理解的語言所表述的質(zhì)量管理的最基本,最通用的一般性規(guī)律;

????????????????????????????c.?為組織建立質(zhì)量管理體系提供了理論依據(jù);

????????????????????????????d.?是組織的領(lǐng)導(dǎo)者有效的實(shí)施質(zhì)量管理工作必須遵循的原則。

5、CMM?軟件質(zhì)量成熟度模型

?CMM(capabillty?Maturity?Moelel)

由于美國軟件工程研究所(SEI)受美國國防部委托立項(xiàng)。

開發(fā)人:Watts?Humphrey.

1991年推出CMM1.0版,1993年提出CMM1.1

現(xiàn)在開發(fā)CMMICMM?Integration

軟件能力成熟度模型CMM(提唱過程決定質(zhì)量)

?

????????????????????????????????????????

????????????????????????????????????????持續(xù)改進(jìn)過程

?

?

?

?????????????????????????可預(yù)測(cè)的過程????????????????????????????????管理變更

?

?

?

?????????標(biāo)準(zhǔn).一致的過程?????????????????????????????????????產(chǎn)品過程質(zhì)量

?

?

?

??紀(jì)律的過程????????????????????????????????集成工程過程

?

?

?

???????????????????????????????項(xiàng)目管理

CMM1級(jí)

特點(diǎn):(個(gè)人英雄主義)

A項(xiàng)目的成功依賴于一個(gè)非常優(yōu)秀的項(xiàng)目經(jīng)理的團(tuán)隊(duì)。

B無法重復(fù)以往成功的實(shí)踐。

C缺乏基本配置管理

可視度:

整個(gè)過程不可預(yù)測(cè),不可見,不可控。(過程管理非常混亂)

?

CMM2級(jí)

特點(diǎn):(有紀(jì)律)

能夠重復(fù)以前成功的經(jīng)驗(yàn)和實(shí)踐。

引入合理需求變更(需求管理)

測(cè)試與開發(fā)分離,整個(gè)過程能力可概為有紀(jì)律的。

可視度

原始需求——需求分析——設(shè)計(jì)——編碼——測(cè)試——產(chǎn)品

?

CMM3級(jí)

特點(diǎn):(有過程,經(jīng)過同行評(píng)審)

組織中有一個(gè)專門負(fù)責(zé)組織的標(biāo)準(zhǔn)軟件過程。(SEPG

可視度

CMM2但整個(gè)過程是標(biāo)準(zhǔn)和一致的。

?

CMM4級(jí)特點(diǎn)

特點(diǎn):(量化管理)

過程能力是可預(yù)防的,因?yàn)檫^程是已測(cè)量的并在可測(cè)的范圍內(nèi)運(yùn)行。組織能定量地預(yù)測(cè)過程和產(chǎn)品質(zhì)量方面趨勢(shì)。軟件產(chǎn)品具有可預(yù)測(cè)的高質(zhì)量。

可視度

CMM3但整個(gè)過程是可預(yù)測(cè)的。

?

CMM5級(jí)特點(diǎn)

特點(diǎn):(改進(jìn)過程本身)

通過缺陷來發(fā)現(xiàn)過程的不足。

新的開發(fā)技術(shù)觸使改進(jìn)過程。

可視度

CMM¥級(jí)整個(gè)是以改進(jìn)的。

?

CMM1:初始級(jí),Inltial,不可預(yù)測(cè)并且缺乏控制;

????CMM2:可重復(fù)級(jí):Repeatable,可重復(fù)以前的主要經(jīng)驗(yàn);

(關(guān)鍵過程區(qū)域:需求管理;軟件項(xiàng)目計(jì)劃;軟件項(xiàng)目跟蹤和監(jiān)督;軟件子合同管理;軟件質(zhì)量保證;軟件配置管理。)

????CMM3:已定義級(jí):Defined,過程被描述,并得到良好理解;

(關(guān)鍵過程區(qū)域:組織過程定義;組織過程焦點(diǎn);培訓(xùn)大綱;集成軟件管理;軟件產(chǎn)品工程;組際協(xié)調(diào);同行評(píng)審。)

CMM4:已管理級(jí):Managed,過程被測(cè)量并受控;

(關(guān)鍵過程區(qū)域:定量的過程管理;軟件質(zhì)量管理。)

CMM5:優(yōu)化級(jí),Optimizing,關(guān)注過程改進(jìn)。

(關(guān)鍵過程區(qū)域:缺陷預(yù)防;技術(shù)變更管理;過程變更管理。)

7、?CMM的用途:a.?評(píng)估組用來識(shí)別組織中的強(qiáng)處和弱處;

????????????????b.?評(píng)價(jià)組用來識(shí)別選擇不同的業(yè)務(wù)承包商的風(fēng)險(xiǎn)和監(jiān)督合同;

????????????????c.?管理者用來了解其組織的能力,并了解為了提高其能力成熟度而進(jìn)行軟件過程改進(jìn)所需進(jìn)行的活動(dòng);

????????????????d.?技術(shù)人員和過程改進(jìn)組用來作為指南,指導(dǎo)他們?cè)诮M織中定義和改進(jìn)軟件過程。

8、?ISO9001和CMM的關(guān)系:

????相似點(diǎn):強(qiáng)調(diào)管理、過程、規(guī)范化和文檔化;

????不同點(diǎn):CMM把焦點(diǎn)對(duì)準(zhǔn)軟件;ISO9001的范圍包括:硬件、軟件、流程性材料和服務(wù);

????兩者關(guān)系:CMM2級(jí)與ISO9001強(qiáng)相關(guān);CMM的每個(gè)關(guān)鍵過程域至少按某種解釋與ISO9001弱相關(guān)。

六西格瑪管理法(強(qiáng)調(diào)組織能力)

本質(zhì):全面質(zhì)量管理,而不僅僅是質(zhì)量提高手段

?

六西格瑪實(shí)施方式:

?????????????????DMAIC過程

?

??????????????????????????????????????????????????????????????????

???????????????????????????????????????????????????????????????推行控制系統(tǒng)

?????????????????

???????????????????????????????????????????????????

???????????????????????????????????????????????????????優(yōu)化解決方案

?

?

??????????????????????????????????????????????研究資料,確定原因

?

?????????????????????????????????????

??????????????????????????????????????????收集資料,尋找原因

?

?

??????????????????????????????????提出問題,確定目標(biāo)

?

?

9、?軟件質(zhì)量模型:

????功能性:當(dāng)軟件在指定條件下使用時(shí),軟件產(chǎn)品提供滿足明確和隱含需求的功能的能力。包括:適合性;準(zhǔn)確性;互操作性;保密安全性;功能性的依從性。

????可靠性:在指定條件下使用時(shí),軟件產(chǎn)品維持規(guī)定的性能級(jí)別的能力。包括:成熟性;容錯(cuò)性;易恢復(fù)性;可靠性的依從性。

????易用性:在指定條件下使用時(shí),軟件產(chǎn)品被理解、學(xué)習(xí)、使用和吸引用戶的能力。包括:易理解性;易學(xué)性;易操作性;吸引性;易用性的依從性。

????效??率:在規(guī)定條件下,相對(duì)于所用資源的數(shù)量,軟件產(chǎn)品可提供適當(dāng)性能的能力。包括:時(shí)間特性;資源利用性;效率依從性。

????維護(hù)性:軟件產(chǎn)品可被修改的能力。修改可能包括修正、改進(jìn)或軟件對(duì)環(huán)境、需求和功能規(guī)格說明變化的適應(yīng)。包括:易分析性;易改變性;穩(wěn)定性;易測(cè)試性;維護(hù)性的依從性。

????可移植性:軟件產(chǎn)品從一種環(huán)境遷移到另外一種環(huán)境的能力。包括:適應(yīng)性;易安裝性;共存性;易替換性;可移植性的依從性。

10、?軟件質(zhì)量活動(dòng):軟件質(zhì)量保證(SQA)和測(cè)試;SQA從流程方面保證軟件的質(zhì)量、測(cè)試從技術(shù)方面保證軟件的質(zhì)量、只進(jìn)行SQA或者只進(jìn)行測(cè)試活動(dòng)不一定能產(chǎn)生好的軟件質(zhì)量。

11、?SQA的主要工作范圍:·?指導(dǎo)并監(jiān)督項(xiàng)目按照過程實(shí)施;

????????????????????????·?對(duì)項(xiàng)目進(jìn)行度量、分析,增加項(xiàng)目的可視性;

????????????????????????·?審核工作產(chǎn)品,評(píng)價(jià)工作產(chǎn)品和過程質(zhì)量目標(biāo)的復(fù)合度;

????????????????????????·?進(jìn)行缺陷分析,缺陷預(yù)防活動(dòng),發(fā)現(xiàn)過程的缺陷,提供決策參考,促進(jìn)過程改進(jìn)。

12、?度量:對(duì)事物屬性的量化表示;

軟件度量:是指計(jì)算機(jī)軟件中范圍廣泛的測(cè)度,包括對(duì)軟件系統(tǒng)、構(gòu)建或生命周期過程具有的某個(gè)給定屬性的度的一個(gè)定量測(cè)量。

目的:·?提高軟件生產(chǎn)率,縮短產(chǎn)品研發(fā)周期,降低研發(fā)成本、維護(hù)成本;

?????·?提高軟件產(chǎn)品質(zhì)量,提高用戶滿意度;

?????·?為組織持續(xù)改進(jìn)提供量化的指標(biāo)和反饋。

13、?軟件度量的作用:理解;預(yù)測(cè);評(píng)估;改進(jìn)。

分類:規(guī)模;工作量;進(jìn)度;質(zhì)量

?????如何將度量的知識(shí)應(yīng)用于實(shí)際工作中:建立測(cè)試工作的度量數(shù)據(jù),目的是作為預(yù)測(cè)和改進(jìn)的基礎(chǔ)(a.?熟悉需求:進(jìn)度、工作量、規(guī)模;b.?設(shè)計(jì)用例:工作效率、覆蓋率;c.?執(zhí)行用例:工作效率、缺陷密度;)

?


測(cè)?試?方?法

1、?什么是白盒測(cè)試:

????·?白盒測(cè)試是依據(jù)被測(cè)軟件分析程序內(nèi)部構(gòu)造,并根據(jù)內(nèi)部構(gòu)造設(shè)計(jì)用例,來對(duì)內(nèi)部控制流程進(jìn)行測(cè)試,可完全不顧程序的整體共能實(shí)現(xiàn)情況;

????·?白盒測(cè)試是基于程序結(jié)構(gòu)的邏輯驅(qū)動(dòng)測(cè)試;

????·?白盒測(cè)試又可以被稱為玻璃盒測(cè)試、透明盒測(cè)試、開放盒測(cè)試、結(jié)構(gòu)化測(cè)試、邏輯驅(qū)動(dòng)測(cè)試。

2、?為什么進(jìn)行白盒測(cè)試:

????·?一般在測(cè)試前期進(jìn)行,通過達(dá)到一定的邏輯覆蓋率指標(biāo),使得軟件內(nèi)部邏輯控制結(jié)構(gòu)上的問難題能基本得到消除;

????·?能保證內(nèi)部邏輯結(jié)構(gòu)達(dá)到一定的覆蓋程度,能夠給予軟件代碼質(zhì)量更大的保證;

????·?發(fā)現(xiàn)問題后解決問題的成本較低。

3、?白盒測(cè)試的常用技術(shù):

????·?靜態(tài)分析:控制流分析、數(shù)據(jù)流分析、信息流分析等;

????·?動(dòng)態(tài)分析:邏輯覆蓋測(cè)試(分支測(cè)試、路徑測(cè)試等)、程序插裝等。

4、?*控制流相關(guān)概念:程序元素、控制流關(guān)系、控制流圖、控制流矩陣。(步驟:5)

5、?*控制流分析能發(fā)現(xiàn)的問題:轉(zhuǎn)向并不存在的標(biāo)號(hào);沒有用的語句標(biāo)號(hào);從程序

入口進(jìn)入后無法達(dá)到的語句;不能達(dá)到停機(jī)語句的

語句。

6、?*數(shù)據(jù)流相關(guān)概念:數(shù)據(jù)的定義;數(shù)據(jù)的引用。(步驟:3)

7、?*數(shù)據(jù)流分析的左右:分析代碼中關(guān)于數(shù)據(jù)定義和引用方面的錯(cuò)誤;進(jìn)行代碼優(yōu)

化。(賦值語句運(yùn)算效率高)

8、?*信息流分析:輸入變量和語句關(guān)系;語句和輸出變量關(guān)系;輸入和輸出變量管

?理。(步驟:4)

?

9、?覆蓋率工具的作用:

????????·?分析被測(cè)試代碼控制結(jié)構(gòu),決定插裝位置;·?實(shí)施插裝;·?將插裝代

碼重新編譯;·?執(zhí)行被測(cè)對(duì)象,根據(jù)插裝的監(jiān)控哨信息統(tǒng)計(jì)覆蓋率。

10、?白盒測(cè)試的特點(diǎn):

·?測(cè)試人員需要了解軟件的實(shí)現(xiàn);·?可以檢測(cè)代碼中的每條分支和路

徑;·?解釋隱藏在代碼中的錯(cuò)誤;·?對(duì)代碼的測(cè)試比較徹底;·?實(shí)現(xiàn)代

碼結(jié)構(gòu)上的優(yōu)化;·?白盒測(cè)試投入較大,成本高;·?白盒測(cè)試不驗(yàn)證規(guī)

格的正確性。

11、?什么是黑盒測(cè)試:

????????·?黑盒測(cè)試把被測(cè)對(duì)象看成一個(gè)黑盒,只考慮其整體特性,不考慮其內(nèi)部具體實(shí)現(xiàn);

????????·?黑盒測(cè)試針對(duì)的被測(cè)對(duì)象可以是一個(gè)系統(tǒng)、一個(gè)子系統(tǒng)、一個(gè)模塊、一個(gè)子模塊、一個(gè)函數(shù)等。

????????·?黑盒測(cè)試又可以被稱為基于規(guī)格的測(cè)試。

12、?常見的黑盒測(cè)試類型:功能性測(cè)試;容量測(cè)試;負(fù)載測(cè)試;恢復(fù)性測(cè)試。

13、?*系統(tǒng)測(cè)試的時(shí)候,如果沒有SRS時(shí),有兩類BUG無法發(fā)現(xiàn):需求遺漏;

需求偏差。

14、?黑盒測(cè)試的優(yōu)點(diǎn):·對(duì)于更大的代碼單元來說(子系統(tǒng)甚至系統(tǒng)級(jí))比白

盒測(cè)試效率要高;·?測(cè)試人員不需要了解實(shí)現(xiàn)的細(xì)節(jié),

包括特定的編程語言;·?從用戶的視角進(jìn)行測(cè)試,很容

易被大家理解和接受;·?有助于暴露任何規(guī)格不一致或

有歧義的問題。

15、?黑盒測(cè)試的缺點(diǎn):·?沒有清晰的和簡明的規(guī)格,測(cè)試用例是很難設(shè)計(jì)

的;·?不能控制內(nèi)部執(zhí)行路徑,會(huì)有很多內(nèi)部程序路徑

沒有被測(cè)試到;不能直接針對(duì)特定的程序段,這些程序

可能非常復(fù)雜(因此可能隱藏更多的問題)。

?

16、?動(dòng)態(tài)和靜態(tài)測(cè)試的分類依據(jù)在于:被測(cè)對(duì)象是否運(yùn)行起來。

17、?手工靜態(tài)分析——同行評(píng)審:正規(guī)檢視;技術(shù)評(píng)審;走查。評(píng)審對(duì)象:計(jì)

??劃、需求文檔、設(shè)計(jì)圖、代碼等。

18、?自動(dòng)化靜態(tài)分析:靜態(tài)驗(yàn)證;語法分析器;符號(hào)執(zhí)行器。

???????自動(dòng)化測(cè)試的限制(板書):

·?自動(dòng)化測(cè)試不具備想象力,不能夠檢查腳本中給定的觀察點(diǎn)之外的錯(cuò)誤;

·?自動(dòng)化測(cè)試只能提高測(cè)試效率,不能提高測(cè)試效果,不能發(fā)現(xiàn)比人工測(cè)試更多的問題;如被測(cè)對(duì)象不穩(wěn)定,存在變動(dòng)性的話不適合開展自動(dòng)化測(cè)試,否則腳本的編寫和維護(hù)所耗費(fèi)的時(shí)間可能遠(yuǎn)大于人工測(cè)試;

·?只有手工測(cè)試積累到一定程度(提供更多的觀察點(diǎn)),才能做好自動(dòng)化測(cè)

試。


V&V模型(測(cè)試過程)

1、??驗(yàn)證與確認(rèn)V&V:驗(yàn)證(VERIFICATION)強(qiáng)調(diào)過程;確認(rèn)(VALIDATION)強(qiáng)調(diào)

?結(jié)果。

2、??V&V告訴我們:·?盡早測(cè)試(盡早準(zhǔn)備、盡早執(zhí)行);

·?全面測(cè)試(文檔、代碼)

·?全過程測(cè)試(測(cè)試參與到開發(fā)過程中、對(duì)測(cè)試過程全稱跟蹤)

·?測(cè)試是獨(dú)立的、迭代的。

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

3?單元、集成、系統(tǒng)測(cè)試的比較:測(cè)試方法不同;考察范圍不同;評(píng)估基準(zhǔn)不同。

4、?回歸測(cè)試策略:完全重復(fù)測(cè)試;選擇性重復(fù)測(cè)試(覆蓋修改法;周邊影響法;?指標(biāo)達(dá)成方法;選擇重要級(jí)別高的測(cè)試用例)

5、?其他測(cè)試階段:驗(yàn)收測(cè)試;a(ALPHA)測(cè)試;B(BETA)測(cè)試。

6、?主要的測(cè)試文檔:測(cè)試計(jì)劃;測(cè)試方案;測(cè)試用例;測(cè)試規(guī)程;測(cè)試報(bào)告;測(cè)試日?qǐng)?bào)。


單?元?測(cè)?試

1、?單元測(cè)試的目的:

在于發(fā)現(xiàn)各模塊內(nèi)部可能存在的各種錯(cuò)誤主要是基于白盒測(cè)試。

·?驗(yàn)證代碼是與設(shè)計(jì)相符合的;·?發(fā)現(xiàn)設(shè)計(jì)和需求中存在的錯(cuò)誤;

·?發(fā)現(xiàn)在編碼過程中引入的錯(cuò)誤。(和設(shè)計(jì)不相符?/?和設(shè)計(jì)相符,但是由于

編碼疏漏引起)

2、?孤立的測(cè)試策略:

·?方法:不考慮每個(gè)模塊與其他模塊之間的關(guān)系,為每個(gè)模塊設(shè)計(jì)樁模塊和

驅(qū)動(dòng)模塊。每個(gè)模塊進(jìn)行獨(dú)立的單元測(cè)試。

??·?優(yōu)點(diǎn):該方法是最簡單,最容易操作的。可以達(dá)到高的結(jié)構(gòu)覆蓋率。該方法是純粹的單元測(cè)試。

???·?缺點(diǎn):樁函數(shù)和驅(qū)動(dòng)函數(shù)工作量很大,效率低。

3、?自頂向下的單元測(cè)試策略:

·?方法:先對(duì)最頂層的單元進(jìn)行測(cè)試,把頂層所調(diào)用的單元做成樁模塊。其

次對(duì)第二層進(jìn)行測(cè)試,使用上面已測(cè)試的單元做驅(qū)動(dòng)模塊。如此類

推直到測(cè)試完所有模塊。

·?優(yōu)點(diǎn):可以節(jié)省驅(qū)動(dòng)函數(shù)的開發(fā)工作量,測(cè)試效率較高。

?·?缺點(diǎn):隨著被測(cè)單元一個(gè)一個(gè)被加入,測(cè)試過程將變得越來越復(fù)雜,并且

開發(fā)和維護(hù)的成本將增加。

4、?自底向上的單元測(cè)試策略:

·?方法:先對(duì)模塊調(diào)用層次圖上最低層的模塊進(jìn)行單元測(cè)試,模擬調(diào)用該模

塊的模塊做驅(qū)動(dòng)模塊。然后再對(duì)上面一層做單元測(cè)試,用下面已被

測(cè)試過的模塊做樁模塊。以此類推,直到測(cè)試完所有模塊。

·?優(yōu)點(diǎn):可以節(jié)省樁函數(shù)的開發(fā)工作量,測(cè)試效率較高。

?·?缺點(diǎn):不是純粹的單元測(cè)試,底層函數(shù)的測(cè)試質(zhì)量對(duì)上層函數(shù)的測(cè)試將產(chǎn)

生很大的影響。

5、??單元測(cè)試的四個(gè)階段:·?測(cè)試計(jì)劃:完成單元測(cè)試計(jì)劃;

??????????????????????????·?測(cè)試設(shè)計(jì):完成單元測(cè)試方案;

??????????????????????????·?測(cè)試實(shí)現(xiàn):完成單元測(cè)試用例、單元測(cè)試規(guī)程、單元測(cè)試腳本及數(shù)據(jù)文件;

??????????????????????????·?測(cè)試執(zhí)行:執(zhí)行單元測(cè)試用例,修改發(fā)現(xiàn)的問題并進(jìn)行回歸測(cè)試,提交單元測(cè)試報(bào)告。

2?單元測(cè)試:樁&驅(qū)動(dòng)舉例:

無論是單元測(cè)試還是集成測(cè)試都涉及到以下三個(gè)函數(shù):

主控函數(shù):int?ctrl(int?x,?int?y)

加法函數(shù):int?add(int?x,?int?y)

減法函數(shù):int?sub(int?x,?int?y)

注意:進(jìn)行單元測(cè)試時(shí),設(shè)計(jì)用例時(shí)依據(jù)的是LLD;進(jìn)行集成測(cè)試時(shí),設(shè)計(jì)測(cè)試用例依據(jù)的是HLD。下面給出來的是需要測(cè)試的實(shí)際的代碼。

?


int?ctrl(int?x,?int?y)

{

int?temp=0;

if(x>=y)

????temp=add(x,?y);

else

????temp=sub(x,?y);

return?temp;

}

int?add(int?x,?int?y)

{

????return(x+y);

}

?

?

?

?

?

int?sub(int?x,?int?y)

{

????return(x-y);

}

?

?

?


2?自頂向下單元測(cè)試策略

不同測(cè)試步驟中的驅(qū)動(dòng)可以寫到一起,也可以分開寫,這里是寫到一起了。

?

ü?測(cè)試ctrl函數(shù)

需要寫一個(gè)驅(qū)動(dòng)和兩個(gè)樁。

??驅(qū)動(dòng)函數(shù)

void?driver()

{

int?ret=0;

ret=ctrl(2,1);??//x>y

if(ret==3)

????printf(“testcase?JISUAN_UT_CTRL_001?pass”);

else

????printf(“testcase?JISUAN_UT_CTRL_001?fail”);

?

ret=ctrl(1,1);??//x=y

if(ret==2)

????printf(“testcase?JISUAN_UT_CTRL_002?pass”);

else

????printf(“testcase?JISUAN_UT_CTRL_002?fail”);

?

ret=ctrl(1,2);??//x<y

if(ret==-1)

????printf(“testcase?JISUAN_UT_CTRL_003?pass”);

else

????printf(“testcase?JISUAN_UT_CTRL_003?fail”);

}

?

??樁函數(shù)


int?stub_add(int?x,?int?y)

{

if(x==2?&&?y==1)

????return?3;

if(x==1?&&?y==1)

????return?2;

return?999999;

}

?

int?stub_sub(int?x,?int?y)

{

if(x==1?&&?y==2)

????return?-1;

return?999999;

}


??修改代碼

為了讓樁能體現(xiàn)在測(cè)試過程中,需要修改ctrl函數(shù):

int?ctrl(int?x,?int?y)

{

int?temp=0;

if(x>=y)

????temp=stub_add(x,?y);

else

????temp=stub_sub(x,?y);

return?temp;

}

ü?測(cè)試add函數(shù)


???驅(qū)動(dòng)函數(shù)

同測(cè)試ctrl函數(shù)時(shí)的驅(qū)動(dòng)

?

??樁函數(shù)

同測(cè)試ctrl函數(shù)時(shí)sub函數(shù)對(duì)應(yīng)的樁


?

??修改代碼

int?ctrl(int?x,?int?y)

{???int?temp=0;

if(x>=y)

{

????temp=add(x,?y);

????if(x==2?&&?y==1?&&?temp==3)

????????printf(testcase?JISUAN_UT_ADD_001?pass);

????else

????????printf(testcase?JISUAN_UT_ADD_001?fail);

????if(x==1?&&?y==1?&&?temp==2)

????????printf(testcase?JISUAN_UT_ADD_002?pass);

????else

????????printf(testcase?JISUAN_UT_ADD_002?fail);

}

else

????temp=stub_sub(x,?y);

return?temp;

}

ü?測(cè)試sub函數(shù)


??驅(qū)動(dòng)函數(shù)

同測(cè)試ctrl函數(shù)時(shí)的驅(qū)動(dòng)

??樁函數(shù)


??修改代碼

int?ctrl(int?x,?int?y)

{??

?int?temp=0;

if(x>=y)

????temp=add(x,?y);

else

{????temp=sub(x,?y);

????if(x==1&&y==2?&&?temp==-1)

????????printf(testcase?JISUAN_UT_SUB_001?pass);

????else

????????printf(testcase?JISUAN_UT_SUB_001?fail);

}

return?temp;???}

?

?

?

?

?

?

?

?

?

?

集?成?測(cè)?試

一.?What:什么是集成測(cè)試

? 集成測(cè)試(Integration?Testing)?集成測(cè)試也叫組裝測(cè)試、聯(lián)合測(cè)試、部件測(cè)試、子系統(tǒng)測(cè)試

? 集成測(cè)試測(cè)什么

??????1.外部接口:各件吶在一起后表現(xiàn)的功能

??????2.內(nèi)部接口:各件間的接口是否正確?

? 集成蘇的目的

驗(yàn)證軟件的組建對(duì)概要設(shè)計(jì)說明書的符合度

? 集成測(cè)試的評(píng)估基準(zhǔn):

??????接口覆蓋率

???????????A.接口被測(cè)試到的百分比

???????????B.接口的等價(jià)類、邊界值的覆蓋率

二.?Why:為什么要做集成測(cè)試

? 一些模塊雖然能夠單獨(dú)地工作,但并不能保證連接起來也能正常的工作。

? 程序在某些局部反映不出來的問題,在全局上很可能暴露出來,影響功能的實(shí)現(xiàn)。

? 雖然已經(jīng)有了IT和ST,但I(xiàn)T和UT、ST關(guān)注點(diǎn)不一樣,它們互為補(bǔ)充

? 反分解性公理:為一個(gè)被測(cè)模塊獲得的覆蓋并不能覆蓋他所調(diào)用的模塊。

? 反組合性公理:對(duì)于一個(gè)模塊中的對(duì)各子模塊分別合適的測(cè)試包并不一定對(duì)作為一個(gè)整體的模塊合適

三.?Who:誰做集成測(cè)試

? 開發(fā)人員做

???A優(yōu)勢(shì):一般來說,編程能力稍強(qiáng)

???B劣勢(shì):Protect(就像變形金剛的汽車人),心理上不愿意否定自己的勞動(dòng)成果,職責(zé)是保護(hù)程序

? 測(cè)試人員做

???A優(yōu)勢(shì):Destroy(就像變形金剛的霸天虎),心理上追求完美,職責(zé)是挑刺、破壞程序

???B劣勢(shì):目前的現(xiàn)狀,大部分tester編程能力不夠

四.?When:什么時(shí)候做集成測(cè)試

4.1?集成測(cè)試所處的測(cè)試過程

? 集成測(cè)試所處的測(cè)試過程

???A.測(cè)試準(zhǔn)備活動(dòng)在開發(fā)活動(dòng)時(shí)可以并行開展,如開始做HLD設(shè)計(jì)時(shí)就可以開始做ITP了

???B.測(cè)試執(zhí)行活動(dòng)在單元測(cè)試的基礎(chǔ)上進(jìn)行

五.?Where:對(duì)什么部分做集成測(cè)試

? 子系統(tǒng)間集成(系統(tǒng)內(nèi)集成)

? 模塊間集成(子系統(tǒng)內(nèi)集成)

? 函數(shù)間集成(模塊內(nèi)集成)

六.?How:怎么做集成測(cè)試

6.1?測(cè)試過程的制定

6.1.1?計(jì)劃

根據(jù)SVVP制定ITP

6.1.2?設(shè)計(jì)

根據(jù)ITP制定IT方案

6.1.3?實(shí)現(xiàn)

根據(jù)IT方案制定IT用例

6.1.4?執(zhí)行

根據(jù)IT用例進(jìn)行集成測(cè)試,提交Bug?Report,……,回歸測(cè)試

6.2?采用的測(cè)試方法

6.2.1?灰盒測(cè)試

隨集成層次不同,灰度隨之相應(yīng)變化

6.3?制定集成測(cè)試策略?Test?Strategy

6.3.1?根據(jù)被測(cè)對(duì)象(層次)選擇合適的策略

1>大爆炸集成?Big?Bang

?

優(yōu)點(diǎn)

方法簡單、效率高

缺點(diǎn)

? "急于求成",成功率不高

? "大海撈針",導(dǎo)致即使發(fā)現(xiàn)問題也難以定位(無法故障隔離)

? "囫圇吞棗",許多內(nèi)部接口的錯(cuò)誤被漏測(cè)

適用范圍

? 小項(xiàng)目、維護(hù)型項(xiàng)目

? 軟件結(jié)構(gòu)不清晰的系統(tǒng)

2>自頂向下集成?Top-Down

子策略

? 深度優(yōu)先(Depth-First)

? 廣度優(yōu)先(Broadth-First)

優(yōu)點(diǎn)

A.主控模塊(高層組件)得到較早驗(yàn)證

B.深度優(yōu)先策略能夠較早驗(yàn)證一個(gè)完整的功能,增強(qiáng)了開發(fā)信心

C.基本不需要開發(fā)驅(qū)動(dòng),減少了這部分的工作量

D.和高層設(shè)計(jì)順序一致,方便并行開展

E.定位問題容易,支持故障隔離

缺點(diǎn)

A.需要開發(fā)大量的樁,工作量、成本太大

B.底層變更可能導(dǎo)致測(cè)試推倒重來

C.底層組件的驗(yàn)證較晚,測(cè)試不充分

適用范圍

A.軟件結(jié)構(gòu)清晰的系統(tǒng)

B.高層接口變化小,底層接口變化大

C.主控模塊風(fēng)險(xiǎn)大,需盡早驗(yàn)證

D.希望盡早看到系統(tǒng)一部分功能

3>自底向上集成?Bottom-Up

優(yōu)點(diǎn)

A.底層組件得到較早驗(yàn)證

B.測(cè)試初期可以并行集成,效率高

C.由于驅(qū)動(dòng)模塊是額外編寫的,對(duì)被測(cè)模塊的可測(cè)試性要求較低

D.減少了開發(fā)樁的工作量

E.定位問題容易,支持故障隔離

缺點(diǎn)

A.需要開發(fā)大量的驅(qū)動(dòng),工作量、成本同樣很高

B.對(duì)高層的驗(yàn)證太晚了,設(shè)計(jì)上的缺陷不能被及早發(fā)現(xiàn)

C.集成到頂層后,對(duì)于底層異常將難以覆蓋。而使用樁將簡單得多

適用范圍

A.軟件結(jié)構(gòu)清晰的系統(tǒng)

B.底層接口穩(wěn)定、或先被開發(fā)出來

C.高層接口變化較頻繁

4>?三明治集成(分而治之策略)?又分為傳統(tǒng)型和改進(jìn)型?Sandwich

優(yōu)點(diǎn)

融合了自頂向下和自底向上兩種策略的優(yōu)點(diǎn)

缺點(diǎn)

中間層測(cè)試要么不充分,要么測(cè)的充分但開發(fā)驅(qū)動(dòng)和樁的工作量大

適用范圍

軟件結(jié)構(gòu)清晰的系統(tǒng)基本都適合采用

5>基干集成(內(nèi)核耦合度高)?Backbone

結(jié)構(gòu)與策略:內(nèi)核(大爆炸)-應(yīng)用子系統(tǒng)(自底向上)-控制子系統(tǒng)(自頂向下)

優(yōu)點(diǎn)

具有三明治集成的優(yōu)點(diǎn)

缺點(diǎn)

A.對(duì)系統(tǒng)結(jié)構(gòu)的分析存在一定難度

B.由于被測(cè)系統(tǒng)復(fù)雜,驅(qū)動(dòng)和樁的開發(fā)工作量較大

C.局部采用了大爆炸策略,存在大爆炸所有的缺點(diǎn)

適用范圍

嵌入式系統(tǒng)

6>分層集成(線性關(guān)系)?Layers

集成方式

A.層內(nèi)集成

策略非常靈活,可以是各種其他策略

優(yōu)缺點(diǎn)根據(jù)策略而變

B.層間集成

策略和優(yōu)缺點(diǎn)同"層內(nèi)集成"

使用范圍

有明顯線性層次關(guān)系的系統(tǒng)

7>基于功能集成?Function-Based

優(yōu)點(diǎn)

A.可以盡早驗(yàn)證關(guān)鍵組件的功能

B.可能同時(shí)加入多個(gè)模塊,與大爆炸類似,效率較高

C.和自頂向下一樣,驅(qū)動(dòng)模塊的開發(fā)工作量不多

缺點(diǎn)

A.兼具大爆炸和自頂向下的缺點(diǎn),比如對(duì)有些接口測(cè)試不充分,可能導(dǎo)致漏測(cè)

B.可能會(huì)有較多的冗余測(cè)試

適用范圍

對(duì)功能的實(shí)現(xiàn)沒把握的產(chǎn)品

8>持續(xù)集成(高頻集成、每日集成)?Continuous/High-frequency

優(yōu)點(diǎn)

A.錯(cuò)誤能被較早發(fā)現(xiàn),且容易定位

B.開發(fā)和集成可以并行,效率高

缺點(diǎn)

測(cè)試針對(duì)性不強(qiáng),不容易發(fā)現(xiàn)有價(jià)值的問題

適用范圍

迭代開發(fā)、增量開發(fā)的產(chǎn)品

9>基于進(jìn)度集成?Schedule-Based

優(yōu)點(diǎn)

并行度高,能縮短項(xiàng)目進(jìn)度

缺點(diǎn)

組件間缺乏整體性,無法有效集成

開發(fā)驅(qū)動(dòng)和樁的工作量難以估計(jì)

由于進(jìn)度原因,集成效果不好

適用范圍

進(jìn)度很緊的項(xiàng)目

10>基于風(fēng)險(xiǎn)集成?Risk-Based

優(yōu)點(diǎn)

風(fēng)險(xiǎn)大的模塊得到較早驗(yàn)證,有助于系統(tǒng)的快速穩(wěn)定

缺點(diǎn)

風(fēng)險(xiǎn)分析偏差導(dǎo)致集成重點(diǎn)的偏離

適用范圍

有些組件有較大的風(fēng)險(xiǎn),需及早驗(yàn)證以增強(qiáng)信心

11>基于消息(事件)集成?Message-Based/Event-Based

優(yōu)缺點(diǎn)與"基于功能集成"類似,適用面向?qū)ο笙到y(tǒng)

12>基于使用集成?Use-Based

優(yōu)缺點(diǎn)與"自底向上"類似,適用面向?qū)ο笙到y(tǒng)

13>基于C/S、B/S的集成

適用C/S、B/S結(jié)構(gòu)的系統(tǒng)

14>分布式集成?Distributed?Services

適用分布式系統(tǒng)


系?統(tǒng)?測(cè)?試

? 定義

System?Testing--是將已經(jīng)集成好的軟件系統(tǒng),作為整個(gè)計(jì)算機(jī)系統(tǒng)的一個(gè)元素,與計(jì)算機(jī)硬件、外設(shè)、某些支持軟件、數(shù)據(jù)和人員等其他系統(tǒng)元素結(jié)合在一起,在實(shí)際運(yùn)行使用的環(huán)境下,對(duì)計(jì)算機(jī)系統(tǒng)進(jìn)行系列的測(cè)試活動(dòng);

? 對(duì)象

1.產(chǎn)品級(jí)--軟件+硬件

2.項(xiàng)目級(jí)--軟件(也可能包含硬件)

? 完備性

如何保證系統(tǒng)測(cè)試的完備性?

1.盡可能所有需求都有對(duì)應(yīng)的Test?Case;

2.依據(jù)軟件的質(zhì)量特性,以不同的角度,測(cè)試需求;

3.依據(jù)不同的Test?Case、方法,構(gòu)造不同的測(cè)試數(shù)據(jù)及處理過程;

常用測(cè)試方法

1.1?功能測(cè)試(功能)

? 定義:

function?Testing--依據(jù)SRS和測(cè)試需求列表驗(yàn)證產(chǎn)品的功能是否實(shí)現(xiàn)和是否符合產(chǎn)品需求規(guī)格

? 目標(biāo):

1.是否有不正確或遺漏了的功能?

2.功能是實(shí)現(xiàn)是否滿足用戶需求,和系統(tǒng)設(shè)計(jì)的隱式需求?

3.輸入能否正確接受?能否正確輸出結(jié)果?

1.2?性能測(cè)試(效率)

? 定義:

Performance?Testing--測(cè)試該軟件在集成系統(tǒng)中的運(yùn)行性能。(大多使用工具測(cè)試)

? 目標(biāo):

度量系統(tǒng)相對(duì)與預(yù)定義目標(biāo)的差距。

? 實(shí)施:

1.性能指標(biāo)定義明確。

2.構(gòu)造性能測(cè)試研究數(shù)據(jù)。

3.構(gòu)造不同的性能測(cè)試場(chǎng)景。

4.執(zhí)行性能測(cè)試?(一般>90%就通過)。

5.性能分析。

6.性能故障定位。

7.性能優(yōu)化。

? 依據(jù)

1.資源占用性。

2.CPU響應(yīng)時(shí)間。

? 區(qū)別:

1.壓力測(cè)試--不強(qiáng)調(diào)施壓量,只檢查施壓的狀況。

2.容量測(cè)試--強(qiáng)調(diào)施壓,施了多少壓。

3.性能測(cè)試--施壓后檢驗(yàn)性能指標(biāo)是否達(dá)到規(guī)定資源使用和響應(yīng)時(shí)間的要求。

1.2.1?資源方面(資源占用情況)

? CPU使用情況。

? IO使用情況。

? 內(nèi)存使用情況。

? 信道使用事情。

1.2.2?時(shí)間方面(CPU響應(yīng)時(shí)間)

? 每個(gè)模塊執(zhí)行時(shí)間百分比。

? 一個(gè)模塊等待IO完成的百分比。

? 指令隨時(shí)間的跟蹤路徑。

? 每一組指令頁換入和換出的次數(shù)。

? 系統(tǒng)反映時(shí)間。

? 系統(tǒng)吞吐量,即每個(gè)單元的處理數(shù)量。

? 所有主要指令的單元執(zhí)行時(shí)間。

1.3?壓力測(cè)試/極限測(cè)試(可靠性)

? 定義:

Stress?Testing--系統(tǒng)在其資源超符合的情況下表現(xiàn)。

? 目標(biāo):

在極限或者惡劣的環(huán)境下,系統(tǒng)的自我保護(hù)能力。主要驗(yàn)證系統(tǒng)的可靠性。

? 實(shí)施:

1.同一時(shí)間,大量的用戶登陸。

2.引入大量的操作。

? 目的:

1.是否存在內(nèi)存泄露。

2.驗(yàn)證系統(tǒng)可靠性。

3.測(cè)試后給予用戶一個(gè)明確的界定。

? 區(qū)別:

1.壓力測(cè)試--不強(qiáng)調(diào)施壓量,只檢查施壓的狀況。

2.容量測(cè)試--強(qiáng)調(diào)施壓,施了多少壓。

3.性能測(cè)試--施壓后檢驗(yàn)性能指標(biāo)是否達(dá)到規(guī)定資源使用和響應(yīng)時(shí)間的要求。

1.4?容量測(cè)試

? 定義:

volume?Testing--使系統(tǒng)能夠承受超額的數(shù)據(jù)容量來發(fā)現(xiàn)它是否能夠正確處理。

? 目標(biāo):

1.測(cè)試系統(tǒng)容量是否滿足需求規(guī)定系統(tǒng)容量。

2.若無規(guī)定系統(tǒng)容量可以通過此測(cè)試給出明確容量界定。

? 實(shí)施:

1.構(gòu)造一批大容量的測(cè)試數(shù)據(jù)輸入到系統(tǒng)。

2.對(duì)系統(tǒng)整體構(gòu)造不同業(yè)務(wù)場(chǎng)景,反復(fù)執(zhí)行。

? 區(qū)別:

1.壓力測(cè)試--不強(qiáng)調(diào)施壓量,只檢查施壓的狀況。

2.容量測(cè)試--強(qiáng)調(diào)施壓,施了多少壓。

??????3.性能測(cè)試--施壓后檢驗(yàn)性能指標(biāo)是否達(dá)到規(guī)定資源使用和響應(yīng)時(shí)間的要求。

1.5?安全性測(cè)試(功能)

? 定義:

Security?Testing--驗(yàn)證集成在系統(tǒng)內(nèi)的保護(hù)機(jī)制能否在實(shí)際應(yīng)用中保護(hù)系統(tǒng)不受到非法的侵入。

? 目的:

保證系統(tǒng)安全性,數(shù)據(jù)的完整性、保密性。

1.5.1?數(shù)據(jù)

完整性

? 數(shù)據(jù)存儲(chǔ)的完整性。

? 數(shù)據(jù)保密的完整性。

保密性

? 數(shù)據(jù)存儲(chǔ)的保密性。

? 數(shù)據(jù)訪問的保密性。

1.5.2?權(quán)限

? 權(quán)限的分配

? 權(quán)限的使用

1.5.3?協(xié)議

多在手機(jī)測(cè)試用到。

1.5.4?其他

如LOG..

1.6?GUI測(cè)試(易用)

? 定義:

Graphical?User?Interface?Testing--針對(duì)軟件系統(tǒng)的界面進(jìn)行的測(cè)試。

? 目標(biāo):

1.界面實(shí)現(xiàn)與界面設(shè)計(jì)的吻合情況。(界面設(shè)計(jì))

2.確認(rèn)界面處理的正確性。(針對(duì)不同的控件分析)

? 相關(guān)自動(dòng)化測(cè)試工具

1.WinRunner

2.SilkTest

3.QaRun?

1.6.1?簡單界面元素

? 定義:

指功能和屬性相對(duì)比較單一的界面區(qū)域,即通常所指的各種控件。

? 方法:

主要關(guān)注他們的外觀、表現(xiàn)行為。

1.6.2?組合類界面元素

? 定義:

一些復(fù)雜的界面元素,比如表格、各種文本編輯器等。

? 方法:

先將其分解為簡單的界面元素,然后再進(jìn)行處理。

1.6.3?完整界面(窗口)

? 定義:

由一系列界面元素通過適當(dāng)?shù)男问浇M合而成的界面形式,最為常見的為各種窗口。包括各種對(duì)話框、單文檔窗口、多文檔窗口,多文檔子窗口等。

? 方法:

外觀、布局、行為。

1.輸入類界面元素:與要考慮其外觀、輸入時(shí)的特性比如回顯、對(duì)齊原則、滾動(dòng)原則等內(nèi)容。

2.輸出類界面元素:外觀。

?

1.7?可用性測(cè)試(易用)

? 定義:

Usability?Testing--為檢測(cè)用戶在理解和使用系統(tǒng)方面到底有多好。

? 目標(biāo):

1.考慮產(chǎn)品是否符合實(shí)際應(yīng)用情況。

2.是否符合用戶習(xí)慣或特殊要求。

3.操作方式是否方便合理、設(shè)備和用戶見交互信息是否準(zhǔn)確易于理解、是否遵從行業(yè)習(xí)慣、外觀/界面是否美觀等。

? 一般關(guān)注的可用性問題:

1.過分復(fù)雜的功能或指令。

2.困難的安裝過程。

3.錯(cuò)誤信息過于簡單。

4.用戶被迫去記太多信息。

5.語法、格式和定義不一致。

?

1.8?安裝測(cè)試

? 定義:

根據(jù)軟件測(cè)試特性列表、軟件安裝、配置文檔,設(shè)計(jì)安裝過程的測(cè)試用例,發(fā)現(xiàn)軟件在安裝過程中的錯(cuò)誤。

? 被測(cè)對(duì)象:

1.軟件本身。

2.軟件安裝文檔。

1.8.1?安裝測(cè)試前要檢查的工作

1.安裝文檔是否齊全。

2.安裝軟件的程序文件是否齊全。

3.被測(cè)軟件的安裝文件是否齊全。

4.軟件的安裝說明文檔是否齊全。

5.檢查軟件的文件格式是否與安裝說明文檔中要求的文件格式相符。

1.8.2?安裝測(cè)試過程中的工作

1.所有的預(yù)置數(shù)據(jù)是齊全。

2.軟件環(huán)境配置是否合理。

3.硬件環(huán)境配置是否合理。

4.用戶選擇的一套任選方案是相容。|

5.安裝過程中:

A.系統(tǒng)提供的缺省參數(shù)值進(jìn)行安裝測(cè)試。

B.指定由人工完成安裝過程,列出每一步安裝步驟所需的工作,并仔細(xì)檢查每一安裝步驟所完成工作的正確性。

C.安裝測(cè)試過程中要設(shè)計(jì)異常的安裝測(cè)試用例,包括配置參數(shù)的異常、安裝選項(xiàng)和安裝路徑的異常。

6.安裝文檔的測(cè)試。

1.8.3?安裝后要做的檢查工作

1.所有文件是否都已產(chǎn)生并確有所需的內(nèi)容。

???A.程序文件的目錄是否正確產(chǎn)生。

???B.各目錄及子目錄下的程序文件是否都正確產(chǎn)生。

???C.是否存在無用的目錄、子目錄、程序文件以及無用的子目錄。

???D.目錄、子目錄、以及程序文件本身的權(quán)限是否正確。

???E.對(duì)于Windows?還要檢查與應(yīng)用軟件相配套的動(dòng)態(tài)鏈接庫文件齊全。

2.安裝日志的檢查。

3.安裝完成后,要進(jìn)行程序的運(yùn)行,聯(lián)結(jié)驗(yàn)證。

4.軟件的卸載測(cè)試。

1.8.4?安裝測(cè)試中軟件的升級(jí)測(cè)試

1.軟件通過重新安裝來達(dá)到升級(jí)的目的。

2.通過Patch的方式實(shí)現(xiàn)軟件的升級(jí)。

3.在線升級(jí)。

?

1.9?配置測(cè)試

? 定義:

系統(tǒng)在各種軟硬件配置、不同參數(shù)配置下系統(tǒng)具有的功能和性能。

? 目標(biāo):

驗(yàn)證全部配置的可操作性,有效性。

?

1.10?異常測(cè)試/恢復(fù)性測(cè)試(可靠)

? 定義:

容錯(cuò)性測(cè)試。通過人工干預(yù)手段產(chǎn)生異常,能檢驗(yàn)系統(tǒng)的容錯(cuò)、恢復(fù)能力,是系統(tǒng)可靠性評(píng)價(jià)的重要手段。

? 異常處理

1.系統(tǒng)自動(dòng)處理。

2.人工干預(yù)處理。

? 注意

1.系統(tǒng)的異常還與系統(tǒng)的指標(biāo)測(cè)試有關(guān),當(dāng)系統(tǒng)的服務(wù)能力大于系統(tǒng)的設(shè)計(jì)指標(biāo)時(shí),也屬于系統(tǒng)的異常情況。

2.系統(tǒng)的可靠性是設(shè)計(jì)出來的,而不是測(cè)試出來的。測(cè)試出的數(shù)據(jù)有助于為我們進(jìn)一步的系統(tǒng)優(yōu)化設(shè)計(jì)積累經(jīng)驗(yàn),設(shè)計(jì)和測(cè)試是一個(gè)相互反饋的過程。

?

1.11?備份測(cè)試(可靠)

恢復(fù)性測(cè)試的一個(gè)補(bǔ)充,驗(yàn)證軟件或硬件失敗中備份他數(shù)據(jù)的能力。

1.12?健壯性測(cè)試(可靠)

Robustness?Testing?用于測(cè)試系統(tǒng)在故障時(shí),是否能夠自動(dòng)恢復(fù)或者忽略故障繼續(xù)運(yùn)行。

1.13?文檔測(cè)試

Documentation?Testing?測(cè)試文檔的正確性,保證操作手冊(cè)的過程能夠正常工作。

1.14?在線幫助測(cè)試

Online?Help?Testing?檢測(cè)時(shí)實(shí)在線幫助的可靠性和正確性。

1.15?網(wǎng)絡(luò)測(cè)試

網(wǎng)絡(luò)環(huán)境下和其他設(shè)備對(duì)接,進(jìn)行系統(tǒng)功能、性能與指標(biāo)方面的測(cè)試,保證對(duì)接的正確性。

1.16?穩(wěn)定性測(cè)試

在一定負(fù)荷情況下能持續(xù)運(yùn)行的時(shí)間。

?

2?系統(tǒng)測(cè)試測(cè)試過程

2.1?計(jì)劃階段

明確what目標(biāo)、why測(cè)試目的、when可控時(shí)間、where測(cè)試范圍、how如何開展.主要活動(dòng)有:參與開發(fā)人員軟件需求的分析,SRS評(píng)審,通過后寫ST計(jì)劃,進(jìn)行ST計(jì)劃評(píng)審。

? 入口準(zhǔn)則:SRS完成并確定需求規(guī)格基線

? 輸入:SRS|SDP|SVVP

? 出口準(zhǔn)則:ST計(jì)劃評(píng)審?fù)ㄟ^

? 輸出:

2.2?設(shè)計(jì)階段

主要活動(dòng)有:組織人員依據(jù)測(cè)試計(jì)劃編寫測(cè)試方案,并進(jìn)行系統(tǒng)方案的評(píng)審

? 入口準(zhǔn)則:??ST計(jì)劃評(píng)審?fù)ㄟ^

? 輸入:?????????ST計(jì)劃|SRS

? 出口準(zhǔn)則:??ST方案評(píng)審?fù)ㄟ^

? 輸出:?????????ST方案

?

2.3?實(shí)現(xiàn)階段

主要活動(dòng)有:組織人員依據(jù)ST方案編寫測(cè)試用例、測(cè)試規(guī)程及預(yù)測(cè)試項(xiàng),并對(duì)其進(jìn)行評(píng)審

? 入口準(zhǔn)則:??ST方案評(píng)審?fù)ㄟ^

? 輸入:?????????ST計(jì)劃|SRS|ST方案

? 出口準(zhǔn)則:??測(cè)試用例、測(cè)試規(guī)程及預(yù)測(cè)試項(xiàng)評(píng)審?fù)ㄟ^

? 輸出:?????????測(cè)試用例、測(cè)試規(guī)程及預(yù)測(cè)試項(xiàng)

?

2.4?執(zhí)行階段

主要活動(dòng)有:組織測(cè)試執(zhí)行活動(dòng)、負(fù)責(zé)缺陷報(bào)告返回給開發(fā)部門修改、組織進(jìn)行測(cè)試報(bào)告的編寫、組織進(jìn)行測(cè)試報(bào)告的評(píng)審

? 入口準(zhǔn)則:??測(cè)試用例、測(cè)試規(guī)程及預(yù)測(cè)試項(xiàng)的評(píng)審?fù)ㄟ^

? 輸入:?????????ST計(jì)劃|ST方案|ST用例|ST規(guī)程|ST預(yù)測(cè)試項(xiàng)

? 出口準(zhǔn)則:??ST報(bào)告評(píng)審并通過

? 輸出:?????????ST預(yù)測(cè)試報(bào)告|ST測(cè)試報(bào)告|缺陷報(bào)告

?

?

?

?

?

測(cè)?試?覆?蓋?率

1、?覆蓋率概念:

·?覆蓋率是用來度量測(cè)試完整性的一個(gè)手段。覆蓋率是測(cè)試技術(shù)有效性的一個(gè)度量。覆蓋率=(至少被執(zhí)行一次的item數(shù))/item的總數(shù);

·?覆蓋率大體可以劃分為兩大類:邏輯覆蓋和功能覆蓋;

·?測(cè)試用例設(shè)計(jì)不能一味追求覆蓋率,因?yàn)闇y(cè)試成本雖覆蓋率的增加而增加。

2、?邏輯覆蓋主要類型:語句覆蓋、判定覆蓋、條件覆蓋、判定-條件覆蓋、路徑

覆蓋。

3、?語句覆蓋率:(Statement?Coverage),在測(cè)試時(shí)運(yùn)行被測(cè)程序后,程序中被執(zhí)

行到的可執(zhí)行語句的比率;??????????????????語句覆蓋率?=?

(至少被執(zhí)行一次的語句數(shù)量)/(可執(zhí)行的語句總數(shù))

4、?分支覆蓋率:(Branch?Coverage)也叫判定覆蓋(Decision?Coverage),它的含

義是:在測(cè)試時(shí)運(yùn)行被測(cè)程序后,程序中所有判斷語句的取真分

支和取假分支被執(zhí)行到的比率;

判定覆蓋率=(判定結(jié)果被評(píng)價(jià)的次數(shù))/(判定結(jié)果的總數(shù))

5、?條件覆蓋率:(Condition?Coverage)的含義是,在測(cè)試時(shí)運(yùn)行被測(cè)程序后,所

有判斷語句中每個(gè)條件的可能取值(真值和假值)出現(xiàn)過的比率;

條件覆蓋率=(條件操作數(shù)值至少被評(píng)價(jià)一次的數(shù)量)/(條件操作數(shù)值的總數(shù))

6、?分支-條件覆蓋率:Branch?Condition?Coverage)也叫判定條件覆蓋(Decision

?Condition?Coverage),它的含義是,在測(cè)試時(shí)運(yùn)行被測(cè)程序

后,所有判斷語句中每個(gè)條件的所有可能值(為真為假)

和每個(gè)判斷本身的判定結(jié)果(為真為假)出現(xiàn)的比率;

分支條件覆蓋率=(條件操作樹枝或判定結(jié)果至少被評(píng)價(jià)一

次的數(shù)量)/(條件操作數(shù)值總數(shù)+判定結(jié)果總數(shù))

7、?路徑覆蓋率:(Path?Coverage)的含義是,在測(cè)試時(shí)運(yùn)行被測(cè)程序后,程序中

所有可能的路徑被執(zhí)行過的比率;

路徑覆蓋率=(至少被執(zhí)行到一次的路徑數(shù))/(總的路徑數(shù))

8、?其他覆蓋率:功能覆蓋率;面向?qū)ο蟮母采w率;函數(shù)覆蓋;指令塊覆蓋;判定

路徑覆蓋。


測(cè)?試?用?例?舉?例

測(cè)試用例編號(hào)

BOSS_?ST_?MARKETING_NEW_01P

重要級(jí)別

高(還有“較高、中、較低、低”幾個(gè)等級(jí))

測(cè)試項(xiàng)目

新增營銷記錄

測(cè)試標(biāo)題

新增10元的營銷記錄

用例類型 

基本事件(對(duì)應(yīng)還有“備選事件”、“異常事件”)

用例設(shè)計(jì)者

songfun

設(shè)計(jì)日期 

2005-04-25

對(duì)應(yīng)需求編號(hào)

REQ_?MARKETING_NEW_01

對(duì)應(yīng)UI

Marketing.htm

對(duì)應(yīng)UC

UC_?MARKETING_NEW_01

版本號(hào)

Build?v0.1

對(duì)應(yīng)開發(fā)人員

Frank

預(yù)置條件

操作員登錄營銷管理系統(tǒng)

測(cè)試方法

等價(jià)類劃分(對(duì)應(yīng)還有“錯(cuò)誤猜測(cè)法”、“邊界值分析”等)

輸????入

用戶名:51testing?性別:男?金額:10元?描述:aaaaaaa

操作步驟

①.?進(jìn)入【營銷下發(fā)】頁面;

②.?點(diǎn)擊『增加』按鈕;

③.?輸入相應(yīng)數(shù)據(jù);

④.?點(diǎn)擊『確定』按鈕;

⑤.?在后臺(tái)數(shù)據(jù)庫(test/test@testDB)輸入查詢語句驗(yàn)證:select?*?from?MarketingTab?where?ID='1001'

預(yù)期輸出

㈠.?執(zhí)行步驟④后,頁面彈出添加成功提示信息框;

㈡.?執(zhí)行步驟⑤后查詢數(shù)據(jù)庫,記錄確實(shí)添加成功且數(shù)據(jù)無誤

?


同?行?評(píng)?審

1、?同行評(píng)審:Peer?Review)是一種通過作者的同行來確認(rèn)缺陷和需要變更區(qū)域的檢查方法。需要進(jìn)行同行評(píng)審的特定產(chǎn)品在定義項(xiàng)目軟件過程的時(shí)候被確定并且作為軟件開發(fā)計(jì)劃的一部分被安排了進(jìn)度。

??????????????·?需要前期準(zhǔn)備、計(jì)劃和時(shí)間進(jìn)度表

??????????????·?越早越好

3、?同行評(píng)審的作用:·?早期發(fā)現(xiàn)缺陷;·?去除缺陷;·?降低成本;·?提高質(zhì)量。

4、?同行評(píng)審的類型:·?正規(guī)檢視:(Inspection)最嚴(yán)格,要求有規(guī)范的流程,參

加者經(jīng)過正式培訓(xùn);

·?技術(shù)評(píng)審:(Technique?Review)以技術(shù)方案的比較、裁決

為目的,嚴(yán)格程度介于正規(guī)檢視和走讀之間;

·?走????讀:(Walk?Through)最(自由)松散的形式,無流程要求,有評(píng)審團(tuán)隊(duì),評(píng)審流程無要求。

5、?通用評(píng)審流程步驟(正規(guī)檢視流程):

?

?

?

?

?

?

?

?

?

?

?

?

?

6、?計(jì)劃階段:

·?項(xiàng)目負(fù)責(zé)人指定組織者;·作者自檢工作產(chǎn)品;·?組織者規(guī)劃本次評(píng)審;

·?檢查入口準(zhǔn)則:是否符合文檔標(biāo)準(zhǔn)?是否已用工具檢查?代碼<=500行;

?????????????????文檔<=40頁;……

·?準(zhǔn)備評(píng)審包:工作產(chǎn)品(HLD);參考資料(SRS-檢查一致性);評(píng)審表(Review?Form);查檢表(Checklist)。

·?指定評(píng)審專家(3-6人);

·?組織者將評(píng)審包、評(píng)審?fù)ㄖ獑伟l(fā)給相關(guān)人員。

7、?介紹會(huì)議:

·?被評(píng)審對(duì)象采用新技術(shù)、新方法;·?被評(píng)審對(duì)象第一次被評(píng)審?à(作者介紹被審對(duì)象以及相關(guān)技術(shù))

·?評(píng)審專家第一次參加評(píng)審??à?(評(píng)審者介紹評(píng)審流程)

·?介紹會(huì)議的召開距接到評(píng)審?fù)ㄖ臅r(shí)間大于5小時(shí);

·?介紹會(huì)議的時(shí)間不超過1小時(shí),30-60間為宜,關(guān)注講解。

8、?準(zhǔn)備階段:(最重要、發(fā)現(xiàn)缺陷最多)

·?評(píng)審專家個(gè)人獨(dú)立完成工作產(chǎn)品的審視,提出缺陷;

·?準(zhǔn)備時(shí)間?大于?會(huì)議時(shí)間,且應(yīng)于會(huì)議前2天開始;

·?評(píng)審者:收到組織者發(fā)來的評(píng)審包;審核工作產(chǎn)品、發(fā)現(xiàn)缺陷;填寫評(píng)審表單;反饋評(píng)審表單給組織者;

???組織者:檢查評(píng)審表單;裁決是否需要增加評(píng)審評(píng)審?fù)度?#xff08;增加準(zhǔn)備時(shí)間;增加評(píng)審專家人數(shù);更換評(píng)審專家)

9、?會(huì)議階段(2小時(shí)內(nèi);只提出問題,不關(guān)注解決):

·?組織者召開評(píng)審會(huì)議;

·?講解員講解工作產(chǎn)品;(盡量不要由作者兼任)

·?大家共同確認(rèn)問題(評(píng)審表單中記錄的問題;會(huì)上發(fā)現(xiàn)的問題;當(dāng)爭執(zhí)不
下時(shí)組織者應(yīng)做出裁決)

·?對(duì)已確認(rèn)的問題進(jìn)行分類;

·?作者決定是否召開第三小時(shí)會(huì)議;

·?記錄員記錄所有的問題及分類,并發(fā)給組織者;(記錄員盡量不要由作者和組織者擔(dān)任)

·?組織者更新評(píng)審表單。

10、?第三小時(shí)會(huì)議

·?有爭議的問題繼續(xù)討論,給出決議;

·?討論解決問題方案;

·?組織者更新評(píng)審表單。

11、?返??工:發(fā)回作者修改;

12、?跟??蹤:

·?匯總所有需要的數(shù)據(jù)到評(píng)審表單發(fā)給相關(guān)評(píng)審專家;(a2組織者

·?組織評(píng)審專家確認(rèn)各缺陷得到了修改,并且沒有引入新的缺陷;

·?協(xié)助組織者確認(rèn)相關(guān)問題得到了正確修改并且沒有引入新的缺陷;

·?確認(rèn)評(píng)審表單中各相關(guān)度量數(shù)據(jù)正確(發(fā)現(xiàn)缺陷數(shù);評(píng)審?fù)度霑r(shí)間;評(píng)審專家人數(shù)等)(評(píng)審專家á2


配?置?&?需?求?管?理

1、?配置管理的目的和意義:

目的:a.?可視性:用戶/買方/賣方詳細(xì)知道工作內(nèi)容;

??b.?管理層能夠知道產(chǎn)品特性;

??????c.?所有的項(xiàng)目參與者在同一平臺(tái)下交流;

??????d.?了解現(xiàn)在和計(jì)劃的配置;

??????e.?管理層可看到變更的影響;

??????f.?管理層可選擇參與的節(jié)點(diǎn);

目標(biāo):????項(xiàng)目:減少返工,減少工作量;

意義:????????????????公司:節(jié)約成本,積累項(xiàng)目財(cái)富;

????????????可視性提高;

????????????項(xiàng)目可跟蹤性高;

2、??配置、基線、版本各自定義及關(guān)系:

配??置:是軟件生命周期個(gè)階段產(chǎn)生的程序、數(shù)據(jù)、文件、環(huán)境的集合;

配置項(xiàng):是軟件生命周期個(gè)階段產(chǎn)生的程序、數(shù)據(jù)、文件、環(huán)境

基??線:配置項(xiàng)在其生命周期的不同時(shí)間點(diǎn)上通過評(píng)審而進(jìn)入正式受控的一種狀態(tài),而這個(gè)過程被稱為“基線化”;

版??本:是表示一個(gè)配置項(xiàng)具有一組定義的功能的一種標(biāo)識(shí);

3、??變更控制的流程(各種角色、職責(zé)輸出):

·?項(xiàng)目成員、客戶代表、市場(chǎng)人員提交CR

·??CMOCR狀態(tài)表示為已提交,并將CR根據(jù)條件進(jìn)行判斷,把不需要CCB進(jìn)行審核的、決定采納的CR直接進(jìn)行簽發(fā);把不需要CCB進(jìn)行審核的、不決定采納的CR直接關(guān)閉(4?CMOCR狀態(tài)標(biāo)識(shí)為已拒絕);將需要CCB評(píng)審的CR提交給CCB進(jìn)行評(píng)估;

·?CCB召開會(huì)議對(duì)CR進(jìn)行評(píng)估??

????·?CMOCR狀態(tài)標(biāo)識(shí)為已接受,將CR于要修改的配置項(xiàng)發(fā)給項(xiàng)目組成員并開放CI的配置庫權(quán)限

????·?項(xiàng)目組成員執(zhí)行更改并進(jìn)行驗(yàn)證

????·?CCB召開會(huì)議對(duì)修改進(jìn)行審核,如果通過將CR狀態(tài)表示為已驗(yàn)證,發(fā)給CMO,否則直接關(guān)閉,并給出提交人反饋信息

4、?配置管理中測(cè)試工程師的職責(zé):

·?測(cè)試工程師將自己創(chuàng)建的與測(cè)試相關(guān)配置項(xiàng)(比如軟件測(cè)試計(jì)劃、軟件測(cè)試方案、軟件測(cè)試用例、軟件測(cè)試日?qǐng)?bào)、軟件測(cè)試報(bào)告等)加入配置庫中;

·?測(cè)試工程師根據(jù)變更請(qǐng)求,對(duì)已經(jīng)基線化的配置項(xiàng)進(jìn)行Check-Out、修改、Check-In操作。比如,在測(cè)試執(zhí)行之前,需要更新測(cè)試用例,此時(shí)需要經(jīng)過CMO的授權(quán),然后由測(cè)試人員對(duì)相應(yīng)的配置項(xiàng)(測(cè)試用例文件)Check-Out、修改、Check-In

5、?需求跟蹤涉及到的配置項(xiàng)

?

?

?

?

?

?

?

6、?配置項(xiàng)的跟蹤矩陣

Input————————————Task————————————Output


缺?陷?管?理

1、??缺陷管理的目的:·?保證信息的一致性;保證缺陷得到有效跟蹤,解決;

???·?獲取正確的Bug信息,用作缺陷分析和產(chǎn)品度量。

2、?缺陷的相關(guān)屬性:·?缺陷發(fā)現(xiàn)人(Defect?Reporter);

·?缺陷發(fā)現(xiàn)時(shí)間(Defected?on?Date);

·?缺陷狀態(tài)(Status);

·?缺陷嚴(yán)重程度(Sewrity);

·?缺陷所屬版本(Defected?in?Version);

·?優(yōu)先級(jí)(Priority

·?缺陷修改日期(Fixed?on?Date);

·?再現(xiàn)性(Reproducible);

·?回歸測(cè)試(Regression);

3、?缺陷管理流程:(參考缺陷管理作業(yè))

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

4、?缺陷跟蹤單寫作準(zhǔn)則(5C

·?Correct(準(zhǔn)確),每個(gè)組成部分的描述準(zhǔn)確,不會(huì)引起誤會(huì);

·?Clear(清晰),每個(gè)組成部分的描述清晰,易于理解;

·?Concise(簡潔),只包含必不可少的信息,不包括任何多余的內(nèi)容;

·?Complete(完整),包含復(fù)現(xiàn)該缺陷的完整步驟和其他本質(zhì)信息;

·?Consistent(一致),按照一致的格式書寫全部缺陷報(bào)告。

5?缺陷跟蹤單基本內(nèi)容:(其他相關(guān)屬性);簡單描述;詳細(xì)描述;相關(guān)附件。

6?QC中缺陷管理流程:(實(shí)際流程應(yīng)參考各公司內(nèi)部流程或者書本

1.?Qatester提交一個(gè)狀態(tài)為new的新缺陷后assigned?to?PM?

2.?PM查看該缺陷,并判斷是否為缺陷需要修改?:

nà?在comments中記錄否決意見后closed;

???????????????????????????????yà?在comments中記錄相關(guān)意見后將該缺陷指派給相關(guān)開發(fā)人員,并將status置為open/reopen

3.?Developer打開缺陷模塊,看到指派給自己的缺陷后確定是否修改:

???????????????????nà?在comments中記錄意見后rejected?to?PMà2

???????????????????????????????yà?修改該缺陷,并將status置為fixed指給PM

4.?PM將該缺陷指派給Qatester進(jìn)行回歸測(cè)試

5.?Qatester看到指派給自己的fixed的缺陷后,進(jìn)行回歸測(cè)試,通過??

???????????????????yà?closed;

??nà?rejectedPMà2

7、缺陷度量—評(píng)價(jià)軟件技術(shù)/流程/組織指標(biāo)的公式

ü? 分析指標(biāo)

1.?反映產(chǎn)品質(zhì)量的指標(biāo)

缺陷密度=缺陷數(shù)量/軟件規(guī)模(千行代碼數(shù))
潛在缺陷概數(shù)=(100%-發(fā)布前缺陷缺陷去除率)*缺陷密度

2.?反映產(chǎn)品可靠性的指標(biāo)

平均實(shí)效時(shí)間=軟件持續(xù)運(yùn)行時(shí)間/缺陷數(shù)量

3.?反映缺陷發(fā)現(xiàn)及修復(fù)效率的指標(biāo)

缺陷檢出率=某階段發(fā)現(xiàn)的缺陷/屬該階段的全部缺陷*100%
發(fā)布前缺陷去除率=發(fā)布前發(fā)現(xiàn)的缺陷/(發(fā)布前發(fā)現(xiàn)的缺陷+軟件運(yùn)行前三個(gè)月)*100%
缺陷修正率=修復(fù)過程中未引發(fā)其他問題的缺陷數(shù)/被修復(fù)缺陷的總數(shù)*100%

4.?反映缺陷修復(fù)成本的指標(biāo)

平均修復(fù)時(shí)間=缺陷修復(fù)時(shí)間/缺陷數(shù)量
平均修復(fù)成本=開發(fā)人員的平均人力成本*平均修復(fù)時(shí)間
相對(duì)返回成本=返工的工作量/項(xiàng)目總工作量*100%

ü?匯總統(tǒng)計(jì)

1.缺陷發(fā)生的日期統(tǒng)計(jì)(缺陷發(fā)現(xiàn)趨勢(shì)圖)

2.缺陷性質(zhì)統(tǒng)計(jì)(缺陷變更,需求變更)

3.缺陷狀態(tài)分布(關(guān)閉,修復(fù)中,掛起等)

4.缺陷按子系統(tǒng)(模塊)分類統(tǒng)計(jì)

5.缺陷引發(fā)原因分類統(tǒng)計(jì)

6.缺陷來源統(tǒng)計(jì)(缺陷提交人或提交方)

?


SQL?SERVER(需搭建SQL?SERVER環(huán)境)

??數(shù)據(jù)定義語言(DDL)

??Create?table?創(chuàng)建數(shù)據(jù)庫的表

??Create?index?創(chuàng)建數(shù)據(jù)庫表的索引

??Drop?table?刪除數(shù)據(jù)庫表

??Drop?index?刪除數(shù)據(jù)庫表的索引

??Truncate?table?刪除表的所有行

??Alter?table?修改表:增加表列、重定義表列、更改存儲(chǔ)分配等

??Alter?table?add?constraint?在已有的表上增加約束

?

??數(shù)據(jù)操作語言DML

??Insert?增加數(shù)據(jù)行

??Delete?從表里刪除行

??Update?更改表中數(shù)據(jù)

??Select?從表或視圖中檢索數(shù)據(jù)行

?

??數(shù)據(jù)控制語言DCL

??Grant?將權(quán)限或角色授予用戶或其他角色

??Revoke?從用戶或數(shù)據(jù)庫角色回收權(quán)限

??Set?role?禁止或允許一個(gè)角色

?

??數(shù)據(jù)庫事務(wù)控制

??Commit?work?把當(dāng)前事務(wù)所作的更改永久化(寫入磁盤)

??Rollback?作廢上次提交以來的所有更改

?

??Where語句中的通配符:Select?*?from?objects?where?object_namelike?‘sql#_m_il’?????escape?‘#’

??字符類型轉(zhuǎn)換:?例:convert(varchar(5),@varage)

?

??匯總函數(shù)

??平均值avg

??總和sum

??最小值min

??最大值max

??計(jì)數(shù)count

??Count(*)和count?(distinct?)

?

?

??Insert語句

??Insert?into?表名(列名1,n)value?(值1,n)

??Insert?into?student?values?(20051115,’黃飛鴻’,’男’,21,’cs’)

??Insert?into?student(sname,sno,sdept)?value(‘劉德華’,20055567,’cs’)

??未指明的字段內(nèi)容為null

??Insert?into?表名(列名1,n)select?語句;如:

??Insert?into?student2(sno,sname,sdept)?select?sno,sname,sdeptfrom?student1

??前提是兩個(gè)表的結(jié)構(gòu)相同

?

??Update語句

?Update?表名set?列名1=表達(dá)式1,列名2=表達(dá)式2..?Where?條件

?Update?student?set?sdept=?‘MA’where?sno=?‘95001’

?所有學(xué)生年齡加1

?Update?student?set?sage?=?sage+1

?該語句只對(duì)單個(gè)表操作,不能同時(shí)對(duì)多表操作

?該語句僅當(dāng)事務(wù)提交(commit)后才生效;也可通過事務(wù)回滾rollback來作廢操作

?

??在SQL?Server?2000中有5種約束:

主鍵約束(primary?key?constraint)

唯一性約束(unique?constraint)

檢查約束(check?constraint)

缺省約束(default?constraint)

外部鍵約束(foreign?key?constraint)

2?課程實(shí)例:

---創(chuàng)建表"訂單A"

create?table?訂單A(訂單編號(hào)?int?not?null,

??????????????????下單日期?datetime?not?null,

??????????????????客戶編號(hào)?int?not?null)

select?*?from?訂單A

?

?

---首先添加訂單名稱,varchar(20),null

alter?table?訂單A

add?訂單名稱?varchar(20)?null

select?*?from?訂單A

?

---之后刪除訂單名稱字段

alter?table?訂單A

drop?column?訂單名稱

select?*?from?訂單A

?

?

---然后同時(shí)添加訂單名稱,varchar(20),null和定購數(shù)量,int,null

alter?table?訂單A

add?訂單名稱?varchar(20)?null,訂購數(shù)量?int?null

select?*?from?訂單A

?

?

---然后嘗試同時(shí)修改訂單名稱的字段長度為50,定購數(shù)量數(shù)據(jù)類型為numeric*??不能同時(shí)修改*

alter?table?訂單A

alter?column?訂單名稱?varchar(50)?null

select?*?from?訂單A

alter?column?訂單名稱?varchar(50)?null?訂購數(shù)量?numeric???

?

?

---最后同時(shí)刪除訂單名稱和定購數(shù)量

alter?table?訂單A

drop?column?訂單名稱,訂購數(shù)量

select?*?from?訂單A

?

?

---向已有表"訂單A"的訂單編號(hào)字段添加主鍵約束

alter?table?訂單A

add?constraint?訂單編號(hào)_k?primary?key?(訂單編號(hào))

select?*?from?訂單A

?

?

---創(chuàng)建"定購項(xiàng)目",并同時(shí)添加項(xiàng)目編號(hào)字段為主鍵

create?table?訂購項(xiàng)目(訂單編號(hào)?int?not?null,

?????????????????????項(xiàng)目編號(hào)?int?not?null,

?????????????????????書籍編號(hào)?int?not?null,

?????????????????????數(shù)量?int?not?null,

?????????????????????primary?key?(項(xiàng)目編號(hào)))

select?*?from?訂購項(xiàng)目

---向已有表"定購項(xiàng)目"添加新字段"項(xiàng)目名稱""客戶名稱",并設(shè)置項(xiàng)目名稱字段為唯一鍵

alter?table?訂購項(xiàng)目

add?項(xiàng)目名稱?varchar(20),客戶名稱?varchar(20)

constraint?項(xiàng)目名稱_u?unique?(項(xiàng)目名稱)

select?*?from?訂購項(xiàng)目

?

?

---在現(xiàn)有表"定購項(xiàng)目"上設(shè)置"客戶名稱"為唯一鍵

alter?table?訂購項(xiàng)目

add?constraint?客戶名稱_u?unique?(客戶名稱)

?

?

---設(shè)置數(shù)量字段必須在10100之間

alter?table?訂購項(xiàng)目

add?constraint?chk_數(shù)量?check?(數(shù)量?between?10?and?100)

?

insert?into?訂購項(xiàng)目?values(1,2,3,4,'張三','李四')???

---檢測(cè)數(shù)量字段的約束條件是否成立

?

create?table?sincky(myid?int?identity(10,1)?not?null,???????????

---通過函數(shù)實(shí)現(xiàn)自動(dòng)增量

yourid?varchar(10))

?

?

---添加"定購地點(diǎn)"字段,默認(rèn)值是"上海"

alter?table?訂購項(xiàng)目

add?訂購地點(diǎn)?varchar(50)?null?default?'上海'????????????---設(shè)置缺省約束

?

create?table?書籍(書籍編號(hào)?int?not?null?primary?key,

??????????????????書籍名稱?varchar(50)?null,

??????????????????價(jià)格?smallmoney?null,

??????????????????出版公司?char(20))

?

alter?table?訂購項(xiàng)目

add?constraint?訂單項(xiàng)目_f?foreign?key?(書籍編號(hào))?references?書籍(書籍編號(hào))


存儲(chǔ)過程:

?

if?exists?(select?*?from?sysobjects?where?name='sinckypro'?and?type='p')

drop?procedure?sinckypro

go

?

create?procedure?sinckypro

@varname?varchar(50),@varage?int?????

as????

declare?@inname?varchar(50)

set?@inname?=?'sincky_'+?@varname

create?table?testtable(myid?int?not?null?primary?key,

myname?varchar(50)?not?null,

mypasswd?varchar(20)?not?null,

myage?int?default?25)

?

insert?into?testtable?values(1,@inname,'zhang',@varage)?

select?*?from?testtable

drop?table?testtable

go

?

exec?sinckypro?'51testing',55??

?

?

測(cè)試工具總結(jié)

?測(cè)試工具大全

工具類別

工具名稱

生產(chǎn)廠商

相關(guān)網(wǎng)站

通用功能自動(dòng)化測(cè)試工具

Winrunner

Mercury

 

Quicktest?pro

Mercury

 

Xrunner

Mercury

 

QARun

Compuware

 

TestPartner

Compuware

 

WebKing

Parasoft

http://www.parasoft.com

Robot

IBM?Rational

http://www.ibm.com/cn

Visual?Test

IBM?Rational

http://www.ibm.com/cn

Functional?Tester

IBM?Rational

http://www.ibm.com/cn

SilkTest

Segue

 

SilkTest?International

Segue

 

e-Tester

Empirix

 

WebFT

Radview

 

TestComplete

AutomatedQA

 

QA?Wizard

Seapine

 

Software?EggPlant

RedStone

 

Test?Edition

Microsoft?Visual?Studio

 

PureTest

Minq

 

Autotester

Autotester

 

Testbench400

Original?Software

 

TestExpert

VEReCOMM

 

TestRunner

Qronus

 

TTCN?suite

Telelogic

http://www.telelogic.com.cn

QC/Replay

Centerline

 

Web

AutoTester

 

eValid

Software?Research

 

WebART

OCLC

 

MaxQ

開源

 

WebInject

開源

 

Marathon

開源

 

性能測(cè)試/監(jiān)控工具?

LoadRunner

Mercury

 

SiteScope

Mercury

 

Topaz

Mercury

 

QaLoad

Compuware

 

PerformaSure/benchmark

Quest

 

Silkperformer

Segue

 

Silkperformer?Lite

Segue

 

SilkCentralTM?Performance?Manager

Segue

 

e-Load

Empirix

 

Robot

IBM?Rational

http://www.ibm.com/cn

Performance?Tester

IBM?Rational

http://www.ibm.com/cn

WebLoad

RadView

 

Web?applicaton?stress?tool?

Microsoft

 

Application?center?test

Microsoft

 

PureLoad

Minq

 

Athene?APR

Metron

 

ForeCast

Facilita

 

Impact/Impact?for?CBT

Cyrano

 

Berkeley?Laboratory?sniffer

Lawrence

 

Jmeter

開源

 

openSTA

開源

 

Siege

開源

 

StressMark

開源

 

DBMonster

開源

 

白盒測(cè)試/代碼分析工具?

VcTester

ezTester

http://www.eztester.com

Jtest

Parasoft

http://www.parasoft.com

C++test

Parasoft

http://www.parasoft.com

SOA?test

Parasoft

http://www.parasoft.com

.test

Parasoft

http://www.parasoft.com

Codewizard

Parasoft

http://www.parasoft.com

Insure++

Parasoft

http://www.parasoft.com

DataRecon

Parasoft

http://www.parasoft.com

Numega?devpartner?studio

Compuware

 

DevPartnerJavaEdition

Compuware

 

BoundsChecker

Compuware

 

SmartCheck

Compuware

 

DBPartner

Compuware

 

Bean-test

Empirix

 

Aqtime

AutomatedQA

 

QESatJava

AutomatedQA

 

Visual?Unit

Unitware

 

PC-lint

Gimpel?Software

 

Macabe

Macabe

 

Optimizeit?Suite

Borland

 

JProbe?Suite

Quest?Software

 

Application?assurance?suite

Quest?Software

 

Sql?optimizer

Quest?Software

 

Jprofiler

ej-technologies

 

workbench

Cyrano

 

Logiscope

TeleLogic

http://www.telelogic.com.cn

rulecheck

TeleLogic

http://www.telelogic.com.cn

SilkPerformer?Component?Test?Edition

Segue

 

Purifyplus

IBM?rational

http://www.ibm.com/cn

Rational?Test?Realtime

IBM?rational

http://www.ibm.com/cn

junit

開源

 

cactus

開源

 

Hansel

開源

 

TestNG

開源

 

StrutsTestCase

開源

 

JFCUnit

開源

 

Httpunit

開源

 

Dunit

開源

 

cppunit

開源

http://sourceforge.net/projects/cppunit

Nunit

開源

 

Xunit

開源

 

JTR

開源

 

MallocDebug

Linux平臺(tái)工具

 

Valgrind

Linux平臺(tái)工具

 

Kcachegrind

Linux平臺(tái)工具

 

dmalloc

Linux平臺(tái)工具

 

ElectricFence

Linux平臺(tái)工具

 

LeakTracer

Linux平臺(tái)工具

 

memprof

Linux平臺(tái)工具

 

ccmalloc

Linux平臺(tái)工具

 

mprof

Linux平臺(tái)工具

 

yamd

Linux平臺(tái)工具

 

njamd

Linux平臺(tái)工具

 

mpatrol

Linux平臺(tái)工具

 

嵌入式測(cè)試工具

VcTester

ezTester

http://www.eztester.com

codetest

Metrowerks

 

Cantata/cantana++

IPL

 

IceMaster

Reflex?Technology

 

System?test

Reflex?Technology

 

scorecast

DDC-I

 

Testquest

Testquest

 

UniText

ATTOL

 

vectorcast

Vector?software

 

testrunner

Qronus

 

Logiscope

Telelogic

http://www.telelogic.com.cn

測(cè)試管理工具

TestDirector(QualityCenter)

Mercury

 

QADirector

Compuware

 

certify

Worksoft

 

Product?manager

Aimware

 

SilkCentral?Test?Manager

Segue

 

Doors

Telelogic

http://www.telelogic.com.cn

e-manager

Empirix

 

testmanager

IBM?Rational

http://www.ibm.com/cn

TestView?Manager

RadView

 

Professional

T-Plan

 

缺陷管理工具

TestDirector(QualityCenter)

Mercury

 

ClearQuest

IBM?Rational

http://www.ibm.com/cn

TrackRecord

Compuware

 

TestTrack?pro

Seapine

 

TrueTrack

McCabe

 

Devtrack

Techexcel

 

Notes

IBM?Lotus

 

SilkCentral?Issue?Manager

Segue

 

PVCS?Tracker

Merant

 

AR?System

Remedy

 

URTrack

LealSoft

 

Butterfly

Hansky

 

Bugzilla

開源

 

Mantis

開源

 

JIRA

開源

 

BugFree

開源

 

配置管理工具

ClearCase

IBM?Rational

http://www.ibm.com/cn

PVCS?Version?Manager

Merant

 

VCS

Diamond

 

StarTeam

Borland

 

Perforce

Perforce

 

TRUEchange

McCabe

 

SYNERGY?CM?

Telelogic

http://www.telelogic.com.cn

VSS

Microsoft

 

Firefly

Hansky

 

CVS

Subversion

 

SCCS

RCS

 

CCC/Harvest

Computer?Associates

 

?

測(cè)試工具部分詳解

隨著軟件測(cè)試的地位逐步提高,測(cè)試的重要性逐步顯現(xiàn),測(cè)試工具的應(yīng)用已經(jīng)成為了普遍的趨勢(shì)。目前用于測(cè)試的工具已經(jīng)比較多了,這些測(cè)試工具一般可分為白盒測(cè)試工具、黑盒測(cè)試工具、性能測(cè)試工具,另外還有用于測(cè)試管理(測(cè)試流程管理、缺陷跟蹤管理、測(cè)試用例管理)的工具。

總的來說,測(cè)試工具的應(yīng)用可以提高測(cè)試的質(zhì)量、測(cè)試的效率。但是在選擇和使用測(cè)試工具的時(shí)候,我們也應(yīng)該看到,在測(cè)試過程中,并不是所有的測(cè)試工具都適合我們使用,同時(shí),有了測(cè)試工具、會(huì)使用測(cè)試工具并不等于測(cè)試工具真正能在測(cè)試中發(fā)揮作用。

?

u Win?Runner

1. 簡介

WinRunner:強(qiáng)大的企業(yè)級(jí)自動(dòng)化測(cè)試工具

?

Mercury?Interactive公司的WinRunner是一種企業(yè)級(jí)的功能測(cè)試工具,用于檢測(cè)應(yīng)用程序是否能夠達(dá)到預(yù)期的功能及正常運(yùn)行。通過自動(dòng)錄制、檢測(cè)和回放用戶的應(yīng)用操作,WinRunner能夠有效地幫助測(cè)試人員對(duì)復(fù)雜的企業(yè)級(jí)應(yīng)用的不同發(fā)布版進(jìn)行測(cè)試,提高測(cè)試人員的工作效率和質(zhì)量,確保跨平臺(tái)的、復(fù)雜的企業(yè)級(jí)應(yīng)用無故障發(fā)布及長期穩(wěn)定運(yùn)行。?

?

企業(yè)級(jí)應(yīng)用可能包括Web應(yīng)用系統(tǒng),ERP系統(tǒng),CRM系統(tǒng)等等。這些系統(tǒng)在發(fā)布之前,升級(jí)之后都要經(jīng)過測(cè)試,確保所有功能都能正常運(yùn)行,沒有任何錯(cuò)誤。如何有效地測(cè)試不斷升級(jí)更新且不同環(huán)境的應(yīng)用系統(tǒng),是每個(gè)公司都會(huì)面臨的問題。?

?

如果時(shí)間或資源有限,這個(gè)問題會(huì)更加棘手。人工測(cè)試的工作量太大,還要額外的時(shí)間來培訓(xùn)新的測(cè)試人員等等。為了確保那些復(fù)雜的企業(yè)級(jí)應(yīng)用在不同環(huán)境下都能正常可靠地運(yùn)行,你需要一個(gè)能簡單操作的測(cè)試工具來自動(dòng)完成應(yīng)用程序的功能性測(cè)試。

2. 特征:?

?

1) 輕松創(chuàng)建測(cè)試

?

WinRuuner創(chuàng)建一個(gè)測(cè)試,只需點(diǎn)擊鼠標(biāo)和鍵盤,完成一個(gè)標(biāo)準(zhǔn)的業(yè)務(wù)操作流程,WinRunner自動(dòng)記錄你的操作并生成所需的腳本代碼。這樣,即使計(jì)算機(jī)技術(shù)知識(shí)有限的業(yè)務(wù)用戶輕松創(chuàng)建完整的測(cè)試。你還可以直接修改測(cè)試腳本以滿足各種復(fù)雜測(cè)試的需求。WinRunner提供這兩種測(cè)試創(chuàng)建方式,滿足測(cè)試團(tuán)隊(duì)中業(yè)務(wù)用戶和專業(yè)技術(shù)人員的不同需求。?

?

2) 插入檢查點(diǎn)?

?

在記錄一個(gè)測(cè)試的過程中,可以插入檢查點(diǎn),檢查在某個(gè)時(shí)刻/狀態(tài)下,應(yīng)用程序是否運(yùn)行正常。在插入檢查點(diǎn)后,WinRunner會(huì)收集一套數(shù)據(jù)指標(biāo),在測(cè)試運(yùn)行時(shí)對(duì)其一一驗(yàn)證。WinRunner提供幾種不同類型的檢查點(diǎn),包括文本的、GUI、位圖和數(shù)據(jù)庫。例如,用一個(gè)位圖檢查點(diǎn),你可以檢查公司的圖標(biāo)是否出現(xiàn)于指定位置。?

?

3) 檢驗(yàn)數(shù)據(jù)?

?

除了創(chuàng)建并運(yùn)行測(cè)試,WinRunner還能驗(yàn)證數(shù)據(jù)庫的數(shù)值,從而確保業(yè)務(wù)交易的準(zhǔn)確性。例如,在創(chuàng)建測(cè)試時(shí),可以設(shè)定哪些數(shù)據(jù)庫表和記錄需要檢測(cè);在測(cè)試運(yùn)行時(shí),測(cè)試程序就會(huì)自動(dòng)核對(duì)數(shù)據(jù)庫內(nèi)的實(shí)際數(shù)值和預(yù)期的數(shù)值。WinRunner自動(dòng)顯示檢測(cè)結(jié)果,在有更新/刪除/插入的記錄上突出顯示以引起注意。?

?

4) 增強(qiáng)測(cè)試?

?

為了徹底全面地測(cè)試一個(gè)應(yīng)用程序,需要使用不同類型的數(shù)據(jù)來測(cè)試。WinRunner的數(shù)據(jù)驅(qū)動(dòng)向?qū)?/span>(?Data?Driver?Wizard)可以讓你簡單地點(diǎn)擊幾下鼠標(biāo),就可以把一個(gè)業(yè)務(wù)流程測(cè)試轉(zhuǎn)化為數(shù)據(jù)驅(qū)動(dòng)測(cè)試,從而反映多個(gè)用戶各自獨(dú)特且真實(shí)的行為。

?

以一個(gè)訂單輸入的流程為例,你可能希望把訂單號(hào)或客戶名稱作為可變欄,用多套數(shù)據(jù)進(jìn)行測(cè)試。使用Data?Driver?Wizard,你可以選擇訂單號(hào)或客戶名稱用數(shù)據(jù)表格文件中的哪個(gè)欄目的數(shù)據(jù)替換。你可以把訂單號(hào)或客戶名稱輸入數(shù)據(jù)表格文件,或從其它表格和數(shù)據(jù)庫中導(dǎo)入。數(shù)據(jù)驅(qū)動(dòng)測(cè)試不僅節(jié)省了時(shí)間和資源,又提高了應(yīng)用的測(cè)試覆蓋率。?

?

WinRunner還可以通過Function?Generator增加測(cè)試的功能。使用Function?Generator可以從目錄列表中選擇一個(gè)功能增加到你的測(cè)試中以提高測(cè)試能力。例如,你可以選擇”calendar”,然后從日歷功能的下屬目錄中選擇,如Calendar_select_date(),然后你可以直觀地輸入?yún)?shù),把這個(gè)功能插入到你的測(cè)試中。

?

針對(duì)相當(dāng)數(shù)量的企業(yè)應(yīng)用里非標(biāo)準(zhǔn)對(duì)象,WinRunner提供了Virtual?Object?Wizard來識(shí)別以前未知的對(duì)象。使用Virtual?Object?Wizard,你可以選擇未知對(duì)象的類型,設(shè)定標(biāo)識(shí)和命名。在錄制使用該對(duì)象的測(cè)試時(shí),WinRunner會(huì)自動(dòng)對(duì)應(yīng)它的名字,從而提高測(cè)試腳本的可讀性和測(cè)試質(zhì)量。?

?

5) 運(yùn)行測(cè)試?

?

創(chuàng)建好測(cè)試腳本,并插入檢查點(diǎn)和必要的添加功能后,你就可以開始運(yùn)行測(cè)試。運(yùn)行測(cè)試時(shí),WinRunner會(huì)自動(dòng)操作應(yīng)用程序,就象一個(gè)真實(shí)的用戶根據(jù)業(yè)務(wù)流程執(zhí)行著每一步的操作。測(cè)試運(yùn)行過程中,如有網(wǎng)絡(luò)消息窗口出現(xiàn)或其它意外事件出現(xiàn),WinRunner也會(huì)根據(jù)預(yù)先的設(shè)定排除這些干擾。

?

6) 分析結(jié)果

?

測(cè)試運(yùn)行結(jié)束后,你需要分析測(cè)試結(jié)果。WinRunner通過交互式的報(bào)告工具來提供詳盡的、易讀的報(bào)告。報(bào)告中會(huì)列出測(cè)試中發(fā)現(xiàn)的錯(cuò)誤內(nèi)容、位置、檢查點(diǎn)和其它重要事件,幫助你對(duì)測(cè)試結(jié)果進(jìn)行分析。這些測(cè)試結(jié)果還可以通過Mercury?Interactive的測(cè)試管理工具TestDirector來查閱。

?

7) 維護(hù)測(cè)試?

?

隨著時(shí)間的推移,開發(fā)人員會(huì)對(duì)應(yīng)用程序做進(jìn)一步的修改,并需要增加另外的測(cè)試。使用WinRunner,你不必對(duì)程序的每一次改動(dòng)都重新創(chuàng)建你的測(cè)試。WinRunner可以創(chuàng)建在整個(gè)應(yīng)用程序生命周期內(nèi)都可以重復(fù)使用的測(cè)試,從而大大地節(jié)省時(shí)間和資源,充分利用你的測(cè)試投資。

?

每次記錄測(cè)試時(shí),WinRunner會(huì)自動(dòng)創(chuàng)建一個(gè)GUI?Map文件以保存應(yīng)用對(duì)象。這些對(duì)象分層次組織,既可以總覽所有的對(duì)象,也可以查詢某個(gè)對(duì)象的詳細(xì)信息。一般而言,對(duì)應(yīng)用程序的任何改動(dòng)都會(huì)影響到成百上千個(gè)測(cè)試。通過修改一個(gè)GUI?Map文件而非無數(shù)個(gè)測(cè)試,WinRunner可以方便地實(shí)現(xiàn)測(cè)試重用。

?

8) 幫助你的應(yīng)用程序?yàn)闊o線應(yīng)用作準(zhǔn)備?

?

隨著無線設(shè)備種類和數(shù)量的增加,你的應(yīng)用程序測(cè)試計(jì)劃需要同時(shí)滿足傳統(tǒng)的基于瀏覽器的用戶和無線瀏覽設(shè)備,如移動(dòng)電話、傳呼機(jī)和個(gè)人數(shù)字助理(PDA)

?

無線應(yīng)用協(xié)議是一種公開的、全球性的網(wǎng)絡(luò)協(xié)議,用來支持標(biāo)準(zhǔn)數(shù)據(jù)格式化和無線設(shè)備信號(hào)的傳輸。

使用WinRunner,測(cè)試人員可以利用微型瀏覽模擬器來記錄業(yè)務(wù)流程操作,然后回放和檢查這些業(yè)務(wù)流程功能的正確性。?

?

u LoadRunner?

?

1. 簡介:?

?

LoadRunner?是一種預(yù)測(cè)系統(tǒng)行為和性能的負(fù)載測(cè)試工具。通過以模擬上千萬用戶實(shí)施并發(fā)負(fù)載及實(shí)時(shí)性能監(jiān)測(cè)的方式來確認(rèn)和查找問題,LoadRunner?能夠?qū)φ麄€(gè)企業(yè)架構(gòu)進(jìn)行測(cè)試。通過使用LoadRunner?,企業(yè)能最大限度地縮短測(cè)試時(shí)間,優(yōu)化性能和加速應(yīng)用系統(tǒng)的發(fā)布周期。

?

目前企業(yè)的網(wǎng)絡(luò)應(yīng)用環(huán)境都必須支持大量用戶,網(wǎng)絡(luò)體系架構(gòu)中含各類應(yīng)用環(huán)境且由不同供應(yīng)商提供軟件和硬件產(chǎn)品。難以預(yù)知的用戶負(fù)載和愈來愈復(fù)雜的應(yīng)用環(huán)境使公司時(shí)時(shí)擔(dān)心會(huì)發(fā)生用戶響應(yīng)速度過慢,系統(tǒng)崩潰等問題。這些都不可避免地導(dǎo)致公司收益的損失。Mercury?Interactive?的?LoadRunner?能讓企業(yè)保護(hù)自己的收入來源,無需購置額外硬件而最大限度地利用現(xiàn)有的IT?資源,并確保終端用戶在應(yīng)用系統(tǒng)的各個(gè)環(huán)節(jié)中對(duì)其測(cè)試應(yīng)用的質(zhì)量,可靠性和可擴(kuò)展性都有良好的評(píng)價(jià)。

?

LoadRunner?是一種適用于各種體系架構(gòu)的自動(dòng)負(fù)載測(cè)試工具,它能預(yù)測(cè)系統(tǒng)行為并優(yōu)化系統(tǒng)性能。LoadRunner?的測(cè)試對(duì)象是整個(gè)企業(yè)的系統(tǒng),它通過模擬實(shí)際用戶的操作行為和實(shí)行實(shí)時(shí)性能監(jiān)測(cè),來幫助您更快的查找和發(fā)現(xiàn)問題。此外,LoadRunner?能支持廣范的協(xié)議和技術(shù),為您的特殊環(huán)境提供特殊的解決方案。?

?

2. 特征:?

?

1) 輕松創(chuàng)建虛擬用戶

?

使用LoadRunner?Virtual?User?Generator,您能很簡便地創(chuàng)立起系統(tǒng)負(fù)載。該引擎能夠生成虛擬用戶,以虛擬用戶的方式模擬真實(shí)用戶的業(yè)務(wù)操作行為。它先記錄下業(yè)務(wù)流程(如下訂單或機(jī)票預(yù)定),然后將其轉(zhuǎn)化為測(cè)試腳本。利用虛擬用戶,您可以在Windows?UNIX?Linux?機(jī)器上同時(shí)產(chǎn)生成千上萬個(gè)用戶訪問。所以LoadRunner能極大的減少負(fù)載測(cè)試所需的硬件和人力資源。另外,LoadRunner?TurboLoad?專利技術(shù)能。

?

提供很高的適應(yīng)性。TurboLoad?使您可以產(chǎn)生每天幾十萬名在線用戶和數(shù)以百萬計(jì)的點(diǎn)擊數(shù)的負(fù)載。?

?

Virtual?User?Generator?建立測(cè)試腳本后,您可以對(duì)其進(jìn)行參數(shù)化操作,這一操作能讓您利用幾套不同的實(shí)際發(fā)生數(shù)據(jù)來測(cè)試您的應(yīng)用程序,從而反映出本系統(tǒng)的負(fù)載能力。以一個(gè)訂單輸入過程為例,參數(shù)化操作可將記錄中的固定數(shù)據(jù),如訂單號(hào)和客戶名稱,由可變值來代替。在這些變量內(nèi)隨意輸入可能的訂單號(hào)和客戶名,來匹配多個(gè)實(shí)際用戶的操作行為。?

?

LoadRunner?通過它的Data?Wizard?來自動(dòng)實(shí)現(xiàn)其測(cè)試數(shù)據(jù)的參數(shù)化。Data?Wizard?直接連于數(shù)據(jù)庫服務(wù)器,從中您可以獲取所需的數(shù)據(jù)(如定單號(hào)和用戶名)并直接將其輸入到測(cè)試腳本。這樣避免了人工處理數(shù)據(jù)的需要,Data?Wizard?為您節(jié)省了大量的時(shí)間。?

?

為了進(jìn)一步確定您的Virtual?user?能夠模擬真實(shí)用戶,您可利用LoadRunner?控制某些行為特性。例如,只需要點(diǎn)擊一下鼠標(biāo),您就能輕易控制交易的數(shù)量,交易頻率,用戶的思考時(shí)間和連接速度等。?

?

2) 創(chuàng)建真實(shí)的負(fù)載

?

Virtual?users?建立起后,您需要設(shè)定您的負(fù)載方案,業(yè)務(wù)流程組合和虛擬用戶數(shù)量。用LoadRunner?Controller,您能很快組織起多用戶的測(cè)試方案。Controller?Rendezvous?功能提供一個(gè)互動(dòng)的環(huán)境,在其中您既能建立起持續(xù)且循環(huán)的負(fù)載,又能管理和驅(qū)動(dòng)負(fù)載測(cè)試方案。?

?

而且,您可以利用它的日程計(jì)劃服務(wù)來定義用戶在什么時(shí)候訪問系統(tǒng)以產(chǎn)生負(fù)載。這樣,您就能將測(cè)試過程自動(dòng)化。同樣您還可以用Controller?來限定您的負(fù)載方案,在這個(gè)方案中所有的用戶同時(shí)執(zhí)行一個(gè)動(dòng)作---如登陸到一個(gè)庫存應(yīng)用程序----來模擬峰值負(fù)載的情況。另外,您還能監(jiān)測(cè)系統(tǒng)架構(gòu)中各個(gè)組件的性能----?包括服務(wù)器,數(shù)據(jù)庫,網(wǎng)絡(luò)設(shè)備等----來幫助客戶決定系統(tǒng)的配置。?

?

LoadRunner?通過它的AutoLoad?技術(shù),為您提供更多的測(cè)試靈活性。使用AutoLoad?,您可以根據(jù)目前的用戶人數(shù)事先設(shè)定測(cè)試目標(biāo),優(yōu)化測(cè)試流程。例如,您的目標(biāo)可以是確定您的應(yīng)用系統(tǒng)承受的每秒點(diǎn)擊數(shù)或每秒的交易量。?

?

3) 定位性能問題

?

LoadRunner?內(nèi)含集成的實(shí)時(shí)監(jiān)測(cè)器,在負(fù)載測(cè)試過程的任何時(shí)候,您都可以觀察到應(yīng)用系統(tǒng)的運(yùn)行性能。這些性能監(jiān)測(cè)器為您實(shí)時(shí)顯示交易性能數(shù)據(jù)(如響應(yīng)時(shí)間)和其它系統(tǒng)組件包括application?server,?web?server,網(wǎng)路設(shè)備和數(shù)據(jù)庫等的實(shí)時(shí)性能。這樣,您就可以在測(cè)試過程中從客戶和服務(wù)器的雙方面評(píng)估這些系統(tǒng)組件的運(yùn)行性能,從而更快地發(fā)現(xiàn)問題。

?

再者,利用LoadRunner?ContentCheck?TM?,您可以判斷負(fù)載下的應(yīng)用程序功能正常與否。ContentCheck?Virtual?users?運(yùn)行時(shí),檢測(cè)應(yīng)用程序的網(wǎng)絡(luò)數(shù)據(jù)包內(nèi)容,從中確定是否有錯(cuò)誤內(nèi)容傳送出去。它的實(shí)時(shí)瀏覽器幫助您從終端用戶角度觀察程序性能狀況。?

?

4) 分析結(jié)果以精確定位問題所在

?

一旦測(cè)試完畢后,LoadRunner?收集匯總所有的測(cè)試數(shù)據(jù),并為您提供高級(jí)的分析和報(bào)告工具,以便迅速查找到性能問題并追溯原由。使用LoadRunner?Web?交易細(xì)節(jié)監(jiān)測(cè)器,您可以了解到將所有的圖象、框架和文本下載到每一網(wǎng)頁上所需的時(shí)間。例如,這個(gè)交易細(xì)節(jié)分析機(jī)制能

?

夠分析是否因?yàn)橐粋€(gè)大尺寸的圖形文件或是第三方的數(shù)據(jù)組件造成應(yīng)用系統(tǒng)運(yùn)行速度減慢。另外,Web?交易細(xì)節(jié)監(jiān)測(cè)器分解用于客戶端、網(wǎng)絡(luò)和服務(wù)器上端到端的反應(yīng)時(shí)間,便于確認(rèn)問題,定位查找真正出錯(cuò)的組件。例如,您可以將網(wǎng)絡(luò)延時(shí)進(jìn)行分解,以判斷DNS?解析時(shí)間,連接服務(wù)器或SSL?認(rèn)證所花費(fèi)的時(shí)間。通過使用LoadRunner?的分析工具,您能很快地查找到出錯(cuò)的位置和原因并作出相應(yīng)的調(diào)整。?

?

5) 重復(fù)測(cè)試保證系統(tǒng)發(fā)布的高性能

?

負(fù)載測(cè)試是一個(gè)重復(fù)過程。每次處理完一個(gè)出錯(cuò)情況,您都需要對(duì)您的應(yīng)用程序在相同的方案下,再進(jìn)行一次負(fù)載測(cè)試。以此檢驗(yàn)?zāi)龅男拚欠窀纳屏诉\(yùn)行性能。

?

6) Enterprise?Java?Beans的測(cè)試

?

LoadRunner?完全支持EJB?的負(fù)載測(cè)試。這些基于Java?的組件運(yùn)行在應(yīng)用服務(wù)器上,提供廣泛的應(yīng)用服務(wù)。通過測(cè)試這些組件,您可以在應(yīng)用程序開發(fā)的早期就確認(rèn)并解決可能產(chǎn)生的問題。?

?

利用LoadRunner,?您可以很方便地了解系統(tǒng)的性能。?它的Controller?允許您重復(fù)執(zhí)行與出錯(cuò)修改前相同的測(cè)試方案。它的基于HTML?的報(bào)告為您提供一個(gè)比較性能結(jié)果所需的基準(zhǔn),以此衡量在一段時(shí)間內(nèi),有多大程度的改進(jìn)并確保應(yīng)用成功。由于這些報(bào)告是基于HTML?的文本,您可以將其公布于您公司的內(nèi)部網(wǎng)上,便于隨時(shí)查閱。?

?

7) 最大化投資回報(bào)?

?所有Mercury?Interactive?的產(chǎn)品和服務(wù)都是集成設(shè)計(jì)的,?能完全相容地一起運(yùn)作。由于它們具有相同的核心技術(shù),來自于LoadRunnerActiveTest?TM?的測(cè)試腳本,在Mercury?Interactive?的負(fù)載測(cè)試服務(wù)項(xiàng)目中,可以被重復(fù)用于性能監(jiān)測(cè)。借助Mercury?Interactive的監(jiān)測(cè)功能--Topaz?TM?ActiveWatch?TM?,測(cè)試腳本可重復(fù)使用從而平衡投資收益。更重要的是,您能為測(cè)試的前期布署和生產(chǎn)系統(tǒng)的監(jiān)測(cè)提供一個(gè)完整的應(yīng)用性能管理解決方案。?

?

8) 支持無線應(yīng)用協(xié)議

?

隨著無線設(shè)備數(shù)量和種類的增多,您的測(cè)試計(jì)劃需要同時(shí)滿足傳統(tǒng)的基于瀏覽器的用戶和無線互聯(lián)網(wǎng)設(shè)備,如手機(jī)和PDALoadRunner?支持2?項(xiàng)最廣泛使用的協(xié)議:WAPI-mode。此外,通過負(fù)載測(cè)試系統(tǒng)整體架構(gòu),LoadRunner?能讓您只需要通過記錄一次腳本,就可完全檢測(cè)上述這些無線互聯(lián)網(wǎng)系統(tǒng)。

?

9) 支持Media?Stream應(yīng)用

?

LoadRunner?還能支持Media?Stream應(yīng)用。為了保證終端用戶得到良好的操作體驗(yàn)和高質(zhì)量Media?Stream,您需要檢測(cè)您的Media?Stream應(yīng)用程序。使用LoadRunner?,您可以記錄和重放任何流行的多媒體數(shù)據(jù)流格式來診斷系統(tǒng)的性能問題,查找原由,分析數(shù)據(jù)的質(zhì)量。

?

10) 完整的企業(yè)應(yīng)用環(huán)境的支持

?

LoadRunner?支持廣泛的協(xié)議,可以測(cè)試各種IT?基礎(chǔ)架構(gòu)。

?

u WAS?

?

1. 簡介:?

?

Microsoft?Web?Application?Stress?Tool?是由微軟的網(wǎng)站測(cè)試人員所開發(fā),專門用來進(jìn)行實(shí)際網(wǎng)站壓力測(cè)試的一套工具。透過這套功能強(qiáng)大的壓力測(cè)試工具,您可以使用少量的Client端計(jì)算機(jī)仿真大量用戶上線對(duì)網(wǎng)站服務(wù)所可能造成的影響。

?

2 特征:?

?

1)可以數(shù)種不同的方式建立測(cè)試指令:包含以手動(dòng)、錄制瀏覽器操作步驟、或直接錄入IIS的記錄文件、錄入網(wǎng)站的內(nèi)容及錄入其它測(cè)試程序的指令等方式。

?

2)支持多種客戶端接口:標(biāo)準(zhǔn)的網(wǎng)站應(yīng)用程序C++的客戶端,使用Active?Server?Page?客戶端,或是使用Web?Application?Stress對(duì)象模型建立您自定的接口。

?

3)支持多用戶:利用多種不同的認(rèn)證方式仿真實(shí)際的情況,包含了DPA,?NTLM?及?SSL等。

?

u JTEST?

1、簡介:?

jtestparasoft公司推出的一款針對(duì)java語言的自動(dòng)化白盒測(cè)試工具,它通過自動(dòng)實(shí)現(xiàn)java的單元測(cè)試和代碼標(biāo)準(zhǔn)校驗(yàn),來提高代碼的可靠性。Jtest先分析每個(gè)java類,然后自動(dòng)生成junit測(cè)試用例并執(zhí)行用例,從而實(shí)現(xiàn)代碼的最大覆蓋,并將代碼運(yùn)行時(shí)未處理的異常暴露出來;另外,它還可以檢查以DbCDesign?by?Contract)規(guī)范開發(fā)的代碼的正確性。用戶還可以通過擴(kuò)展測(cè)試用例的自動(dòng)生成器來添加更多的junit用例。Jtest還能按照現(xiàn)有的超過350個(gè)編碼標(biāo)準(zhǔn)來檢查并自動(dòng)糾正大多數(shù)常見的編碼規(guī)則上的偏差,用戶可自定義這些標(biāo)準(zhǔn),通過簡單的幾個(gè)點(diǎn)擊,就能預(yù)防類似于未處理異常、函數(shù)錯(cuò)誤、內(nèi)存泄漏、性能問題、安全隱患這樣的代碼問題。

?

2、優(yōu)勢(shì):?

1)使預(yù)防代碼錯(cuò)誤成為可能,從而大大節(jié)約成本,提高軟件質(zhì)量和開發(fā)效率?

2)使單元測(cè)試——包括白盒、黑盒以及回歸測(cè)試成為可能?

3)使代碼規(guī)范檢查和自動(dòng)糾正成為可能?

4)鼓勵(lì)開發(fā)團(tuán)隊(duì)橫向協(xié)作來預(yù)防代碼錯(cuò)誤?

?

3、特征:??

1)通過簡單的點(diǎn)擊,自動(dòng)實(shí)現(xiàn)代碼基本錯(cuò)誤的預(yù)防,這包括單元測(cè)試和代碼規(guī)范的檢查

2)生成并執(zhí)行junit單元測(cè)試用例,對(duì)代碼進(jìn)行即時(shí)檢查

3)提供了進(jìn)行黑盒測(cè)試、模型測(cè)試和系統(tǒng)測(cè)試的快速途徑?

4)確認(rèn)并阻止代碼中不可捕獲的異常、函數(shù)錯(cuò)誤、內(nèi)存泄漏、性能問題、安全弱點(diǎn)的問題?

5)監(jiān)視測(cè)試的覆蓋范圍?

6)自動(dòng)執(zhí)行回歸測(cè)試?

7)支持DbC編碼規(guī)范?

8)檢驗(yàn)超過350個(gè)來自java專家的開發(fā)規(guī)范?

9)自動(dòng)糾正違反超過160個(gè)編碼規(guī)范的錯(cuò)誤?

10)允許用戶通過圖形方式或自動(dòng)創(chuàng)建方式來自定義編碼規(guī)范?

11)支持大型團(tuán)隊(duì)開發(fā)中測(cè)試設(shè)置和測(cè)試文件的共享?

12)實(shí)現(xiàn)和IBM?Websphere?Studio?/Eclipse?IDE?的安全集成

?

4、價(jià)格:昂貴

?

?

u JMETER?

?

1、簡介:?

JMeterApache組織的開放源代碼項(xiàng)目,它是功能和性能測(cè)試的工具,100%的用java實(shí)現(xiàn)。使用JMeter進(jìn)行性能測(cè)試?

2、特征:??

JMeter可以用于測(cè)試靜態(tài)或者動(dòng)態(tài)資源的性能(文件、ServletsPerl腳本、java對(duì)象、數(shù)據(jù)庫和查詢、ftp服務(wù)器或者其他的資源)。JMeter用于模擬在服務(wù)器、網(wǎng)絡(luò)或者其他對(duì)象上附加高負(fù)載以測(cè)試他們提供服務(wù)的受壓能力,或者分析他們提供的服務(wù)在不同負(fù)載條件下的總性能情況。你可以用JMeter提供的圖形化界面分析性能指標(biāo)或者在高負(fù)載情況下測(cè)試服務(wù)器/腳本/對(duì)象的行為。

?

3、價(jià)格:未知?

?

?

u JUNIT?

?

1、簡介:?

?

JUnit是一個(gè)開源的java測(cè)試框架,它是Xuint測(cè)試體系架構(gòu)的一種實(shí)現(xiàn)。在JUnit單元測(cè)試框架的設(shè)計(jì)時(shí),設(shè)定了三個(gè)總體目標(biāo),第一個(gè)是簡化測(cè)試的編寫,這種簡化包括測(cè)試框架的學(xué)習(xí)和實(shí)際測(cè)試單元的編寫;第二個(gè)是使測(cè)試單元保持持久性;第三個(gè)則是可以利用既有的測(cè)試來編寫相關(guān)的測(cè)試。

?

2、優(yōu)勢(shì):?

?

2.1)junit是完全Free的。

?

2.2)使用方便。在你提升程序代碼的品質(zhì)時(shí)JUnit測(cè)試仍允許你更快速的撰寫程序?2.3)JUnit非常簡單撰寫測(cè)試應(yīng)該很簡單--這是重點(diǎn)!如果撰寫測(cè)試太復(fù)雜或太耗時(shí)間,便無法要求程序設(shè)計(jì)師撰寫測(cè)試。使用JUnit你可以快速的撰寫測(cè)試并檢測(cè)你的程序代碼并逐?步隨著程序代碼的成長增加測(cè)試。只要你寫了一些測(cè)試,你想要快速并頻繁的執(zhí)行測(cè)試而不至于中斷建立設(shè)計(jì)及開發(fā)程序。使用JUnit執(zhí)行測(cè)試就像編譯你的程序代碼那么容易。事實(shí)上,你應(yīng)該執(zhí)行編譯時(shí)也執(zhí)行測(cè)試。編譯是檢測(cè)程序代碼的語法而測(cè)試是檢查程序代碼的完整性(integrity)。如果你是以人工比對(duì)測(cè)試的期望與實(shí)際結(jié)果那么測(cè)試是很不好玩的,而且讓你的速度慢下來。JUnit測(cè)試可以自動(dòng)執(zhí)行并且檢查他們自己的結(jié)果。當(dāng)你執(zhí)行測(cè)試,你獲得簡單且立即的回饋;?比如測(cè)試是通過或失敗。而不再需要人工檢查測(cè)試結(jié)果的報(bào)告。JUnit可以把測(cè)試組織成測(cè)試系列;這個(gè)測(cè)試系列可以包含其它的測(cè)試或測(cè)試系列。JUnit測(cè)試的合成行為允許你組合多個(gè)測(cè)試并自動(dòng)的回歸(regression)從頭到尾測(cè)試整個(gè)測(cè)試系列。你也可以執(zhí)行測(cè)試系列層級(jí)架構(gòu)中任何一層的測(cè)試。使用Junit測(cè)試框架,你可以很便宜的撰寫測(cè)試并享受由測(cè)試框架所提供的信心。撰寫一個(gè)測(cè)試就像寫一個(gè)方法一樣簡單;測(cè)試是檢驗(yàn)要測(cè)試的程序代碼并定義期望的結(jié)果。這個(gè)測(cè)試框架提供自動(dòng)執(zhí)行測(cè)試的背景;這個(gè)背景并成為其它測(cè)試集合的一部份。在測(cè)試少量的投資將持續(xù)讓你從時(shí)間及品質(zhì)中獲得回收。你寫的測(cè)試愈少;你的程序代碼變的愈不穩(wěn)定。測(cè)試使得軟件穩(wěn)定并逐步累積信心;因?yàn)槿魏巫儎?dòng)不會(huì)造成漣漪效應(yīng)而漫及整個(gè)軟件。測(cè)試可以形成軟件的完整結(jié)構(gòu)的膠結(jié)。?2.8)JUnit測(cè)試是開發(fā)者測(cè)試。JUnit測(cè)試是高度區(qū)域性(localized)測(cè)試;用以改善開發(fā)者的生產(chǎn)力及程序代碼品質(zhì)。不像功能測(cè)試(function?test)視系統(tǒng)為一個(gè)黑箱以確認(rèn)軟件整體的工作性為主,單元測(cè)試是由內(nèi)而外測(cè)試系統(tǒng)基礎(chǔ)的建構(gòu)區(qū)塊。開發(fā)者撰寫并擁有JUnit測(cè)試。每當(dāng)一個(gè)開發(fā)反復(fù)(iteration)完成,這個(gè)測(cè)試便包裹成為交付軟件的一部份提供一種溝通的方式,「這是我交付的軟件并且是通過測(cè)試的。使用Java測(cè)試Java軟件形成一個(gè)介于測(cè)試及程序代碼間的無縫(seamless)邊界。在測(cè)試的控制下測(cè)試變成整個(gè)軟件的擴(kuò)充同時(shí)程序代碼可以被重整。Java編譯器的單元測(cè)試靜態(tài)語法檢查可已幫助測(cè)試程序并且確認(rèn)遵守軟件接口的約定。

一段測(cè)試的程序代碼無法單獨(dú)的執(zhí)行,它需要是執(zhí)行環(huán)境的一部份。同時(shí),它需要自動(dòng)執(zhí)行的單元測(cè)試--譬如在系統(tǒng)中周期性的執(zhí)行所有的測(cè)試以證明沒有任何東西被破壞。由于單元測(cè)試需要符合特定的準(zhǔn)則:一個(gè)成功的測(cè)試不應(yīng)該是人工檢查的(那可要到天荒地老了啊),一個(gè)未通過測(cè)試的失敗應(yīng)可以產(chǎn)出文件以供診斷修改。而Junit可以提供給我們這些便利.。這樣所有測(cè)試開發(fā)者所需撰寫的只是測(cè)試碼本身了。跟optimizeitJtest那些昂貴而又超級(jí)麻煩的tool比較起來,其利昭然可見!

2.9)JUnit測(cè)試是以Java寫成的。

2.7)JUnit測(cè)試提升軟件的穩(wěn)定性。

2.6)撰寫JUnit測(cè)試所費(fèi)不多。

2.5)JUnit測(cè)試可以合成一個(gè)測(cè)試系列的層級(jí)架構(gòu)。

2.4)JUnit測(cè)試檢驗(yàn)其結(jié)果并提供立即的回饋。?那聽起來似乎不是很直覺,但那是事實(shí)。當(dāng)你使用JUnit撰寫測(cè)試,你將花更少的時(shí)間除蟲,同時(shí)對(duì)你程序代碼的改變更?俱有信心。這個(gè)信心讓你更積極重整程序代碼并增加新的功能。沒有測(cè)試,對(duì)于重整及增加新功能你會(huì)變得沒有信心;因?yàn)槟悴恢烙猩趺礀|西會(huì)破壞產(chǎn)出的結(jié)果。采用一個(gè)綜合的測(cè)試系列,你可以在改變程序代碼之后快速的執(zhí)行多個(gè)測(cè)試并對(duì)于你的變動(dòng)并未破壞任何東西感到有信心。在執(zhí)行測(cè)試時(shí)如果發(fā)現(xiàn)臭蟲,原始碼仍然清楚的在你腦中,因此很容易找到臭蟲。在JUnit中撰寫的測(cè)試幫助你以一種極?大(extreme)的步伐撰寫程序及快速的找出缺點(diǎn)。

?

3、價(jià)格:免費(fèi)?

?

u WEBLODE?

?

1、簡介:?

?

webloadRadView公司推出的一個(gè)性能測(cè)試和分析工具,它讓web應(yīng)用程序開發(fā)者自動(dòng)執(zhí)行壓力測(cè)試;webload通過模擬真實(shí)用戶的操作,生成壓力負(fù)載來測(cè)試web的性能。

?

?2、特征:?

?

1)用戶創(chuàng)建的是基于javas?cript的測(cè)試腳本,稱為議程agenda,用它來模擬客戶的行為,通過執(zhí)行該腳本來衡量web應(yīng)用程序在真實(shí)環(huán)境下的性能

?

2)如有需要可以在做負(fù)載測(cè)試的同時(shí),使用服務(wù)器監(jiān)控工具對(duì)服務(wù)器端的內(nèi)容進(jìn)行記錄那樣使負(fù)載測(cè)試更加全面。

?

?

第一階段英語單詞總結(jié)

一、Abbreviation???縮寫

0、?RTM???requirement?trace?matrix?需求跟蹤距陣

1 SRS???software?requirement?specification??軟件需求規(guī)格說明書

2 HLD???high?level?design?????????????????概要設(shè)計(jì)

3 LLD???low?level?design??????????????????詳細(xì)設(shè)計(jì)

4 IPO???input?process?output???????????????輸入輸出過程

5 SQA???software?quality?assurance??????????軟件質(zhì)量保證

6 CMO??configuration?management?operator???配置管理員

7 RUP???rational?unified?process??????????????通用業(yè)務(wù)流程

8 IPD????integrated?product?development???????集成產(chǎn)品開發(fā)過程

9 PDCA??plan,?do,?check,?act????????????質(zhì)量管理PDCA循環(huán)

10 SMART原則???specification具體的,?related相關(guān)性,?measurable可度量的,?time-based時(shí)限性,?achievable可達(dá)到性

11 DMAC原則??define定義,?measure度量,?analysis分析,?check檢查

12 SEPG????software?engineer?process?group????軟件工程過程組

13 SEI??????software?engineer?institute?????????美國軟件工程研究所

14 CCB???change?control?board????????????????變更控制委員會(huì)

15 MTBF????mean?time?between?failure?????????平均失效時(shí)間

16 MTTR????mean?time?to?repair??????????????平均故障恢復(fù)時(shí)間

17 SDP????software?development?plan??????????軟件開發(fā)計(jì)劃

?

?

二、常用術(shù)語

1 Debug?????????????調(diào)試

2 Test?case???????????測(cè)試用例

3 Siral?model?????????螺旋模型

4 Software?life?cycle???軟件生命周期

5 Initial?????????????初始級(jí)

6 Repeatable?????????可重復(fù)級(jí)

7 Defined????????????已定義級(jí)

8 Managed??????????已管理級(jí)

9 Optimizing????????優(yōu)化級(jí)

10 Suitability?????????適合性

11 Accuracy??????????準(zhǔn)確性

12 Interoperability?????互操作性

13 Security????????????安全性

14 Functionality?compliance???功能性依從性

15 Maturity???????????成熟性

16 Fault?tolerance??????容錯(cuò)性

17 Recoverability?????????易恢復(fù)性

18 Reliability?compliance??可靠性的依從性

19 Understandability??????易理解性

20 Learn?ability???????????易學(xué)性

21 Operability????????????易操作性

22 Attractiveness??????????吸引性

23 Time?behavior??????????時(shí)間特性

24 Resource?utilization??????資源利用性

25 Efficiency?compliance?????效率依從性

26 Analyzability????????????易分析性

27 Changeability????????????易改變性

28 Stability????????????????穩(wěn)定性

29 Testability???????????????易測(cè)試性

30 Maintainability?compliance?維護(hù)行依從性

31 Adaptability??????????????適應(yīng)性

32 installability??????????????安裝性

33 co-existence???????????????共存行

34 replaceability?????????????易替換性

35 portability?compliance?????可移植性的依從性

36 unit?testing???????????????單元測(cè)試

37 integration?testing?????????集成測(cè)試

38 system?testing?????????????系統(tǒng)測(cè)試

39 regression?testing??????????回歸測(cè)試

40 verification???????????????驗(yàn)證

41 validation????????????????確認(rèn)

42 alpha?testing??????????????α測(cè)試

43 beta?testing???????????????β測(cè)試

44 top-down?testing???????????自頂向下測(cè)試

45 bottom-up?testing??????????自底向上測(cè)試

46 isolation?testing????????????孤立測(cè)試

47 automates?testing???????????自動(dòng)測(cè)試

48 artificially?testing???????????人工測(cè)試

49 white?box?testing????????????白盒測(cè)試

50 black?box?testing????????????黑盒測(cè)試

51 entry?criteria???????????????入口準(zhǔn)則

52 exit?criteria?????????????????出口準(zhǔn)則

53 reviews?and?audits???????????評(píng)審和審計(jì)

54 work?products?managed?and?controlled??可管理和受控的工作產(chǎn)品

55 documented?procedures???????書面規(guī)程

56 stub????????????????????????樁單元

57 performance?testing???????????性能測(cè)試

58 stress?testing?????????????????壓力測(cè)試

59 volume?testing??????????????????????容量測(cè)試

60 security?testing??????????????????????安全性測(cè)試

61 usability?testing?????????????????????可用性測(cè)試

62 backup?testing??????????????????????備份測(cè)試

63 robustness?testing???????????????????健壯性測(cè)試

64 documentation?testing???????????????文檔測(cè)試

65 online?help?testing???????????????????在線幫助測(cè)試

66 statement?coverage??????????????????語句覆蓋

67 branch?coverage????????????????????分支覆蓋

68 decision?coverage???????????????????判斷覆蓋

69 condition?coverage??????????????????條件覆蓋

70 branch?conditon?coverage????????????分支條件覆蓋

71 decision?condition?coverage???????????判斷條件覆蓋

72 path?coverage???????????????????????路徑覆蓋

73 function?coverage???????????????????功能覆蓋

74 inheritance?context?coverage??????????繼承上下文覆蓋

75 state-based?context?coverage??????????基于狀態(tài)的上下文覆蓋

76 User-defined?context?coverage?????????已定義用戶上下文覆蓋

77 Instruction?blocks?coverage??IB?coverage???指令塊覆蓋

78 Decision-to-decision?paths?coverage??DDP?coverage??判定路徑覆蓋

79 Peer?review???????????????????????同行評(píng)審

80 Walkthrough??????????????????????走讀

81 Defect????????????????????????????缺陷

82 Error?????????????????????????????錯(cuò)誤

83 Syntax?error???????????????????????語法錯(cuò)誤

84 Logical?error???????????????????????邏輯錯(cuò)誤

85 Fault?????????????????????????????故障

86 Failure????????????????????????????失效

補(bǔ)充中……

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

復(fù)習(xí)問題總結(jié)

一、測(cè)試基礎(chǔ):

1、?測(cè)試目的是什么

證明:證明軟件的可用性

檢測(cè):發(fā)現(xiàn)軟件中存在的錯(cuò)誤

預(yù)防:管理軟件的質(zhì)量,可維護(hù)性能

2、?軟件生命周期中的各個(gè)模型及其優(yōu)缺點(diǎn)

瀑布模型:應(yīng)用的最為廣泛的一種模型,也是最容易理解和掌握的模型,然而它的缺陷也是顯而易見的。

??優(yōu)點(diǎn):

–?強(qiáng)調(diào)開發(fā)的階段性

–?強(qiáng)調(diào)早期計(jì)劃及需求調(diào)查

–?強(qiáng)調(diào)產(chǎn)品測(cè)試

??缺點(diǎn):

–?依賴于早期進(jìn)行的需求調(diào)查,不能適應(yīng)需求變化

–?由于是單一流程,開發(fā)中的經(jīng)驗(yàn)教訓(xùn)不能應(yīng)用于本產(chǎn)品過程

–?測(cè)試在后期才參與,前期質(zhì)量無法保證

螺旋模型:綜合了基本的瀑布式模型和演化/漸增原型方法。

??優(yōu)點(diǎn):

–?強(qiáng)調(diào)全過程風(fēng)險(xiǎn)管理

–?強(qiáng)調(diào)各開發(fā)階段的質(zhì)量

–?提供機(jī)會(huì)檢討項(xiàng)目是否有價(jià)值繼續(xù)下去

??缺點(diǎn):

–?每個(gè)階段都要提出多個(gè)備選方案,并進(jìn)行充分的風(fēng)險(xiǎn)分析,研發(fā)周期長,效

??????????率低。

–?需要有專門的風(fēng)險(xiǎn)分析人員參與

RUP流程:所有工作流在各個(gè)階段都有體現(xiàn)。

??優(yōu)點(diǎn)

–?任何功能一經(jīng)開發(fā)就能進(jìn)入測(cè)試以便驗(yàn)證是否符合產(chǎn)品需求

–?在早期對(duì)風(fēng)險(xiǎn)進(jìn)行識(shí)別,采取預(yù)防措施

–?盡早得到用戶的驗(yàn)證

??缺點(diǎn):

–?如果需求一開始并不完全弄清楚,會(huì)給總體設(shè)計(jì)帶來困難及削弱產(chǎn)品設(shè)計(jì)的

???????????完整性。

–?如果缺乏嚴(yán)格的過程管理,就可能退化為原始的無計(jì)劃的“試—錯(cuò)—改”模

??????????????試。

–?不加控制地讓用戶接觸開發(fā)并尚未測(cè)試穩(wěn)定的功能,可能對(duì)開發(fā)和用戶都會(huì)

???????????產(chǎn)生負(fù)面的影響

IPD流程:從整個(gè)產(chǎn)品角度出發(fā),不僅僅針對(duì)研發(fā)。

–?流程是由IBM提出來的一套集成產(chǎn)品開發(fā)流程,非常適合于復(fù)雜的大型開發(fā)項(xiàng)目。從整個(gè)產(chǎn)品角度出發(fā),流程綜合考慮了從系統(tǒng)工程、研發(fā)(硬件、軟件、結(jié)構(gòu)工業(yè)設(shè)計(jì)、測(cè)試、資料開發(fā)等,制造、財(cái)務(wù)到市場(chǎng)、采購、技術(shù)支援等所有流程。是一個(gè)階段性模型,具有瀑布模型的影子。

–? 通過復(fù)雜的流程把一個(gè)龐大而又復(fù)雜的系統(tǒng)進(jìn)行分解并降低風(fēng)險(xiǎn)。通過流程成本來提高整個(gè)產(chǎn)品的質(zhì)量并獲得市場(chǎng)的占有。此模式不適合經(jīng)常變動(dòng)的需求,若用此模式開發(fā)小型項(xiàng)目,成本消耗非常大。

?

3、?軟件研發(fā)中幾個(gè)重要的過程是什么,每個(gè)過程中的主要內(nèi)容是什么?

需求管理:對(duì)軟件開發(fā)中的需求進(jìn)行管理,包括需求分配、需求評(píng)審、建立需求基線、需求跟蹤、變更控制。

配置管理:配置管理是通過對(duì)在軟件生命周期的不同的時(shí)間點(diǎn)上的軟件配置進(jìn)行標(biāo)識(shí),并對(duì)這些被標(biāo)識(shí)的軟件配置項(xiàng)的更改進(jìn)行系統(tǒng)控制,從而達(dá)到保證軟件產(chǎn)品的完整性和可溯性的過程。?

缺陷跟蹤:對(duì)軟件開發(fā)過程缺陷的發(fā)現(xiàn)、確認(rèn)、定位、修改、評(píng)審、關(guān)閉等過程進(jìn)行跟蹤管理的流程。

同行評(píng)審:對(duì)于軟件工作產(chǎn)品(包括文檔、代碼、用戶手冊(cè)等),組織工作產(chǎn)品作者的同行來確認(rèn)是否存在缺陷、是否需要變更的檢查方法。

4、?引入缺陷的原因都有哪些?

缺陷引入的原因?:?

⑴開發(fā)過程缺乏有效的溝通,或者沒有進(jìn)行溝通

⑵?軟件復(fù)雜度越來越高

⑶?編程中產(chǎn)生錯(cuò)誤

⑷?需求不斷變更

⑸?項(xiàng)目進(jìn)度的壓力

⑹?不重視開發(fā)文檔

⑺?軟件開發(fā)工具本身隱藏的問題

?

二、軟件質(zhì)量:

1、軟件質(zhì)量分哪幾個(gè)層次,分別是什么?

1.?符合需求的規(guī)格:符合開發(fā)者明確定義的目標(biāo),即產(chǎn)品是不是符合需求規(guī)格。

2.?符合用戶顯示需求:符合用戶所明確說明的目標(biāo)。

3.?符合用戶實(shí)際需求:符合用戶明確說明的和隱含的目標(biāo)。

2、影響軟件質(zhì)量的因素有哪些?為什么?

影響軟件質(zhì)量因素主要有:

流程:針對(duì)不同的需求選用不同的軟件流程模型圖。

技術(shù):包括開發(fā)技術(shù)、測(cè)試技術(shù)以及美工工藝的技術(shù)。

組織:一組特性及特性之間的關(guān)系,它提供規(guī)定質(zhì)量需求和評(píng)價(jià)質(zhì)量的基礎(chǔ)。

?

ü?流程:從計(jì)劃到策略的實(shí)現(xiàn),流程就是按照這種思維方式指導(dǎo)軟件開發(fā)的,并且流程來源于成功的經(jīng)驗(yàn),可以指導(dǎo)項(xiàng)目少走彎路,從而提高軟件質(zhì)量,不僅如此,流程還對(duì)項(xiàng)目的成本和進(jìn)度控制有很大的幫助

ü?技術(shù):包括了分析技術(shù)、設(shè)計(jì)技術(shù)、編碼技術(shù)、測(cè)試技術(shù),需求是項(xiàng)目的靈魂,良好的需求分析便是項(xiàng)目成功的關(guān)鍵所在,若是需求分析做不好不可避免的要出現(xiàn)返工;設(shè)計(jì),軟件的質(zhì)量是設(shè)計(jì)出來的,良好的設(shè)計(jì)基本上決定了軟件產(chǎn)品的最終質(zhì)量;編碼技術(shù)產(chǎn)生正確高效的代碼;測(cè)試是保證軟件的一道防線。所以各種技術(shù)對(duì)質(zhì)量來說都是很重要的

ü?組織:好的組織可以有效的促進(jìn)流程的實(shí)施,同時(shí)提供員工的發(fā)展通道以吸引更多的人(技術(shù)的載體)

總結(jié):質(zhì)量鐵三角互相促進(jìn),缺一不可

3CMM是什么?CMM各級(jí)的特點(diǎn)

CMM(capabillty?Maturity?Moelel)

由于美國軟件工程研究所(SEI)受美國國防部委托立項(xiàng)。

開發(fā)人:Watts?Humphrey.

1991年推出CMM1.0版,1993年提出CMM1.1

現(xiàn)在開發(fā)CMMICMM?Integration

軟件能力成熟度模型CMM(提唱過程決定質(zhì)量)

?

?

?

?

????????????????????????????????????????

????????????????????????????????????????持續(xù)改進(jìn)過程

?

?

?

?????????????????????????可預(yù)測(cè)的過程????????????????????????????????管理變更

?

?

?

?????????標(biāo)準(zhǔn).一致的過程?????????????????????????????????????產(chǎn)品過程質(zhì)量

?

?

?

??紀(jì)律的過程????????????????????????????????集成工程過程

?

?

?

???????????????????????????????項(xiàng)目管理

CMM1級(jí)

特點(diǎn):(個(gè)人英雄主義)

A項(xiàng)目的成功依賴于一個(gè)非常優(yōu)秀的項(xiàng)目經(jīng)理的團(tuán)隊(duì)。

B無法重復(fù)以往成功的實(shí)踐。

C缺乏基本配置管理

可視度:

整個(gè)過程不可預(yù)測(cè),不可見,不可控。(過程管理非常混亂)

?

CMM2級(jí)

特點(diǎn):(有紀(jì)律)

能夠重復(fù)以前成功的經(jīng)驗(yàn)和實(shí)踐。

引入合理需求變更(需求管理)

測(cè)試與開發(fā)分離,整個(gè)過程能力可概為有紀(jì)律的。

可視度

原始需求——需求分析——設(shè)計(jì)——編碼——測(cè)試——產(chǎn)品

?

CMM3級(jí)

特點(diǎn):(有過程,經(jīng)過同行評(píng)審)

組織中有一個(gè)專門負(fù)責(zé)組織的標(biāo)準(zhǔn)軟件過程。(SEPG

可視度

CMM2但整個(gè)過程是標(biāo)準(zhǔn)和一致的。

?

CMM4級(jí)特點(diǎn)

特點(diǎn):(量化管理)

過程能力是可預(yù)防的,因?yàn)檫^程是已測(cè)量的并在可測(cè)的范圍內(nèi)運(yùn)行。組織能定量地預(yù)測(cè)過程和產(chǎn)品質(zhì)量方面趨勢(shì)。軟件產(chǎn)品具有可預(yù)測(cè)的高質(zhì)量。

可視度

CMM3但整個(gè)過程是可預(yù)測(cè)的。

?

CMM5級(jí)特點(diǎn)

特點(diǎn):(改進(jìn)過程本身)

通過缺陷來發(fā)現(xiàn)過程的不足。

新的開發(fā)技術(shù)觸使改進(jìn)過程。

可視度

CMM¥級(jí)整個(gè)是以改進(jìn)的。

?

CMM的用途:

1?評(píng)估供用商的能力;

2企業(yè)的過程改進(jìn)指南;

3評(píng)估組用來識(shí)別組織中的強(qiáng)處和弱點(diǎn);

4管理者用來了解其組織的能力,并了解為了提高其能力成熟度而進(jìn)行軟件過程改進(jìn)所需要進(jìn)行的活動(dòng);

5?評(píng)價(jià)組用來識(shí)別選擇不同的業(yè)務(wù)承包商的風(fēng)險(xiǎn)和監(jiān)督合同。

?

4、軟件質(zhì)量模型是什么?

軟件質(zhì)量模型可分為6大模塊27子模塊

ü?功能性

1.?適合性

2.?準(zhǔn)確性

3.?互操作性

4.?保密安全性

5.?功能性的依從性

ü?可靠性

6.?成熟性

7.?容錯(cuò)性

8.?易恢復(fù)性

9.?可靠性的依從性

ü?易用性

1.?易理解性

2.?易學(xué)性

3.?易操作性

4.?吸引性

5.?易用性的依從性

ü?效率

1.?時(shí)間性

2.?資源利用性

3.?效率依從性

ü?維護(hù)性

10.?易分析性

11.?易改變性

12.?穩(wěn)定性

13.?易測(cè)試性

14.?維護(hù)性的依從性

ü?可移植性

15.?適應(yīng)性

16.?易安裝性

17.?共存性

18.?易替換性

19.?可移植性的依從性

5SQA和測(cè)試的關(guān)系是什么?

SQA從過程上保證軟件質(zhì)量?測(cè)試從技術(shù)上保證軟件質(zhì)量。

6SQA的主要工作范圍是什么?

1.?保障制度體系順利執(zhí)行。

2.?促進(jìn)過程改進(jìn)。

3.?指導(dǎo)項(xiàng)目實(shí)施。

4.?增強(qiáng)項(xiàng)目的可視度(進(jìn)度、質(zhì)量、過程)。

5.?評(píng)審工作產(chǎn)品。

6.?審核工作產(chǎn)品。(核心工作)。

7.?協(xié)助問題解決。

8.?提供決策支持。

9.?缺陷預(yù)防(提高產(chǎn)品質(zhì)量,降低缺陷發(fā)現(xiàn)修復(fù)成本)。

10.?實(shí)現(xiàn)質(zhì)量目標(biāo)

7、質(zhì)量管理的PDCA循環(huán)是什么?

1.?Plan 計(jì)劃 (計(jì)劃設(shè)計(jì))

2.?Do? 執(zhí)行 (實(shí)施執(zhí)行)

3.?Check? 檢查 (檢查檢測(cè))

4.?Act? 改進(jìn) (糾正措施)

8、軟件度量的手段是什么?

1.?規(guī)模(size

2.?工作量(effort)

3.?進(jìn)度(schedule)

4.?質(zhì)量-缺陷(quality-defect)

?

三、測(cè)試方法:

1、黑盒測(cè)試和白盒測(cè)試的區(qū)別?

黑盒:被測(cè)對(duì)象當(dāng)作一個(gè)黑盒子,參考與SRS,站在用戶立場(chǎng)上進(jìn)行測(cè)試,方便與功能測(cè)試、驗(yàn)收測(cè)試、易用性測(cè)試等。

白盒:玻璃盒,基與代碼測(cè)試,參考與LLDHLD在了解程序的內(nèi)部數(shù)據(jù)結(jié)構(gòu)和邏輯結(jié)構(gòu)的基礎(chǔ)上展開的更適合于單元測(cè)試、集成測(cè)試等。

2、常用的黑盒測(cè)試技術(shù)有哪些?

ü?輸入輸出:等甲類?邊界之?輸入域覆蓋?輸出域覆蓋

ü?條件組合:因果圖?正交試驗(yàn)?判定法

ü?過程處理:?流程分析?狀態(tài)遷移

ü?其他:?錯(cuò)誤猜測(cè)?異常分析

3、常用的白盒測(cè)試技術(shù)有哪些?

ü?靜態(tài)分析:信息流分析、數(shù)據(jù)流分析、控制流分析。

ü?動(dòng)態(tài)分析:邏輯覆蓋、程序插裝。

4、靜態(tài)測(cè)試和動(dòng)態(tài)測(cè)試的區(qū)別

靜態(tài)和動(dòng)態(tài)測(cè)試的區(qū)別是:是否運(yùn)行被測(cè)軟件。

5、靜態(tài)測(cè)試的方法有哪些??上題

6、動(dòng)態(tài)測(cè)試的方法有哪些??上題

7、手工測(cè)試和自動(dòng)化測(cè)試的區(qū)別?

手工測(cè)試:測(cè)試活動(dòng)以及執(zhí)行由人工來完成。

自動(dòng)化測(cè)試:通過工具模擬人的測(cè)試執(zhí)行,由計(jì)算機(jī)自動(dòng)執(zhí)行。

8、手工測(cè)試和自動(dòng)化測(cè)試的優(yōu)缺點(diǎn)是什么?

手工測(cè)試:

自動(dòng)化測(cè)試:

四:測(cè)試過程:

1、?系統(tǒng)測(cè)試、集成測(cè)試和單元測(cè)試的區(qū)別?

用三種不同角度比較如下表:

階段

考察范圍

測(cè)試方法

評(píng)估基準(zhǔn)

系統(tǒng)測(cè)試

整個(gè)系統(tǒng)相對(duì)與需求的符合度

黑盒

測(cè)試用例對(duì)需求規(guī)格的覆蓋率

集成測(cè)試

模塊間的接口和接口的數(shù)據(jù)傳遞關(guān)系,以及模塊組合后的整體功能

灰盒

接口覆蓋率

單元測(cè)試

測(cè)試單元內(nèi)部數(shù)據(jù)結(jié)構(gòu)、邏輯控制、異常處理等

白盒

邏輯覆蓋率

?

2、?為什么測(cè)試要分階段進(jìn)行

雖然在表面看來分階段測(cè)試在成本和進(jìn)度比不分階段測(cè)試大,但實(shí)際測(cè)試分階段進(jìn)行原因是各個(gè)階段都有它不同的關(guān)注點(diǎn),這樣可以盡早發(fā)現(xiàn)缺陷,不會(huì)導(dǎo)致因?yàn)榫植咳毕輰?dǎo)致全局癱瘓。如果不分階段,那么缺陷的放大效應(yīng)導(dǎo)致修復(fù)成本將變的異常龐大,修復(fù)進(jìn)度將不可預(yù)測(cè)。除此之外分階段測(cè)試因?yàn)榉止っ鞔_也會(huì)很大程度上提高產(chǎn)品的質(zhì)量。

3、?回歸測(cè)試的策略如何選擇?

回歸測(cè)試的策略主要有:完全重復(fù)測(cè)試?和選擇性重復(fù)測(cè)試。

完全重復(fù)測(cè)試:重新執(zhí)行所有在前期測(cè)試階段建立的測(cè)試用例

選擇重復(fù)測(cè)試:?即有選擇地重新執(zhí)行部分在前期測(cè)試階段建立的測(cè)試用例,主要測(cè)被修改的程序。

選擇重復(fù)測(cè)試可分為:覆蓋修改法、周遍影響法、指標(biāo)達(dá)成法。

根據(jù)產(chǎn)品進(jìn)度、缺陷的嚴(yán)重性以及缺陷發(fā)現(xiàn)的階段性進(jìn)行選擇。

4、?回歸測(cè)試的自動(dòng)化什么情況下使用?

a)?重復(fù)率高。

b)?相對(duì)穩(wěn)定的版本。

c)?手工無法達(dá)到的場(chǎng)景模擬。

5、?V&V模型的特點(diǎn)是什么?與瀑布模型和H模型相比有什么優(yōu)勢(shì)

a)?實(shí)現(xiàn)了測(cè)試設(shè)計(jì)與執(zhí)行的分離。

b)?測(cè)試與開發(fā)同步進(jìn)行,各階段相對(duì)應(yīng)。

c)?揭示了測(cè)試過程分階段分層的本質(zhì)

瀑布模型沒有實(shí)現(xiàn)測(cè)試的分階段和分層,而H模型雖然是開發(fā)測(cè)試同步進(jìn)行卻沒有標(biāo)明測(cè)試與開發(fā)各個(gè)階段的對(duì)應(yīng)關(guān)系

6、?主要的測(cè)試文檔有哪些,分別都是什么內(nèi)容,作用和讀者都是什么?

?

作者

內(nèi)容

讀者

作用

測(cè)試計(jì)劃

測(cè)試經(jīng)理

測(cè)試計(jì)劃人員

測(cè)試策略

測(cè)試方法

測(cè)試項(xiàng)

時(shí)間、進(jìn)度安排

項(xiàng)目經(jīng)理

了解測(cè)試安排,掌控項(xiàng)目進(jìn)度

開發(fā)人員

評(píng)審

測(cè)試人員

評(píng)審、設(shè)計(jì)測(cè)試方案及用例的依據(jù)、執(zhí)行時(shí)參考

SQA

度量

測(cè)試方案

測(cè)試經(jīng)理

測(cè)試工程師

測(cè)試設(shè)計(jì)人員

測(cè)試子項(xiàng)

具體測(cè)試方法

測(cè)試經(jīng)理

評(píng)審

開發(fā)人員

評(píng)審

測(cè)試人員

評(píng)審、設(shè)計(jì)用例的依據(jù)、執(zhí)行時(shí)參考

SQA

度量

測(cè)試用例

測(cè)試工程師

測(cè)試實(shí)現(xiàn)人員

編號(hào)、標(biāo)題、輸入、處理過程、預(yù)期輸出等

測(cè)試經(jīng)理

評(píng)審

開發(fā)人員

評(píng)審

測(cè)試人員

測(cè)試執(zhí)行的依據(jù)

SQA

度量

測(cè)試規(guī)程

測(cè)試工程師

測(cè)試實(shí)現(xiàn)人員

測(cè)試用例的執(zhí)行先后順序

測(cè)試執(zhí)行人員

提高測(cè)試執(zhí)行的效率

測(cè)試報(bào)告

測(cè)試工程師

測(cè)試執(zhí)行人員

測(cè)試執(zhí)行情況記錄

測(cè)試經(jīng)理

了解測(cè)試結(jié)果

項(xiàng)目經(jīng)理

掌握軟件的質(zhì)量水平

缺陷報(bào)告

測(cè)試工程師

測(cè)試執(zhí)行人員

?

開發(fā)人員

確認(rèn)缺陷、修改的依據(jù)

測(cè)試經(jīng)理

判斷是否重復(fù)

項(xiàng)目經(jīng)理

分配缺陷

?

7、?系統(tǒng)測(cè)試過程各階段的輸入、輸出是什么?

系統(tǒng)測(cè)試計(jì)劃階段輸入:軟件需求規(guī)格說明書、軟件測(cè)試計(jì)劃、軟件開發(fā)計(jì)劃

????????????????輸出:系統(tǒng)測(cè)試計(jì)劃

系統(tǒng)測(cè)試設(shè)計(jì)階段輸入:軟件需求規(guī)格說明書、系統(tǒng)測(cè)試計(jì)劃

????????????????輸出:系統(tǒng)測(cè)試方案

系統(tǒng)測(cè)試實(shí)現(xiàn)階段輸入:軟件需求規(guī)格說明書、系統(tǒng)測(cè)試計(jì)劃、系統(tǒng)測(cè)試方案

????????????????輸出:系統(tǒng)測(cè)試用例、系統(tǒng)測(cè)試規(guī)程

系統(tǒng)測(cè)試執(zhí)行階段輸入:系統(tǒng)測(cè)試計(jì)劃、系統(tǒng)測(cè)試方案、系統(tǒng)測(cè)試用例、系統(tǒng)測(cè)試規(guī)程

????????????????輸出:系統(tǒng)測(cè)試報(bào)告、缺陷報(bào)告單

?

8、?集成測(cè)試過程各階段的輸入、輸出是什么?

集成測(cè)試計(jì)劃階段輸入:概要設(shè)計(jì)說明書、軟件測(cè)試計(jì)劃

????????????????輸出:集成測(cè)試計(jì)劃

集成測(cè)試設(shè)計(jì)階段輸入:概要設(shè)計(jì)說明書、集成測(cè)試計(jì)劃

????????????????輸出:集成測(cè)試方案

集成測(cè)試實(shí)現(xiàn)階段輸入:概要設(shè)計(jì)說明書、集成測(cè)試計(jì)劃、集成測(cè)試方案

????????????????輸出:集成測(cè)試用例、集成測(cè)試規(guī)程

集成測(cè)試執(zhí)行階段輸入:集成測(cè)試計(jì)劃、集成測(cè)試方案、集成測(cè)試用例、集成測(cè)試規(guī)程

????????????????輸出:集成測(cè)試報(bào)告、缺陷報(bào)告單

?

9、?單元測(cè)試過程各階段的輸入、輸出是什么?

單元測(cè)試計(jì)劃階段輸入:詳細(xì)設(shè)計(jì)說明書、軟件測(cè)試計(jì)劃

????????????????輸出:單元測(cè)試計(jì)劃

單元測(cè)試設(shè)計(jì)階段輸入:詳細(xì)設(shè)計(jì)說明書、單元測(cè)試計(jì)劃

????????????????輸出:單元測(cè)試方案

單元測(cè)試實(shí)現(xiàn)階段輸入:詳細(xì)設(shè)計(jì)說明書、單元測(cè)試計(jì)劃、單元測(cè)試方案

????????????????輸出:單元測(cè)試用例、單元測(cè)試規(guī)程

單元測(cè)試執(zhí)行階段輸入:單元測(cè)試計(jì)劃、單元測(cè)試方案、單元測(cè)試用例、單元測(cè)試規(guī)程

????????????????輸出:單元測(cè)試報(bào)告、缺陷報(bào)告單

?

10、需求分析階段主要的任務(wù)是什么?

把用戶的需求,包括顯式需求和隱式需求轉(zhuǎn)換為規(guī)格化的描述確切的說明文檔,形成SRS

11、概要設(shè)計(jì)階段主要的任務(wù)是什么?

SRS中的需求轉(zhuǎn)化為模塊化的體系結(jié)構(gòu),每個(gè)模塊具有明確的功能

12、詳細(xì)設(shè)計(jì)階段主要的任務(wù)是什么?

對(duì)每個(gè)模塊要完成的功能的實(shí)現(xiàn)給出具體的描述

13、編碼階段主要的任務(wù)是什么?

將設(shè)計(jì)轉(zhuǎn)換成程序代碼

14、單元測(cè)試執(zhí)行階段階段主要的任務(wù)是什么?

檢驗(yàn)被測(cè)單元與LLD的符合程度

15、集成測(cè)試執(zhí)行階段主要的任務(wù)是什么?

檢驗(yàn)被測(cè)單元與HLD的符合程度

16、系統(tǒng)測(cè)試執(zhí)行階段主要的任務(wù)是什么?

檢驗(yàn)被測(cè)單元與SRS的符合程度

五、系統(tǒng)測(cè)試:

1、系統(tǒng)測(cè)試的目的是什么?

2、系統(tǒng)測(cè)試的類型有哪些?

1)?功能測(cè)試

2)?性能測(cè)試

3)?壓力測(cè)試

4)?容量測(cè)試

5)?安全性測(cè)試

6)?可用性測(cè)試

7)?GUI測(cè)試

8)?安裝測(cè)試

9)?配置測(cè)試

10)?異常測(cè)試

11)?備份測(cè)試

12)?健壯性測(cè)試

13)?穩(wěn)定性測(cè)試

14)?文檔測(cè)試

15)?在線幫助測(cè)試

16)?網(wǎng)絡(luò)測(cè)試

?

3、系統(tǒng)測(cè)試的用例設(shè)計(jì)思路是什么?

4、如何保證系統(tǒng)測(cè)試用例的完備性?

a)?附蓋SRS中功能來設(shè)計(jì)用例

b)?從質(zhì)量模型的不同特性來設(shè)計(jì)用例

c)?每個(gè)測(cè)試項(xiàng)目從不同的角度來設(shè)計(jì)測(cè)試數(shù)據(jù)

六、通用測(cè)試用例

1、測(cè)試用例模板的要素分別是什么?

a)?用例編號(hào)

b)?測(cè)試項(xiàng)目

c)?測(cè)試標(biāo)題

d)?重要級(jí)別

e)?預(yù)置條件

f)?輸入?yún)?shù)

g)?操作步驟

h)?預(yù)期輸出

?

七、同行評(píng)審

1、什么叫同行評(píng)審?

通過作者的同行來確認(rèn)產(chǎn)品的缺陷以及變更區(qū)域的檢查方法

2、同行評(píng)審的目的?

發(fā)現(xiàn)和排除產(chǎn)品中的缺陷和不足

3、同行評(píng)審的流程?

八、配置管理

1、什么叫配置管理?

對(duì)軟件生命周期的各個(gè)階段的成果物進(jìn)行版本控制

2、配置管理的相關(guān)術(shù)語是什么?

a)?配置

b)?配置項(xiàng)

c)?基線

d)?版本

3、配置管理的目標(biāo)?

a)?保證各個(gè)階段成果物的完整性

b)?保證成果物的可溯性

c)?保證成果物的一致性

d)?使成果物處于受控狀態(tài)

4、配置管理的流程?

九、需求管理

1、什么叫需求管理?

在項(xiàng)目的研發(fā)過程中對(duì)需求的跟蹤和控制等方面的流程

2、進(jìn)行需求管理的作用是什么?

3、如何控制需求的變更?

4、如何進(jìn)行需求跟蹤?

八、缺陷管理

1、什么叫缺陷管理?

2、缺陷管理的作用?

3、缺陷管理的流程?

4、如何可以保證缺陷報(bào)告的編寫質(zhì)量?

?


總結(jié)

以上是生活随笔為你收集整理的软件测试基础知识大全(新手入门必备)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。