? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?軟件的信息
軟件的概念
? ? ?是計(jì)算機(jī)系統(tǒng)中與硬件相互依存的另一部分,它是包括程序,數(shù)據(jù)以及相關(guān)文檔的完整集合难衰。
程序:
? ? ?按實(shí)現(xiàn)設(shè)計(jì)的功能和性能要求執(zhí)行的指令序列。
數(shù)據(jù):
? ? ?是程序能正常操縱信息的數(shù)據(jù)結(jié)構(gòu)。
文檔:
? ? ?與程序開(kāi)發(fā)卧晓,維護(hù)和使用有關(guān)的圖文材料。
3.1十大特性
形態(tài)特性:
? ? ? ?軟件是無(wú)形的赴捞、不可見(jiàn)得邏輯實(shí)體逼裆。度量常規(guī)產(chǎn)品的幾何尺寸、物理性質(zhì)和化學(xué)成分對(duì)它卻是毫無(wú)意義的赦政。
智能特性:
? ? ? ?軟件是復(fù)雜的智力產(chǎn)品胜宇,它的開(kāi)發(fā)凝聚了人們的大量腦力勞動(dòng),它本身也體現(xiàn)了只是知識(shí)實(shí)踐經(jīng)驗(yàn)和人類的智慧昼钻,具有一定的智能。它可以幫助我們解決復(fù)雜的計(jì)算封寞、分析然评、判斷和決策問(wèn)題。
開(kāi)發(fā)特性:
? ? ? ?盡管已經(jīng)有了一些工具(也是軟件)來(lái)輔助軟件開(kāi)發(fā)工作狈究,但到為止位置尚未實(shí)現(xiàn)自動(dòng)化碗淌。軟件開(kāi)發(fā)中仍然包含了相當(dāng)份量的個(gè)體勞動(dòng),使得這一大規(guī)模知識(shí)型工作充滿了個(gè)人行為和個(gè)人因素抖锥。
質(zhì)量特性:
? ? ? ? 軟件是由人編寫(xiě)的亿眠,由于其開(kāi)發(fā)特性存在,所以不存在完全沒(méi)有缺陷的軟件磅废。
生產(chǎn)特性:
? ? ? ?與硬件或傳統(tǒng)的制造業(yè)產(chǎn)品的生產(chǎn)完全不同纳像,軟件一旦設(shè)計(jì)開(kāi)發(fā)出來(lái),如果需要提供多個(gè)用戶拯勉,它的復(fù)制十分簡(jiǎn)單竟趾,其成本也極為有限憔购。
管理特性:
? ? ? 由于上面的特性存在,所以軟件過(guò)程中的管理顯得更為重要岔帽,相比傳統(tǒng)行業(yè)犀勒,也更為獨(dú)特钦购。
環(huán)境特性:
? ? ? ?軟件的開(kāi)發(fā)和運(yùn)行都離不開(kāi)相關(guān)的計(jì)算機(jī)系統(tǒng)環(huán)境,包括支持它的開(kāi)發(fā)和運(yùn)行的相關(guān)硬件和軟件。軟件對(duì)于計(jì)算機(jī)系統(tǒng)的環(huán)境有著不可擺脫的依賴性波丰。
維護(hù)特性:
? ? ? ?軟件投入使用以后需要進(jìn)行維護(hù),但這種維護(hù)與傳統(tǒng)產(chǎn)業(yè)產(chǎn)品的維護(hù)概念有著很大的差別纫骑,維護(hù)體現(xiàn)在升級(jí)、優(yōu)化煤墙、功能更新等方面。甚至可以全盤重構(gòu)脚作。
廢棄特性:
? ? ? ?與硬件不同魄梯,軟件并不是由于被“用壞”而被廢棄的。
應(yīng)用特性:
? ? ? ?軟件的應(yīng)用極為廣泛,如今它已滲入國(guó)民經(jīng)濟(jì)和國(guó)防的各個(gè)領(lǐng)域,現(xiàn)先已成為信息產(chǎn)業(yè)退客、先進(jìn)制造業(yè)和現(xiàn)代服務(wù)的核心,占據(jù)了無(wú)可取代的地位。
3.2軟件的分類:
系統(tǒng)軟件:
? ? ? ?負(fù)責(zé)管理計(jì)算機(jī)系統(tǒng)中各種獨(dú)立的硬件务傲,使得它們可以協(xié)調(diào)工作。
應(yīng)用軟件:
? ? ? ?為了某種特定的用途而被開(kāi)發(fā)的軟件挟伙。它可以是一個(gè)特定的程序烘豹,比如一個(gè)圖像瀏覽器祭芦。也可以是一組功能聯(lián)系緊密胃夏,可以相互協(xié)作的程序的集合。
3.3軟件的生命周期
基本概念:
? ? ? ?軟件的生命周期答恶,又稱為軟件的生存周期。它是按開(kāi)發(fā)軟件的規(guī)模和復(fù)雜程度,從時(shí)間上把軟件開(kāi)發(fā)的整個(gè)過(guò)程(從計(jì)劃開(kāi)發(fā)到軟件報(bào)廢為止的整個(gè)歷史階段)進(jìn)行分解周瞎,形成相對(duì)獨(dú)立的幾個(gè)階段苹享。
? ? ? ?每個(gè)階段有分解成幾個(gè)具體的任務(wù)囤攀,然后按規(guī)定順序一次完成個(gè)階段的任務(wù)并規(guī)定一套標(biāo)準(zhǔn)的文檔作為各個(gè)階段的開(kāi)發(fā)成果,最后生產(chǎn)出高質(zhì)量的軟件。
軟件的一生:
問(wèn)題定義:確定好要解決的問(wèn)題是什么(what)
可行性研究:確定該問(wèn)題是否存在一個(gè)可以解決的方案
需求分析:深入具體的了解用戶的需求
概要設(shè)計(jì):設(shè)計(jì)出實(shí)現(xiàn)目標(biāo)系統(tǒng)的幾種可能方案孤个,設(shè)計(jì)程序的體系結(jié)構(gòu)
詳細(xì)設(shè)計(jì):詳細(xì)的設(shè)計(jì)每個(gè)模塊斥废,確定實(shí)現(xiàn)模塊功能所需的算法和數(shù)據(jù)結(jié)構(gòu)
3.5軟件開(kāi)發(fā)模型
? ? ? ?由于項(xiàng)目、需求的模式不同,所以在軟件生命周期過(guò)程中選擇的軟件開(kāi)發(fā)模型也會(huì)有所不同,在歷史上,軟件開(kāi)發(fā)模型經(jīng)歷了“邊做邊改”、瀑布、原型、螺旋、敏捷等模式的變更。
瀑布模型:
計(jì)劃→需求分析→設(shè)計(jì)→編碼→測(cè)試→運(yùn)行維護(hù)
特點(diǎn):
1、軟件開(kāi)發(fā)的各項(xiàng)活動(dòng)嚴(yán)格按照線性方式進(jìn)行
2、當(dāng)前活動(dòng)接受上一項(xiàng)活動(dòng)的工作結(jié)果
3、當(dāng)前活動(dòng)的工作結(jié)果需要進(jìn)行驗(yàn)證
缺點(diǎn):
1、由于開(kāi)發(fā)模型是線性的,增加了開(kāi)發(fā)的風(fēng)險(xiǎn)
2、早起的錯(cuò)誤可能要等到開(kāi)發(fā)后期的階段才能發(fā)現(xiàn)
原型模式
? ? ? 客戶與開(kāi)發(fā)公司緊密聯(lián)系懂昂,開(kāi)發(fā)周期長(zhǎng)。開(kāi)發(fā)會(huì)受到需求變更的影響伐蒋。
特點(diǎn):
1型型、實(shí)現(xiàn)客戶與系統(tǒng)的交互
2绷落、進(jìn)一步細(xì)化待開(kāi)發(fā)軟件需求
3催式、開(kāi)發(fā)人員可以確定客戶的真正需求是什么
螺旋模型
? ? ? ?制定計(jì)劃→風(fēng)險(xiǎn)分析→實(shí)施工程(需求確定、軟件需求避归、軟件產(chǎn)品設(shè)計(jì)荣月、設(shè)計(jì)確認(rèn)與認(rèn)證、詳細(xì)設(shè)計(jì)梳毙、開(kāi)發(fā)哺窄、測(cè)試)→客戶評(píng)估。
特點(diǎn):
1账锹、螺旋模型是將瀑布模型與快速原型模型結(jié)合起來(lái)
2萌业、強(qiáng)調(diào)了其他模型所忽視的風(fēng)險(xiǎn)分析
3、每一次螺旋包括4個(gè)步驟:制定計(jì)劃奸柬、風(fēng)險(xiǎn)分析生年、實(shí)施工程、客戶評(píng)價(jià)
缺點(diǎn):
強(qiáng)調(diào)風(fēng)險(xiǎn)分析廓奕,但要求許多客戶接受并相信這種分析晶框,是不容易的
敏捷模型
敏捷開(kāi)發(fā)是一種以人為核心、迭代懂从、循序漸進(jìn)的開(kāi)發(fā)方法
特點(diǎn):
1授段、短周期開(kāi)發(fā)
2、增量開(kāi)發(fā)
3番甩、由程序員和測(cè)試人員編寫(xiě)的自動(dòng)化測(cè)試來(lái)監(jiān)控開(kāi)發(fā)進(jìn)度
4侵贵、通過(guò)口頭溝通、測(cè)試和源代碼來(lái)交流系統(tǒng)的結(jié)構(gòu)和意圖
5缘薛、編寫(xiě)代碼之前先寫(xiě)測(cè)試代碼窍育,也叫作測(cè)試先行
缺點(diǎn):
1、團(tuán)隊(duì)的組件較難宴胧,人員素質(zhì)要求較高
2漱抓、對(duì)測(cè)試員要求完全掌握各種腳本語(yǔ)言編程,能執(zhí)行單元測(cè)試恕齐、自動(dòng)化測(cè)試
3.6軟件開(kāi)發(fā)文檔
需求分析文檔乞娄、概要設(shè)計(jì)文檔、詳細(xì)設(shè)計(jì)文檔显歧、測(cè)試設(shè)計(jì)文檔仪或、測(cè)試用例、測(cè)試報(bào)告士骤。
3.7阿里系開(kāi)發(fā)模型的變遷史
3.8項(xiàng)目的一生--BAT測(cè)試猿媛
3.9軟件測(cè)試方法
軟件測(cè)試概念
經(jīng)典定義:
? ? ? ? 軟件測(cè)試(Software Testing),在規(guī)定的條件下對(duì)程序進(jìn)行操作范删,以發(fā)現(xiàn)程序錯(cuò)誤,衡量軟件質(zhì)量拷肌,并對(duì)其是否能滿足設(shè)計(jì)要求進(jìn)行評(píng)估的過(guò)程到旦。
標(biāo)準(zhǔn)定義:
? ? ? ?軟件測(cè)試是使用人工或自動(dòng)的手段來(lái)運(yùn)行或測(cè)定某個(gè)軟件系統(tǒng)的過(guò)程旨巷,其目的在于檢驗(yàn)它是否滿足規(guī)定的需求或弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差距。
軟件測(cè)試的目的:
? ? ? ?軟件測(cè)試目的在于發(fā)現(xiàn)問(wèn)題添忘,檢查系統(tǒng)是否滿足需求采呐。
軟件測(cè)試方法和分類
3.10生命周期各個(gè)測(cè)試方法的對(duì)比
3.11軟件測(cè)試常用術(shù)語(yǔ)
C/S:
? ? ? C指的是客戶端(Client),S指的是服務(wù)器端(Server),這種軟件是基于局域網(wǎng)或互聯(lián)網(wǎng)的昔汉,需要一臺(tái)服務(wù)器來(lái)安裝服務(wù)器端軟件,每臺(tái)客戶端都需要安裝客戶端軟件拴清。比如我們經(jīng)常用的QQ和各種網(wǎng)絡(luò)游戲就術(shù)語(yǔ)C/S結(jié)構(gòu)的軟件靶病。
B/S:
? ? ?B指的是瀏覽器(Browser),S指的是服務(wù)器(Server),這種軟件同樣是基于局域網(wǎng)或互聯(lián)網(wǎng)的口予,它與結(jié)C/S結(jié)構(gòu)軟件的區(qū)別就在于娄周,不需要安裝客戶端(client),只需要有瀏覽器,就可以直接使用沪停。比如搜狐煤辨、新浪等門戶網(wǎng)站及163郵箱都術(shù)語(yǔ)B/S結(jié)構(gòu)的,軟件B/S結(jié)構(gòu)軟件是現(xiàn)在軟件的主流木张,與C/S結(jié)構(gòu)軟件相比众辨,便于升級(jí)和維護(hù),是測(cè)試的重點(diǎn)舷礼。
缺陷【Bug/Defect】:
? ? ?軟件的Bug指的是軟件中(包括程序和文檔)不符合用戶需求的問(wèn)題鹃彻。
測(cè)試環(huán)境:
? ? ? ?軟件測(cè)試環(huán)境就是軟件運(yùn)行的平臺(tái),包括軟件妻献、硬件和網(wǎng)絡(luò)的集合蛛株。用一個(gè)等式來(lái)表示:測(cè)試環(huán)境=軟件+硬件+網(wǎng)絡(luò)。
測(cè)試用例【Test Case】:
在測(cè)試執(zhí)行之前設(shè)計(jì)的一套詳細(xì)的測(cè)試方案育拨,包括測(cè)試環(huán)境谨履、測(cè)試步驟、測(cè)試數(shù)據(jù)和預(yù)期結(jié)果熬丧。
用一個(gè)等式來(lái)簡(jiǎn)單表示:測(cè)試用例=輸入+輸出+測(cè)試環(huán)境
其中笋粟,“輸入”包括測(cè)試數(shù)據(jù)和操作步驟
? ? ? ? ? “輸出”指的是期望結(jié)果
? ? ? ? ?“測(cè)試環(huán)境”指的是系統(tǒng)環(huán)境設(shè)置
冒煙測(cè)試【Smoke Testing】
? ? ? ?在對(duì)一個(gè)新版本進(jìn)行系統(tǒng)大規(guī)模地測(cè)試之前,先驗(yàn)證一下軟件的基本功能是否實(shí)現(xiàn)析蝴,是否具備可測(cè)性矗钟。
α測(cè)試:
? ? ? ?驗(yàn)收測(cè)試的一種,指的是由用戶嫌变、測(cè)試人員吨艇、開(kāi)發(fā)人員等共同參與的內(nèi)部測(cè)試。
β測(cè)試:
? ? ? 驗(yàn)收測(cè)試的一種腾啥,指的是內(nèi)測(cè)后的公測(cè)东涡,即完全交給最終用戶測(cè)試冯吓。
3.12軟件測(cè)試常見(jiàn)模型
V模型
? ? ?V模型是我們熟知的瀑布模型的一種改進(jìn),瀑布模型將軟件生命周期劃分為計(jì)劃疮跑、分析组贺、設(shè)計(jì)、編碼祖娘、測(cè)試和維護(hù)六個(gè)階段失尖,由于早期的錯(cuò)誤可能要等到開(kāi)發(fā)后的測(cè)試階段才能發(fā)現(xiàn),所以可能帶來(lái)嚴(yán)重的后果渐苏。
? ? ? V模型就是在這點(diǎn)改進(jìn)了瀑布模型掀潮,在軟件開(kāi)發(fā)的生存期,開(kāi)發(fā)活動(dòng)和測(cè)試活動(dòng)幾乎同時(shí)開(kāi)始琼富,這兩個(gè)并行的動(dòng)態(tài)的過(guò)程就會(huì)極大的減少bug和error出現(xiàn)的幾率仪吧。
W模型:
? ? ? ?一些高性能高風(fēng)險(xiǎn)的系統(tǒng)、互聯(lián)網(wǎng)軟件鞠眉,或一個(gè)系統(tǒng)難以被具體模塊化的時(shí)候薯鼠,就比較難做成V模型所需的各種構(gòu)建,需要更強(qiáng)迭代的開(kāi)發(fā)模型或者敏捷開(kāi)發(fā)模型械蹋。
? ? ? ?W模型從V模型演化過(guò)來(lái)出皇,實(shí)際上開(kāi)發(fā)是V,測(cè)試是并行的V;相對(duì)于V模型哗戈,W模型增加了軟件個(gè)開(kāi)發(fā)階段中應(yīng)同步進(jìn)行的驗(yàn)證和確認(rèn)活動(dòng)恶迈,W明確表示出了測(cè)試與開(kāi)發(fā)的并行關(guān)系。測(cè)試與開(kāi)發(fā)是同步進(jìn)行的谱醇,有利于盡早的全面的發(fā)現(xiàn)問(wèn)題暇仲。
其他模型
H模型:
? ? ? ?真正的測(cè)試級(jí)別之間不存在嚴(yán)格的次序關(guān)系,各階段間可以反復(fù)觸發(fā)副渴、迭代奈附、增量。
? ? ? ?為了解決V模型和W模型存在的問(wèn)題煮剧,有專家提出了H模型斥滤。它將測(cè)試活動(dòng)完全獨(dú)立出來(lái),形成一個(gè)完全獨(dú)立的流程勉盅,將測(cè)試準(zhǔn)備活動(dòng)和測(cè)試執(zhí)行活動(dòng)清晰地體現(xiàn)出來(lái)佑颇。
X模型:
3.13軟件測(cè)試覆蓋率—測(cè)試完整性的度量
測(cè)試覆蓋率
定義:
? ? ? 覆蓋率是用來(lái)度量測(cè)試完整性的一個(gè)手段,同時(shí)也是測(cè)試技術(shù)有效性的一個(gè)度量草娜。
計(jì)算公式: 覆蓋率=(至少被執(zhí)行一次的item數(shù))/item的總數(shù)
特點(diǎn):
1挑胸、通過(guò)覆蓋率測(cè)試,可以檢測(cè)我們的測(cè)試是否充分
2宰闰、分析出測(cè)試的弱點(diǎn)在哪方面
3茬贵、指導(dǎo)我們?cè)O(shè)計(jì)能夠增加覆蓋率的測(cè)試用例簿透,有效提高測(cè)試質(zhì)量,但是測(cè)試用例設(shè)計(jì)不能一味追求覆蓋率解藻,因?yàn)闇y(cè)試成本隨覆蓋率的增加而增加老充。
? ? ? 測(cè)試覆蓋對(duì)于黑盒測(cè)試來(lái)說(shuō),主要是指兩個(gè)方面:①需求覆蓋②用例覆蓋螟左。
需求覆蓋
定義:
? ? ? 它表示在測(cè)試中啡浊,有哪些函數(shù)被測(cè)試到了,其被測(cè)試到的頻率有多大胶背,這些函數(shù)在系統(tǒng)所有函數(shù)中占的比例有多大通過(guò)設(shè)計(jì)一定的測(cè)試用例巷嚣,要求每個(gè)需求點(diǎn)都被測(cè)試到。
計(jì)算公式: 需求覆蓋=(被檢驗(yàn)到的需求數(shù)量)/(總的需求數(shù)量)
用例覆蓋
定義:
? ? ? ? 主要體現(xiàn)在我們每輪測(cè)試驗(yàn)證通過(guò)的用例數(shù)在總用例數(shù)中的比重奄妨。
計(jì)算公式:用例覆蓋=(驗(yàn)證通過(guò)的用例數(shù)量)/(總的用例總數(shù))
? ? ? ? ? ? ? ? ? ? ? ? ? ? 盡量保證覆蓋要高要全面
3.14測(cè)試覆蓋率的實(shí)際運(yùn)用—減少上線后的風(fēng)險(xiǎn)
測(cè)試覆蓋率的運(yùn)用
? ① 簡(jiǎn)單的測(cè)試覆蓋率:本次測(cè)試執(zhí)行的用例數(shù)/所有用例數(shù)
? ? ? 上述覆蓋率統(tǒng)計(jì)建立在認(rèn)為總用例數(shù)編寫(xiě)全面涂籽,一般對(duì)于大型系統(tǒng)測(cè)試要求覆蓋率100%苹祟。
? ? ? 覆蓋率的審核:抽樣驗(yàn)收
?② 基于產(chǎn)品的測(cè)試覆蓋率:已測(cè)試需求點(diǎn)/設(shè)計(jì)所有需求數(shù)
? ? ? 以產(chǎn)品砸抛、需求維護(hù)統(tǒng)計(jì),無(wú)論大型項(xiàng)目或是小需求迭代都要求覆蓋率達(dá)到100%树枫。
? ? ?覆蓋率的審核:抽樣驗(yàn)收
③基于白盒的測(cè)試覆蓋率:大多工具判斷語(yǔ)句覆蓋直焙,即單元測(cè)試代碼覆蓋代碼行/總代碼行? ? ?
? ? 更多考察研發(fā)人員;更多時(shí)候要求覆蓋率達(dá)到80%砂轻。
缺陷:
? ? ? ?覆蓋率數(shù)據(jù)只能代表測(cè)試過(guò)哪些代碼奔誓,不能代表是否測(cè)試好這些代碼;容易遺漏邏輯搔涝、判斷等場(chǎng)景厨喂。
④基于自動(dòng)化的測(cè)試覆蓋率:自動(dòng)化覆蓋的測(cè)試場(chǎng)景(測(cè)試用例)/所有測(cè)試場(chǎng)景(用例)
? ? ? ?80/20原則:比如用戶80%的時(shí)間在使用20%的功能,20%的功能就可以支撐起用戶最關(guān)鍵的業(yè)務(wù)場(chǎng)景庄呈,自動(dòng)化測(cè)試的用例選擇更著重于這20%的核心功能蜕煌。
用途:
? ? ? 自動(dòng)化測(cè)試更著重于回歸驗(yàn)證,沒(méi)必要追求過(guò)高的覆蓋率诬留,而要考慮用例設(shè)計(jì)斜纪。
測(cè)試覆蓋率的最終意義:
①應(yīng)用最多的地方在測(cè)試停止標(biāo)準(zhǔn)。
②單純討論測(cè)試覆蓋率文兑,在瀑布式開(kāi)發(fā)模型中并不重要盒刚,但在螺旋式、敏捷開(kāi)發(fā)模型中绿贞,由于不斷迭代累加因块,很難確定哪些模塊在考法過(guò)程中沒(méi)有給予足夠的測(cè)試。
③在短迭代籍铁、DevOps中贮聂,更強(qiáng)調(diào)用單元測(cè)試覆蓋率來(lái)評(píng)估不斷增加的代碼數(shù)量靠柑。
3.15測(cè)試團(tuán)隊(duì)的組織架構(gòu)—沒(méi)有完美的個(gè)人但有完美的團(tuán)隊(duì)
金字塔管理模式
矩陣化管理模式
3.16軟件測(cè)試原則—軟件測(cè)試人員必備
軟件測(cè)試人員需要的知識(shí)體系
軟件測(cè)試人員具備的素質(zhì)
軟件測(cè)試的原則
原則1:所有的測(cè)試都應(yīng)追溯到用戶需求
? ? ? ?“產(chǎn)品缺陷的80%以上是在產(chǎn)品開(kāi)發(fā)過(guò)程中的需求定義階段引入的,如果需求得到了準(zhǔn)確的驗(yàn)證吓懈,則可以消除80%的返工問(wèn)題歼冰,節(jié)省總項(xiàng)目投入費(fèi)用的45%”。
原則2:盡早啟動(dòng)測(cè)試工作
原則3:Pareto法則應(yīng)用于軟件測(cè)試
? ? ? ① Pareto(帕累托)法則是由意大利經(jīng)濟(jì)學(xué)家帕累托提出的耻警,又稱為28效率法則隔嫡。
? ? ? ?②測(cè)試中的Pareto法則是說(shuō)一般情況下,在分析甘穿、設(shè)計(jì)腮恩、實(shí)現(xiàn)夾斷的復(fù)審和測(cè)試工作能夠發(fā)現(xiàn)和避免80%的缺陷,而系統(tǒng)測(cè)試又能找出其余缺陷中的80%温兼,最后4%的缺陷可能只有在用戶的大范圍秸滴、長(zhǎng)時(shí)間使用才會(huì)曝露出來(lái)。
原則4:窮盡測(cè)試是不可能的
? ? ? ?由于很少有機(jī)會(huì)對(duì)一個(gè)應(yīng)用軟件進(jìn)行所以可能的測(cè)試募判,對(duì)大多數(shù)軟件開(kāi)發(fā)項(xiàng)目來(lái)說(shuō)荡含,利用風(fēng)險(xiǎn)分析是適當(dāng)?shù)摹_@需要判斷技能届垫、常識(shí)释液、感覺(jué)和經(jīng)驗(yàn)。如果有正當(dāng)理由装处,也可采用正式的方法误债。
原則5:殺蟲(chóng)劑怪事
? ? ? ① 軟件測(cè)試越多,其對(duì)測(cè)試的免疫力越強(qiáng)的現(xiàn)象妄迁。
? ? ? ?②為了克服殺蟲(chóng)劑怪事寝蹈,軟件測(cè)試員必須不斷編寫(xiě)不同的、新的測(cè)試程序登淘,對(duì)程序的不同部分進(jìn)行測(cè)試箫老,以找出更多軟件缺陷。
原則6:前進(jìn)兩步形帮,后退一步
? ? ?①測(cè)試中的一個(gè)基本問(wèn)題是—缺陷修復(fù)總是會(huì)以(20-50)%的記錄引入新的缺陷槽惫。
? ? ? ?②每次修復(fù)之后,必須重新運(yùn)行先前所有的測(cè)試用例辩撑,從而確保系統(tǒng)不會(huì)以隱蔽的方式被破壞界斜。
原則7:三心二意
①三心:細(xì)心、信心合冀、耐心各薇。
②二意:團(tuán)隊(duì)合作的溝通意識(shí)、時(shí)刻保持懷疑的態(tài)度且有缺陷防御意識(shí)。
3.17軟件測(cè)試規(guī)范—軟件工程標(biāo)準(zhǔn)
? ? ? 國(guó)內(nèi)通用的軟件工程標(biāo)準(zhǔn)主要有ISO9000及CMM峭判。
? ? ? ISO9000系列標(biāo)準(zhǔn)是ISO國(guó)際標(biāo)準(zhǔn)化組織TC/176技術(shù)委員會(huì)制定的所有國(guó)際標(biāo)準(zhǔn)开缎,其核心標(biāo)準(zhǔn)是質(zhì)量保證標(biāo)準(zhǔn)(ISO9001/2/3)和質(zhì)量管理標(biāo)準(zhǔn)(ISO9004)。
? ? ?CMM(Capability Maturity Model)即軟件能力成熟度模型林螃,是向軟件組織提供如何增加其開(kāi)發(fā)和維護(hù)軟件過(guò)程的控制能力奕删。
ISO9000:
ISO9000系列標(biāo)準(zhǔn)的基本思想,最主要的有兩條:
? ? ? ?①控制的思想疗认,即對(duì)產(chǎn)品形成的全過(guò)程—從采購(gòu)原材料完残、加工制造到最終產(chǎn)品的銷售、售后讀物進(jìn)行控制横漏。
? ? ? ?②預(yù)防的思想谨设,通過(guò)對(duì)產(chǎn)品形成的全過(guò)程進(jìn)行控制以及建立并有效運(yùn)行自我完善機(jī)制達(dá)到預(yù)防不合格,從根本上減少或消除不合格產(chǎn)品缎浇。
CMM:
? ? ? ?CMM準(zhǔn)確來(lái)說(shuō)不是標(biāo)準(zhǔn)扎拣,知識(shí)對(duì)過(guò)程能力的評(píng)估結(jié)果。
? ? ? ?CMM對(duì)軟件企業(yè)的評(píng)估從初始級(jí)開(kāi)始素跺,共分為5級(jí)二蓝,一級(jí)一級(jí)的改進(jìn),一級(jí)一級(jí)的向上提高亡笑。等級(jí)的上升過(guò)程是一個(gè)“動(dòng)態(tài)漸進(jìn)”的過(guò)程侣夷。
? ? ? ?CMM是轉(zhuǎn)為軟件開(kāi)發(fā)組織設(shè)計(jì)的横朋,側(cè)重于軟件開(kāi)發(fā)和改進(jìn)過(guò)程仑乌,在產(chǎn)品的設(shè)計(jì)和開(kāi)發(fā)的細(xì)節(jié)作了較多要求。
軟件測(cè)試規(guī)范
測(cè)試系統(tǒng)主要由下面6個(gè)相互關(guān)聯(lián)琴锭、相互作用的過(guò)程組成晰甚。
①測(cè)試規(guī)劃
②測(cè)試設(shè)計(jì)
③測(cè)試實(shí)施
④配置管理
⑤資源管理
⑥測(cè)試管理
軟件測(cè)試過(guò)程中一般會(huì)從以下幾個(gè)方面來(lái)入手規(guī)范過(guò)程,并在每個(gè)子過(guò)程明確角色决帖、職責(zé)厕九、活動(dòng)描述及所需資料。