互聯(lián)網(wǎng)信息化咨詢/技術(shù)開發(fā)/整合營銷
請(qǐng)通過以下方式免費(fèi)咨詢
提交
1,軟件開發(fā)過程模型
2,測(cè)試模型,
3,軟件測(cè)試分類
需求分析>設(shè)計(jì)>編碼>實(shí)現(xiàn)>測(cè)試>運(yùn)行>維護(hù)
特點(diǎn):
1,過程是線性的,從上而下,開發(fā)的各個(gè)階段比較清晰;
2,但單一流程不可逆,適合需求穩(wěn)定的大型項(xiàng)目。需要利用大量的文檔進(jìn)行溝通,
3,因?yàn)槭蔷€性的,所以返工的成本較大。測(cè)試人員切入的時(shí)間點(diǎn)比較晚,很多問題到項(xiàng)目的后期才能暴露
優(yōu)點(diǎn):1,開發(fā)的每個(gè)階段比較清晰
2, 強(qiáng)調(diào)早期的計(jì)劃及需求調(diào)查
3,適合需求穩(wěn)定的產(chǎn)品開發(fā)
缺點(diǎn):1,依賴于早期的需求調(diào)查,不適應(yīng)需求的變化
2,單一流程不可逆
3, 風(fēng)險(xiǎn)往往到后期才顯露,失去及早糾正的機(jī)會(huì)
4, 問題在項(xiàng)目后期才開始暴露
5, 前面未發(fā)現(xiàn)的錯(cuò)誤會(huì)傳遞并擴(kuò)散到后面階段,可能導(dǎo)致項(xiàng)目失敗
1,客戶介入較早,適合預(yù)先不能確定需求的小型項(xiàng)目。
2,靈活性較高。
3,在一定程序能會(huì)限制開發(fā)人員的創(chuàng)新
優(yōu)點(diǎn):1,克服瀑布模型的缺點(diǎn),更好地滿足用戶的需求并減少由于軟件需求不明確帶來的項(xiàng)目開發(fā)風(fēng)險(xiǎn)。適合預(yù)先不能確切定義需求的軟件系統(tǒng)的開發(fā)
缺點(diǎn):1,不適合大型系統(tǒng)的開發(fā)(適合開發(fā)小型的、靈活性高的系統(tǒng))。前提要有一個(gè)展示性的產(chǎn)品原型,因此在一定程度上可能會(huì)限制開發(fā)人員的創(chuàng)新。
1,加入了風(fēng)險(xiǎn)控制及評(píng)估。
2,需要有經(jīng)驗(yàn)的人員參與。
3,過多的迭代次數(shù)會(huì)增加開發(fā)成本,延遲交付時(shí)間
優(yōu)點(diǎn):?螺旋模型很大程度上是一種風(fēng)險(xiǎn)驅(qū)動(dòng)的方法體系,因?yàn)樵诿總€(gè)階段之前及經(jīng)常發(fā)生的循環(huán)之前,都必須首先進(jìn)行風(fēng)險(xiǎn)評(píng)估。
缺點(diǎn):?采用螺旋模型需要具有相當(dāng)豐富的風(fēng)險(xiǎn)評(píng)估經(jīng)驗(yàn)和專門知識(shí),在風(fēng)險(xiǎn)較大的項(xiàng)目開發(fā)中, 如果未能夠及時(shí)標(biāo)識(shí)風(fēng)險(xiǎn),勢(shì)必造成重大損失。過多的迭代次數(shù)會(huì)增加開發(fā)成本,延遲提交時(shí)間。
1,服務(wù)是否能正常訪問(模塊和模塊之間的連通性)
2,輸入?yún)?shù)的測(cè)試
3,返回?cái)?shù)據(jù)類型
4,返回的數(shù)據(jù)結(jié)果集
5,返回碼
測(cè)試模型如常見的:V模型、W模型、H模型
?V模型本身是軟件開發(fā)中瀑布模型的變種,它反映了測(cè)試活動(dòng)與分析和設(shè)計(jì)的關(guān)系。
1,包含了底層測(cè)試和高層測(cè)試
2,對(duì)于軟件開發(fā)有清晰的階段
3,每個(gè)階段工作很明確,因此便于控制開發(fā)過程
4,測(cè)試的介入點(diǎn)較晚,缺陷的修復(fù)成本較高
5,需求階段很難把用戶的需求完全明確下來,因此在需求發(fā)生變化時(shí),返工量工作大。
?需求分析
用戶需求、業(yè)務(wù)需求、需求規(guī)格說明書
?概要設(shè)計(jì)
系統(tǒng)架構(gòu)、模塊劃分、模塊與模塊之間的接口。
?詳細(xì)設(shè)計(jì)
模塊內(nèi)部實(shí)現(xiàn)的邏輯和方法。
?編碼
實(shí)現(xiàn)上面的設(shè)計(jì)。
?測(cè)試V模型即包含了底層測(cè)試又包含了高層測(cè)試;
?底層測(cè)試:檢驗(yàn)源代碼質(zhì)量的測(cè)試,如:單元測(cè)試;
?高層測(cè)試:檢驗(yàn)整個(gè)系統(tǒng)的需要,如:系統(tǒng)測(cè)試;
1,測(cè)試和開發(fā)同步進(jìn)行,測(cè)試切入時(shí)間點(diǎn)早,缺陷的修復(fù)成本較低2,測(cè)試對(duì)象不僅僅只是程序,包含開發(fā)過程中所產(chǎn)生的文檔,比如需求規(guī)格說明書,數(shù)據(jù)庫字典,HLD,LLD設(shè)計(jì)文檔等3,同樣是分階段工作,便于控制項(xiàng)目過程。4,如果過程中不產(chǎn)生問題,W模型也無法適用5,技術(shù)難度較高,需求和設(shè)計(jì)的測(cè)試要求很高,實(shí)踐起來困難
1?開發(fā)強(qiáng)調(diào)測(cè)試伴隨著整個(gè)軟件開發(fā)周期,而且測(cè)試的對(duì)象不僅僅是程序,需求和概要設(shè)計(jì)同樣要測(cè)試;
2?更早地接入測(cè)試,可以發(fā)現(xiàn)開發(fā)初期的缺陷,那么可以用更加低的成本進(jìn)行缺陷修復(fù)。
3?同樣是分階段的工作,便于控制項(xiàng)目過程。
1?依賴于軟件開發(fā)和軟件測(cè)試依然保持一前一后的線性關(guān)系,依然無法支持迭代、自發(fā)性和需求等變更調(diào)整;
2?對(duì)于當(dāng)前很多項(xiàng)目,在執(zhí)行的過程中根本不產(chǎn)生文檔,那么W模型基本無法適用;
3?使用起來技術(shù)復(fù)雜度很高,對(duì)于需求和設(shè)計(jì)的測(cè)試要求很高,實(shí)踐起來困難。
1,軟件測(cè)試完全獨(dú)立,貫穿于整個(gè)軟件生命周期2,軟件測(cè)試活動(dòng)可以盡早的準(zhǔn)備,盡早的執(zhí)行。3,軟件測(cè)試過程可以被迭代4,測(cè)試過程有風(fēng)險(xiǎn)識(shí)別。5,對(duì)管理崗位要求高,對(duì)測(cè)試人員技能要求較高。
?測(cè)試流程
?測(cè)試準(zhǔn)備:所有測(cè)試執(zhí)行活動(dòng)的準(zhǔn)備;判斷是否到測(cè)試就緒點(diǎn);
?測(cè)試就緒點(diǎn):測(cè)試準(zhǔn)入準(zhǔn)則,即是否可以開始執(zhí)行測(cè)試的條件;
?測(cè)試執(zhí)行:具體的執(zhí)行測(cè)試的程序。
?開發(fā)的H模型揭示了軟件測(cè)試除測(cè)試執(zhí)行外,還有很多工作;
?軟件測(cè)試完全獨(dú)立,貫穿整個(gè)生命周期,且與其他流程并發(fā)進(jìn)行;
?軟件測(cè)試活動(dòng)可以盡早準(zhǔn)備、盡早執(zhí)行,具有很強(qiáng)的靈活性;
?軟件測(cè)試可以根據(jù)被測(cè)物的不同而分層次、分階段、分次序的執(zhí)行,同時(shí)也是可以被迭代的。
?管理型要求高:由于模型很靈活,必須要定義清晰的規(guī)則和管理制度,否則測(cè)試過程將非常難以管理和控制;
?技能要求高:H模型要求能夠很好的定義每個(gè)迭代的規(guī)模,不能太大也不能太小;
?測(cè)試就緒點(diǎn)分析困難:測(cè)試很多時(shí)候,你并不知道測(cè)試準(zhǔn)備到什么時(shí)候是合適的,就緒點(diǎn)在哪里,就緒點(diǎn)的標(biāo)準(zhǔn)是什么,這就對(duì)后續(xù)的測(cè)試執(zhí)行的啟動(dòng)帶來很大困難;
?對(duì)于整個(gè)項(xiàng)目組的人員要求非常高:在很好的規(guī)范制度下,大家都能高效的工作,否則容易混亂。例如:你分了一個(gè)小的迭代,但是因?yàn)槿藛T技能不足,使得無法有效完成,那么整個(gè)項(xiàng)目就會(huì)受到很大的干擾。
?黑盒測(cè)試能發(fā)現(xiàn)以下幾類錯(cuò)誤:
?功能不對(duì)或功能遺漏。
?界面錯(cuò)誤。
?數(shù)據(jù)庫訪問或者處理錯(cuò)誤。
?性能問題。
黑盒測(cè)試的缺點(diǎn)
1,不能測(cè)試程序內(nèi)部特定部位;
2,如果程序未執(zhí)行的代碼無法發(fā)現(xiàn);
3,不可能做到窮舉測(cè)試
1,測(cè)試人員不需要了解實(shí)現(xiàn)得細(xì)節(jié),包括特定的編程語言(沒有編程經(jīng)驗(yàn)的人也可以設(shè)計(jì)測(cè)試用例);
2,測(cè)試人員和編程人員是相互獨(dú)立的(黑盒測(cè)試用例設(shè)計(jì)與程序如何實(shí)現(xiàn)無關(guān));
3,從用戶的角度進(jìn)行測(cè)試,很容易被接受和理解;
4,有助于暴露任何與規(guī)格不一致或者歧異的地方;
1,功能測(cè)試:是黑盒測(cè)試的一方面,它檢查實(shí)際軟件的功能是否符合用戶的需求。
2,性能測(cè)試:是軟件測(cè)試的高端領(lǐng)域
介于白盒測(cè)試與黑盒測(cè)試之間的一種測(cè)試
?靜態(tài)測(cè)試(static testing),指不實(shí)際運(yùn)行被測(cè)軟件,而只是靜態(tài)地檢查程序代碼、界面或文檔中可能存在的錯(cuò)誤過程。
?動(dòng)態(tài)測(cè)試(dynamic testing),是指實(shí)際運(yùn)行被測(cè)程序,輸入相應(yīng)的測(cè)試數(shù)據(jù),檢查實(shí)際輸出結(jié)果和預(yù)期結(jié)果是否相符的過程。
?α測(cè)試:是內(nèi)測(cè)版本,即現(xiàn)在所說的(CB 封測(cè)),此版本表示該軟件僅僅是一個(gè)初步完成品, 通常只在軟件開發(fā)者內(nèi)部交流, 也有很少一部分發(fā)布給專業(yè)測(cè)試人員。一般而言, 該版本軟件的bug 較多, 普通用戶最好不要安裝
?β測(cè)試:是公測(cè)版本,(OB)是對(duì)所有用戶開放的測(cè)試版本。該版本相對(duì)于α 版已有了很大的改進(jìn),消除了嚴(yán)重的錯(cuò)誤, 但還是存在著一些缺陷,需要經(jīng)過大規(guī)模的發(fā)布測(cè)試來進(jìn)一步消除。這一版本通常由軟件公司免費(fèi)發(fā)布, 用戶可從相關(guān)的站點(diǎn)下載。通過一些專業(yè)愛好者的測(cè)試, 將結(jié)果反饋給開發(fā)者, 開發(fā)者們?cè)龠M(jìn)行有針對(duì)性的修改。該版本也不適合一般用戶安裝。
?γ測(cè)試:指的是軟件版本正式發(fā)行的候選版。該版本已經(jīng)相當(dāng)成熟了, 與即將發(fā)行的正式版相差無幾, 成為正式發(fā)布的候選版本。
回歸測(cè)試1, 重點(diǎn)關(guān)注Bug的現(xiàn)象得已修復(fù)2, 關(guān)注與Bug相關(guān)的功能受影響的模塊,以免漏掉修改引入的問題。
單元測(cè)試又叫模塊測(cè)試集成測(cè)試又叫組裝測(cè)試系統(tǒng)測(cè)試又叫功能測(cè)試
集成測(cè)試的關(guān)注點(diǎn):
1,服務(wù)是否能正常訪問(模塊和模塊之間的聯(lián)通性)
2,輸入?yún)?shù)的測(cè)試
3,返回的數(shù)據(jù)類型
4,返回的數(shù)據(jù)結(jié)果集
5,返回碼
黑盒測(cè)試,又叫數(shù)據(jù)驅(qū)動(dòng)測(cè)試,只關(guān)心軟件數(shù)據(jù)的輸入和輸出,是一種窮舉數(shù)據(jù)的測(cè)試方法白盒測(cè)試,又叫邏輯驅(qū)動(dòng)測(cè)試,需要熟悉程序的源代碼和內(nèi)部結(jié)構(gòu),是一種窮舉路徑的測(cè)試方
1,功能不對(duì) 或遺漏2,界面錯(cuò)誤3,數(shù)據(jù)庫訪問或處理錯(cuò)誤4,性能問題
1,操作系統(tǒng)兼容性2,瀏覽器兼容性3,硬件兼容性4,數(shù)據(jù)兼容性
1,易安裝,易部署2,易理解3,易學(xué)習(xí),易上手4,易操作(交互適應(yīng)性,實(shí)用性,有效性)5,詳細(xì)的幫助信息測(cè)試
1,關(guān)注是否符合·標(biāo)準(zhǔn)和規(guī)范
2,直觀性(界面友好度,排版,布局)
3,一致性(快捷鍵,菜單,畫風(fēng)等風(fēng)格統(tǒng)一)
4,靈活性(狀態(tài)跳轉(zhuǎn),回退,終止,跳過,數(shù)據(jù)的輸入輸出)
5,舒適性(恰當(dāng),錯(cuò)誤處理,性能)
6,正確性(拼寫)
7,實(shí)用性
1,配置項(xiàng)是否開放
2,異種數(shù)據(jù)庫接口是否提供
3,文件格式的支持度
4,擴(kuò)充接口測(cè)試
5,組件式(模塊式開發(fā),比如自定義報(bào)表,自定義權(quán)限,自定義群組,自定義Job等等)
Job:系統(tǒng)特定的一個(gè)自定義或者自帶的任務(wù)。(比喻同步Job,歸檔JOB,清理job等)
1,功能不能或遺漏2,界面錯(cuò)誤3,數(shù)據(jù)庫訪問或處理錯(cuò)誤4,性能問題
1,對(duì)文檔進(jìn)行完整性檢查
2,對(duì)文檔進(jìn)行拼寫檢查
3,對(duì)文檔進(jìn)行易理解程序檢查
4,對(duì)文檔的圖例檢查是否和軟件配套
5,對(duì)文檔的操作步驟進(jìn)行逐步驗(yàn)證