軟件測試質(zhì)量
1.1什么是質(zhì)量
美國著名的質(zhì)量管理專家朱蘭(J.M.Juran)博士從顧客的角度出發(fā),提出了產(chǎn)品
質(zhì)量就是產(chǎn)品的適用性
質(zhì)量:反映實(shí)體滿足明確或隱含需要能力的特性總和。
1.2軟件質(zhì)量
軟件質(zhì)量就是:“軟件與明確的和隱含的定義的需求相一致的程度”
衡量軟件質(zhì)量的標(biāo)準(zhǔn):
上圖總結(jié):滿足客戶明確的需求,符合軟件開發(fā)的準(zhǔn)則,滿足隱含的需求
1.4軟件質(zhì)量考慮的要素
紅色的為測試按內(nèi)容分類有哪些?
1.4.1功能性
功能性
當(dāng)軟件在指定條件下使用時(shí),軟件產(chǎn)品提供滿足明確和隱含要求的功能的能力。
適合性
軟件產(chǎn)品符合需求,能解決用戶業(yè)務(wù)問題
準(zhǔn)確性
軟件產(chǎn)品數(shù)據(jù)和處理處理能力要準(zhǔn)確
互操作性
軟件產(chǎn)品與其他系統(tǒng)的交互和對接能力。
安全保密性
軟件產(chǎn)品權(quán)限安全,不同角色進(jìn)入擁有不同的操作權(quán)限
1.4.2性能
時(shí)間特性
軟件產(chǎn)品執(zhí)行其功能時(shí),提供滿足需求的響應(yīng)時(shí)間和處理時(shí)間以及吞吐率等指標(biāo)的能力。
資源利用性
軟件產(chǎn)品執(zhí)行其功能時(shí),提供滿足需求的CPU、內(nèi)存等占用率的能力
1.4.3安全性
軟件在受到惡意攻擊的情形下依然能夠繼續(xù)正確運(yùn)行的能力
軟件被在授權(quán)范圍內(nèi)合法使用的能力,如:序列號決定使用數(shù)。
軟件完整,避免被盜版、破解或植入病毒
1.4.4兼容性
軟件適應(yīng)不同的規(guī)定環(huán)境下的能力
軟件遵循與可移植性有關(guān)的標(biāo)準(zhǔn)或約定的能力
軟件與其他替代軟件兼容的能力
常見的兼容性(瀏覽器、操作系統(tǒng))
1.4.5可靠性
可靠性
在指定條件下使用時(shí),軟件產(chǎn)品維持規(guī)定的性能級別的能力。
成熟性
軟件產(chǎn)品為避免由軟件內(nèi)部的故障而導(dǎo)致失效的能力。
容錯(cuò)性
軟件出現(xiàn)故障或者違反其指定接口的情況下,依然維持規(guī)定的性能級別的能力。
易恢復(fù)性
失效發(fā)生后,重建規(guī)定的性能級別并恢復(fù)受直接影響的數(shù)據(jù)的能力。
1.4.6易用性
易用性
在指定條件下使用時(shí),軟件產(chǎn)品被理解、學(xué)習(xí)、使用和吸引用戶的能力。
易理解性
軟件產(chǎn)品讓用戶無須過多學(xué)習(xí)就能理解的能力。
易學(xué)性
軟件產(chǎn)品讓用戶即使參加了學(xué)習(xí),學(xué)習(xí)成本高低的能力。
易操作性
軟件產(chǎn)品讓用戶操作方便,符合使用習(xí)慣的能力。
吸引性
軟件產(chǎn)品讓用戶覺得舒服、操作吸引眼球的能力。
用戶體驗(yàn)性
是以上幾個(gè)特性的統(tǒng)稱,部分企業(yè)把易用性也稱之為用戶體驗(yàn)性,是一個(gè)比較時(shí)髦的詞。
1.4.7安裝卸載
執(zhí)行安裝/卸載時(shí),能按照一定的規(guī)格和流程將軟件安裝上的能力。
簡化的軟件安裝/卸載過程
提供親切友善的操作邏輯或接口
1.4.8可維護(hù)性
易分析性
軟件出問題后,快速判斷問題點(diǎn)并能快速修復(fù)的能力。
易改變性
軟件修改后可快速發(fā)布,快速投入生產(chǎn)的能力。
穩(wěn)定性
軟件避免由于軟件修改而造成意外結(jié)果的能力。
易測試性
軟件版本升級修改后被快速確認(rèn)的能力。
1.4.9可移植性
適應(yīng)性
軟件不需采用其他手段就可適應(yīng)不同的指定環(huán)境的能力。
易安裝性
軟件在指定環(huán)境中被快速安裝的能力。
共存性
軟件在同一環(huán)境下同與其他軟件共存的能力。
易替換性
軟件在同一環(huán)境下,替代另一個(gè)相同用途的軟件的能力。
1.5 什么是質(zhì)量保證
1.6QA與QC
QC和QA的主要區(qū)別:前者是保證產(chǎn)品質(zhì)量符合規(guī)定 , 后者是建立體系并確保體系按要求運(yùn)作,以提供內(nèi)外部的信任。
QC就是測試人員,職責(zé)是盡可能早地發(fā)現(xiàn)軟件的缺陷,并確保缺陷得到修復(fù)(有些企業(yè)里,測試人員被稱為SQA)。
QA是流程的監(jiān)督者,職責(zé)是創(chuàng)建和執(zhí)行 改進(jìn)軟件開發(fā)過程,并防止軟件缺陷發(fā)生的標(biāo)準(zhǔn)和方法。
軟件測試概念
2.1為什么要軟件測試?
提高軟件質(zhì)量
保證軟件安全
降低軟件開發(fā)成本
減低企業(yè)風(fēng)險(xiǎn)
提升用戶體驗(yàn)感
2.2軟件測試的概念
回答1:在規(guī)定的條件下對程序,進(jìn)行操作,以發(fā)現(xiàn)錯(cuò)誤,對軟件質(zhì)量進(jìn)行評估
2.3軟件測試的目的
發(fā)現(xiàn)Bug
提高質(zhì)量
降低成本
或者回答:發(fā)現(xiàn)bug,檢驗(yàn)用戶需求,提高體驗(yàn)
軟件測試原則
3.1軟件測試的原則
所有的軟件測試都應(yīng)追溯到用戶需求(用戶需求為核心)
應(yīng)當(dāng)把“盡早地和不斷地進(jìn)行軟件測試”作為軟件測試者的座右銘(盡早測試)
完全測試是不可能的,測試需要終止(完全測試是不可能的)
測試無法顯示軟件潛在的缺陷(潛在缺陷不容易被發(fā)現(xiàn))
充分注意測試中的群集現(xiàn)象(減少群集現(xiàn)象)
開發(fā)工程師應(yīng)避免測試自己的程序(開發(fā)避免自測)
盡量避免測試的隨意性(避免隨意性)
測試的抗藥性(重復(fù)的檢測容易產(chǎn)生抗藥性)
軟件測試對象
4.1軟件測試對象
軟件包括程序、數(shù)據(jù)、文檔,所以軟件測試應(yīng)該貫穿于整個(gè)軟件生命周期中。
在整個(gè)軟件生命周期中,各階段又有不同的測試對象,形成了不同開發(fā)階段的不同類型的測試。
軟件測試分類
5.1按階段劃分
單元測試,集成測試,確認(rèn)測試,系統(tǒng)測試,驗(yàn)收測試
單元測試:
又稱為,模塊測試,是針對程序的一種測試,測試單個(gè)模塊
集成測試:
也叫接口測試,就是多個(gè)單個(gè)的模塊進(jìn)行整合的測試
系統(tǒng)測試:
系統(tǒng)將已經(jīng)確認(rèn)的軟件、計(jì)算機(jī)硬件、外設(shè)、網(wǎng)絡(luò)等其他元素結(jié)合在一起,進(jìn)行信息系統(tǒng)的各種組裝測試和確認(rèn)測試.(軟件,硬件,外設(shè),網(wǎng)絡(luò)結(jié)合在一起的測試)
系統(tǒng)測試是針對整個(gè)產(chǎn)品系統(tǒng)進(jìn)行的測試,目的是驗(yàn)證系統(tǒng)是否滿足了需求規(guī)格的定義,找出與需求規(guī)格不符或與之矛盾的地方,從而提出更加完善的方案(對整個(gè)產(chǎn)品進(jìn)行測試,檢驗(yàn)是否滿足需求規(guī)定)
對象不僅僅包括需測試的軟件,還要包含軟件所依賴的硬件、外設(shè)甚至包括某些數(shù)據(jù)、某些支持軟件及其接口等測試
系統(tǒng)測試范圍:功能、性能、界面、強(qiáng)度、容量、安全性、配置、安裝、卸載、數(shù)據(jù)庫等
確認(rèn)測試:
驗(yàn)收測試:
Alpha: Alpha測試是在用戶組織模擬軟件系統(tǒng)的運(yùn)行環(huán)境下的一種驗(yàn)收測試,由用戶或第三方測試公司進(jìn)行的測試,模擬各類用戶行為對即將面市的軟件產(chǎn)品進(jìn)行測試,試圖發(fā)現(xiàn)并修改錯(cuò)誤。
Beta:Beta測試是用戶公司組織各方面的典型終端用戶在日常工作中實(shí)際使用beta版本,并要求用戶報(bào)告異常情況,提出批評意見。
5.2按是否運(yùn)行程序劃分
靜態(tài)測試:不運(yùn)行被測試的軟件,而只是靜態(tài)的檢查代碼、界面或者文檔
動(dòng)態(tài)測試:實(shí)際運(yùn)行被測試的軟件,輸入相應(yīng)的測試數(shù)據(jù),檢查實(shí)際的輸出結(jié)果是否和預(yù)期結(jié)果相一致的過程。
5.3按是否查看代碼劃分
1、黑盒測試
把軟件看成一個(gè)黑盒子,不管內(nèi)部邏輯和內(nèi)部特性,只依據(jù)規(guī)格說明書檢查程序的功能是否符合功能說明
2、白盒測試
又稱為結(jié)構(gòu)測試。著重于程序內(nèi)部結(jié)構(gòu)和算法,不關(guān)心功能和性能指標(biāo)。
3、灰盒測試
介于白盒和黑盒測試之間,基于程序運(yùn)行時(shí)刻的外部表現(xiàn)同時(shí)又結(jié)合程序內(nèi)部邏輯結(jié)構(gòu)來設(shè)計(jì)用例,執(zhí)行程序并采集程序路徑執(zhí)行信息和外部用戶接口結(jié)果的測試技術(shù)。
5.4其他劃分
回歸測試:
1.測試新建bug,開發(fā)修改后將狀態(tài)修改為“已修改”后通知測試進(jìn)行驗(yàn)證,此時(shí)測試人員所進(jìn)行的測試稱為回歸測試。
2.當(dāng)測試回歸后沒有問題,但所測試的功能和其他模塊或功能有一定的關(guān)系(如數(shù)據(jù)有交叉和公式計(jì)算等),這時(shí)測試人員要針對這個(gè)部分再次測試,保證不會(huì)因?yàn)樾薷牧诉@個(gè)bug而導(dǎo)致新bug的產(chǎn)生(開發(fā)在修改代碼或注釋時(shí)容易注釋錯(cuò)),此時(shí)測試人員所進(jìn)行的測試也稱為回歸測試
3.當(dāng)項(xiàng)目(或模塊和功能)快上線,測試經(jīng)理會(huì)通知測試人員再把所有功能測試一次,保證上線后不會(huì)出問題,此時(shí)測試人員所進(jìn)行的測試稱為回歸測試
冒煙測試:
發(fā)布一個(gè)版本時(shí),先對該版本進(jìn)行最基本功能的測試,用以確認(rèn)該版本基本功能正常后再開展進(jìn)一步的測試工作;如基本功能不通過,打回給開發(fā),直到冒煙通過
只有公司需要時(shí)才冒煙,并不是任何時(shí)候都冒煙,因?yàn)閷?shí)際工作中項(xiàng)目往往比較緊
部分公司是讓開發(fā)做冒煙,會(huì)給開發(fā)提供一個(gè)checklist
隨機(jī)測試(又名猴子測試)
隨機(jī)選擇測試數(shù)據(jù)做測試,主要根據(jù)經(jīng)驗(yàn)進(jìn)行功能和性能等抽查
敏捷測試(敏捷開發(fā)引發(fā))
敏捷最大特點(diǎn)是高度迭代,有周期性,并且能夠及時(shí)、持續(xù)地響應(yīng)客戶的頻繁反饋。簡單點(diǎn)理解:天下武功,為快不破。
TDD(測試驅(qū)動(dòng)開發(fā))
軟件測試風(fēng)險(xiǎn)
軟件測試風(fēng)險(xiǎn)
軟件測試中的軟件風(fēng)險(xiǎn)分析是根據(jù)預(yù)測軟件將出現(xiàn)的風(fēng)險(xiǎn),制定軟件測試計(jì)劃并排列優(yōu)先等級,風(fēng)險(xiǎn)分析是對軟件中潛在的問題進(jìn)行識別、估計(jì)和評價(jià)的過程。
風(fēng)險(xiǎn)也包括進(jìn)度風(fēng)險(xiǎn)、質(zhì)量風(fēng)險(xiǎn)、人員風(fēng)險(xiǎn)、變更風(fēng)險(xiǎn)、成本風(fēng)險(xiǎn)等文章來源:http://www.zghlxwxcb.cn/news/detail-401051.html
遇到進(jìn)度風(fēng)險(xiǎn)該怎么辦:給領(lǐng)導(dǎo)兩條路,是保進(jìn)度還是保質(zhì)量,保進(jìn)度的話就得加大人手,對不影響用戶體驗(yàn)的BUG比較難修復(fù)的先等下個(gè)版本再進(jìn)行修復(fù),保質(zhì)量的話就應(yīng)該給我們更多的時(shí)間,加大人力投入,以提高軟件的質(zhì)量文章來源地址http://www.zghlxwxcb.cn/news/detail-401051.html
到了這里,關(guān)于學(xué)測試必看!測試?yán)碚撝R之測試基礎(chǔ)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!