




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、文檔供參考,可復(fù)制、編制,期待您的好評與關(guān)注! 軟件系統(tǒng)的主要測試內(nèi)容及技術(shù)l 接口與路徑測試l 功能測試l 健壯性測試l 性能測試l 用戶界面測試l 信息安全測試l 壓力測試l 可靠性測試l 安裝/反安裝測試一、接口與路徑測試1、數(shù)據(jù)一般通過接口輸入和輸出,所以接口測試是白盒測試的第一步。每個接口可能有多個輸入?yún)?shù),每個參數(shù)有“典型值”、“邊界值”、“異常值”之分,所以輸入的組合數(shù)可能并不少。根據(jù)接口的定義,可以推斷某種輸入應(yīng)當(dāng)產(chǎn)生什么樣的輸出。輸出包括函數(shù)的返回值和輸出參數(shù)。如果實(shí)際輸出與期望的輸出不一致,那么說明程序有錯誤。白盒方式的接口測試和黑盒方式的功能測試,其方法十分相似。 2、一
2、個函數(shù)體內(nèi)的語句可能只有十幾條,但邏輯路徑可能有成千上萬條。想遍歷測試幾乎是不可能的,不測試或者胡亂找?guī)讞l路徑測試卻又不行。 3、對于非嚴(yán)格系統(tǒng)而言,在分析路徑方面化費(fèi)很多精力是不值得的。我認(rèn)為在構(gòu)造接口測試的同時(shí)已經(jīng)建立了測試路徑。因?yàn)槊恳环N輸入將產(chǎn)生唯一的輸出,輸入與輸出之間的路徑也是唯一的。由于接口測試中的輸入是有代表性的,因此相應(yīng)的路徑也具有代表性,不用得著費(fèi)煞苦心地去找測試路徑。4、路徑測試的檢查表數(shù)據(jù)類型、變量值、邏輯判斷、循環(huán)、內(nèi)存管理、文件I/O、錯誤處理 5、由于接口測試是枚舉的,有可能漏掉某些狀況,導(dǎo)致一些重要的路徑?jīng)]有被測試。預(yù)防措施有:(1)觀察是否有程序語句從來沒有被
3、執(zhí)行過。如果發(fā)生在這種情況,要么是程序有錯誤,存在無用的代碼;要么是接口測試不充分,漏掉了一些路徑。(2)要特別留意函數(shù)體內(nèi)的錯誤處理程序塊(如果存在的話),這是最易被人疏忽的路徑,隱患最多。 -資料:軟件單元測試的主要內(nèi)容是接口測試和路徑測試,毫無疑問應(yīng)當(dāng)采用白盒測試方式。如果對源代碼中的某個函數(shù)進(jìn)行白盒測試,那么要跟蹤到函數(shù)的內(nèi)部,檢查所有代碼的運(yùn)行狀況。初看起來,白盒測試可獲得100%的正確性。但不幸的是,即使一段很小的程序,它的邏輯路徑可能多得讓人無法徹底地進(jìn)行白盒測試。 數(shù)據(jù)一般通過接口輸入和輸出,所以接口測試是白盒測試的第一步。每個接口可能有多個輸入?yún)?shù),每個參數(shù)有“典型值”、“邊
4、界值”、“異常值”之分,所以輸入的組合數(shù)可能并不少。根據(jù)接口的定義,可以推斷某種輸入應(yīng)當(dāng)產(chǎn)生什么樣的輸出。輸出包括函數(shù)的返回值和輸出參數(shù)。如果實(shí)際輸出與期望的輸出不一致,那么說明程序有錯誤。白盒方式的接口測試和黑盒方式的功能測試,其方法十分相似。由于接口測試只關(guān)心輸入和輸出,并不知道函數(shù)體內(nèi)是怎樣運(yùn)行的。有時(shí)候,輸入、輸出都是正確的,而函數(shù)體內(nèi)卻可能有錯誤(或者隱藏了錯誤)。所以仍需要進(jìn)行路徑測試。二、功能測試1、功能測試的基本方法是構(gòu)造一些合理輸入(在需求范圍之內(nèi)),檢查輸出是否與期望的相同。如果兩者不一致,即表明功能有誤。也有例外的情況,如需求規(guī)格說明書中的某個功能寫錯了,而實(shí)際上軟件的功
5、能卻是正確的,這時(shí)要更改的是需求規(guī)格說明書。 2、功能測試看起來比較簡單,只要看得懂需求規(guī)格說明書,誰都會做。難點(diǎn)在于如何構(gòu)造有效的輸入。由于輸入空間通常是無限的,窮舉測試顯然行不通。那么隨便輸入一些東西,碰運(yùn)氣行不行? 3、功能測試有兩種比較好的測試方法:等價(jià)劃分法和邊界值分析法。 (1)等價(jià)劃分是指把輸入空間劃分為幾個“等價(jià)區(qū)間”,在每個“等價(jià)區(qū)間”中只需要測試一個典型值就可以了。等價(jià)劃分法來源于人們的直覺與經(jīng)驗(yàn),可令測試事半功倍。 (2)“缺陷遺漏在角落里,聚集在邊界上”。邊界值測試法是對等價(jià)劃分法的補(bǔ)充。如果A和B是輸入空間的邊界值,那么除了典型值外還要用A和B作為測試用例。 (3)例
6、如測試函數(shù)。憑直覺,等價(jià)區(qū)間應(yīng)是(0, 1)和(1, +)??扇〉湫椭祒=0.5以及x=2.0進(jìn)行“等價(jià)劃分”測試。再取 x=0以及x=1進(jìn)行“邊界值”測試。 三、健壯性測試1、健壯性是指在異常情況下,軟件還能正常運(yùn)行的能力。健壯性有兩層含義:一是容錯能力,二是恢復(fù)能力。 2、容錯性測試通常構(gòu)造一些不合理的輸入來引誘軟件出錯,例如:(1)輸入錯誤的數(shù)據(jù)類型。如“猴”年“馬”月。(2)輸入定義域之外的數(shù)值。如上海人常說的“十三點(diǎn)”3、粗暴一些方式俗稱“大猩猩”測試法。除了不能拳打腳踢嘴咬外,什么招術(shù)都可以使出來。例如在測試客戶機(jī)服務(wù)器模式的軟件時(shí),把網(wǎng)絡(luò)線拔掉,造成通信異常中斷。 4、恢復(fù)測試重
7、點(diǎn)考察一下幾項(xiàng):(1)系統(tǒng)能否重新運(yùn)行;(2)有無重要的數(shù)據(jù)丟失;(3)是否毀壞了其它相關(guān)的軟件硬件。 5、目標(biāo)當(dāng)在進(jìn)行安裝或組裝操作過程中,文件丟失時(shí)或發(fā)生意外后系統(tǒng)有能力重新進(jìn)行操作6、如何使用程序的安裝,運(yùn)行方式,工具的使用和關(guān)鍵技術(shù)經(jīng)過足夠的評估系統(tǒng)開發(fā)完畢后,介紹一下發(fā)生失敗后的處理過程7、例子人為的使一個系統(tǒng)在安裝或者組裝過程中產(chǎn)生錯誤8、什么時(shí)間去使用當(dāng)操作的連續(xù)性是個重點(diǎn)的時(shí)候四、性能測試1、性能測試即測試軟件處理事務(wù)的速度,一是為了檢驗(yàn)性能是否符合需求,二是為了得到某些性能數(shù)據(jù)供人們參考(例如用于宣傳)。 2、有時(shí)人們關(guān)心測試的“絕對值”,如數(shù)據(jù)送輸速率是每秒多少比特。有時(shí)人
8、們關(guān)心測試的“相對值”,如某個軟件比另一個軟件快多少倍。3、在獲取測試的“絕對值”時(shí),我們要充分考慮并記錄運(yùn)行環(huán)境對測試的影響。例如網(wǎng)絡(luò)環(huán)境、計(jì)算機(jī)主頻,總線結(jié)構(gòu)和外部設(shè)備都可能影響軟件的運(yùn)行速度。 4、性能測試的一些注意事項(xiàng):(1)不要試圖讓人拿著鐘表去測時(shí)間,應(yīng)當(dāng)編寫一段程序用于計(jì)算時(shí)間以及相關(guān)數(shù)據(jù)。 (2)應(yīng)當(dāng)測試軟件在標(biāo)準(zhǔn)配置和最低配置下的性能。 (3)為了排除干擾,應(yīng)當(dāng)關(guān)閉那些消耗內(nèi)存、占用CPU的其它應(yīng)用軟件(如殺毒軟件)。 (4)不同的輸入情況會得到不同的性能數(shù)據(jù),應(yīng)當(dāng)分檔記錄。例如傳輸文件的容量從100K到1M可以分成若干等級。 (5)由于環(huán)境的波動,同一種輸入情況在不同的時(shí)間
9、可能得到不同的性能數(shù)據(jù),可以取其平均值。 5、目標(biāo)確定系統(tǒng)達(dá)到了希望達(dá)到的性能水平6、如何使用使用軟件和硬件的監(jiān)視器使用模擬的監(jiān)控模型,對關(guān)心的性能指標(biāo)進(jìn)行監(jiān)控創(chuàng)建一個小程序7、例子計(jì)算通信的時(shí)間單位時(shí)間處理的信息量五、用戶界面測試絕大多數(shù)軟件擁有圖形用戶界面。圖形用戶界面的測試重點(diǎn)是正確性、易用性和視覺效果。在評價(jià)易用性和視覺效果時(shí),主觀性非常強(qiáng),應(yīng)當(dāng)考慮多個人的觀點(diǎn)。界面測試l 現(xiàn)在一般人都有使用瀏覽器瀏覽網(wǎng)頁的經(jīng)歷,用戶雖然不是專業(yè)人員但是對界面效果的印象是很重要的。如果你注重這方面的測試,那么驗(yàn)證應(yīng)用程序是否易于使用就非常重要了。很多人認(rèn)為這是測試中最不重要的部分,但是恰恰相反界面對不
10、懂技術(shù)的客戶來說那相當(dāng)關(guān)鍵,慢慢體會你會明白的。l 方法上可以根據(jù)設(shè)計(jì)文檔,如果夠?qū)I(yè)的話可以專業(yè)美工人員,來確定整體風(fēng)格頁面風(fēng)格,然后根據(jù)這個可以頁面人員可以生成靜態(tài)的HTML,CSS等甚至生成幾套不用的方案來討論,或者交給客戶評審,最后形成統(tǒng)一的風(fēng)格的頁面/框架。注意不要靠程序員的美術(shù)素養(yǎng)形成你的web風(fēng)格,那樣可能會很糟糕。主要包括以下幾個方面的內(nèi)容:? 站點(diǎn)地圖和導(dǎo)航條 位置、是否合理、是否可以導(dǎo)航等內(nèi)容布局 布局是否合理,滾動條等簡介說明 說明文字是否合理,位置,是否正確? 背景/色調(diào) 是否正確、美觀,是否符合用戶需求;? 頁面在窗口中的顯示是否正確、美觀(在調(diào)整瀏覽器窗口大小時(shí),屏
11、幕刷新是否正確)表單樣式 大小,格式,是否對提交數(shù)據(jù)進(jìn)行驗(yàn)證(如果在頁面部分進(jìn)行驗(yàn)證的話)等? 連接 連接的形式,位置,是否易于理解等l web測試的主要頁面元素? 頁面元素的容錯性列表(如輸入框、時(shí)間列表或日歷)? 頁面元素清單(為實(shí)現(xiàn)功能,是否將所需要的元素全部都列出來了,如按鈕、單選框、復(fù)選框、列表框、超連接、輸入框等等)? 頁面元素的容錯性是否存在? 頁面元素的容錯性是否正確? 頁面元素基本功能是否實(shí)現(xiàn)(如文字特效、動畫特效、按鈕、超連接)? 頁面元素的外形、擺放位置(如按鈕、列表框、核選框、輸入框、超連接等)? 頁面元素是否顯示正確(主要針對文字、圖形、簽章)? 元素是否顯示(元素是
12、否存在)頁面元素清單(為實(shí)現(xiàn)功能,是否將所需要的元素全部都列出來了,如按鈕、單選框、復(fù)選框、列表框、超連接、輸入框等等)l 測試技術(shù)? 通過頁面走查,瀏覽確定使用的頁面是否符合需求??梢越Y(jié)合兼容性測試對不用分辨率下頁面顯示效果,如果有影響應(yīng)該交給設(shè)計(jì)人員提出解決方案。? 可以結(jié)合數(shù)據(jù)定義文檔查看表單項(xiàng)的內(nèi)容,長度等信息。? 對于動態(tài)生成的頁面最好也能進(jìn)行瀏覽查看。如Servelet部分可以結(jié)合編碼規(guī)范,進(jìn)行代碼走查。是否支持中文,如果數(shù)據(jù)用XML封裝要做的工作會多一點(diǎn)等等。 界面測試要素:符合標(biāo)準(zhǔn)和規(guī)范,靈活性,正確性,直觀性,舒適性,實(shí)用性,一致性l 1.直觀性:? 用戶界面是否潔凈,不唐突
13、,不擁擠.界面不應(yīng)該為用戶制造障礙.所需功能或者期待的響應(yīng)應(yīng)該明顯,并在預(yù)期出現(xiàn)的地方.? 界面組織和布局合理嗎?是否允許用戶輕松地從一個功能轉(zhuǎn)到另一個功能?下一步做什么明顯嗎?任何時(shí)刻都可以決定放棄或者退回,退出嗎?輸入得到承認(rèn)了嗎?菜單或者窗口是否深藏不露? 有多余功能嗎?軟件整體抑或局部是否做得太多?是否有太多特性把工作復(fù)雜化了?是否感到信息太龐雜? 如果其他所有努力失敗,幫助系統(tǒng)真能幫忙嗎?l 2.一致性? 快速鍵和菜單選項(xiàng).在Windows 中按F1鍵總是得到幫助信息? 術(shù)語和命令.整個軟件使用同樣的術(shù)語嗎?特性命名一致嗎?例如,Find是否一直叫Find,而不是有時(shí)叫Search?
14、 軟件是否一直面向同一級別用戶?帶有花哨用戶界面的趣味賀卡程序不應(yīng)該顯示泄露技術(shù)機(jī)密的錯誤提示信息.? 按鈕位置和等價(jià)的按鍵.大家是否注意到對話框有OK按鈕和Cancle按鈕時(shí),OK按鈕總是在上方或者左方,而Cancle按鈕總是在下方或右方?同樣原因,Cancle按鈕的等價(jià)按鍵通常是Esc,而選中按鈕的等價(jià)按鈕通常是Enter.保持一致.l 3.靈活性? 狀態(tài)跳轉(zhuǎn).靈活的軟件實(shí)現(xiàn)同一任務(wù)有多種選擇方式.? 狀態(tài)終止和跳過,具有容錯處理能力.? 數(shù)據(jù)輸入和輸出.用戶希望有多種方法輸入數(shù)據(jù)和查看結(jié)果.例如,在寫字板插入文字可用鍵盤輸入,粘貼,從6種文件格式讀入,作為對象插入,或者用鼠標(biāo)從其他程序拖
15、動.l 4.舒適性? 恰當(dāng).軟件外觀和感覺應(yīng)該與所做的工作和使用者相符.? 錯誤處理.程序應(yīng)該在用戶執(zhí)行嚴(yán)重錯誤的操作之前提出警告,并允許用戶恢復(fù)由于錯誤操作導(dǎo)致丟失的數(shù)據(jù).如大家認(rèn)為undo /redo是當(dāng)然的.? 性能.快不見得是好事.要讓用戶看得清程序在做什么,它是有反應(yīng)的.六、信息安全測試信息安全性(security)是指防止系統(tǒng)被非法入侵的能力,既屬于技術(shù)問題又屬于管理問題。信息安全性測試有如下步驟:(1)為非法入侵設(shè)立目標(biāo),例如“盜竊某個文件”或“更改數(shù)據(jù)庫記錄”等。(2)邀請(或懸賞)一些人扮演黑客,讓他們想盡辦法入侵系統(tǒng),實(shí)現(xiàn)“目標(biāo)”。(3)如果有人成功了,請他詳述入侵的過程。
16、別忘了給予獎勵。 目標(biāo)安全性的缺陷很難被發(fā)現(xiàn)。大多數(shù)的情況下組織能夠防止一般性的破壞者。如何使用對安全性的需求進(jìn)行評審分析與安全性有關(guān)的處理流程轉(zhuǎn)包給專業(yè)的人員例子定義了被保護(hù)的資源,權(quán)限進(jìn)行了控制,日志文件和審查追蹤是可用的。什么時(shí)間使用當(dāng)被保護(hù)的資源對于組織具有重要的價(jià)值的時(shí)候七、壓力測試壓力測試也叫負(fù)荷測試,即獲取系統(tǒng)能正常運(yùn)行的極限狀態(tài)。了解“極限”是很有價(jià)值的,例如潛艇下潛極限深度。 壓力測試的主要任務(wù)是:構(gòu)造正確的輸入,使勁折騰系統(tǒng)卻讓它剛好不癱瘓。 壓力測試的一個變種是敏感測試。在某種情況下,微小的輸入變動會導(dǎo)致系統(tǒng)的表現(xiàn)(如性能)發(fā)生急劇的變化。敏感測試目的是發(fā)現(xiàn)什么樣的輸入可
17、能會引發(fā)不穩(wěn)定現(xiàn)象。目標(biāo):模擬出實(shí)際用戶環(huán)境怎么用:產(chǎn)生測試數(shù)據(jù)測試組模擬用戶處理被創(chuàng)建的數(shù)據(jù)例子確定是否分配了足夠的磁盤空間通訊的容量是否足夠測試系統(tǒng)過載的情況什么時(shí)間使用當(dāng)關(guān)于容量的信息不確定的時(shí)候 八、可靠性測試可靠性是指在一定的環(huán)境下、在給定的時(shí)間內(nèi)、系統(tǒng)不發(fā)生故障的概率。由于軟件不像硬件那樣可以“加速老化”,按此定義,軟件可靠性測試可能會花費(fèi)很長時(shí)間。 比較實(shí)用的辦法是,讓用戶使用該系統(tǒng),記錄每一次發(fā)生故障的時(shí)刻。計(jì)算出相鄰故障的時(shí)間間隔,注意要去掉非工作時(shí)間。這樣我們可以方便地統(tǒng)計(jì)出不發(fā)生故障的“最小時(shí)間間隔”、“最大時(shí)間間隔”和“平均時(shí)間間隔”。其中“平均時(shí)間間隔”會讓人們大體了
18、解到系統(tǒng)“可靠”的程度。 九、安裝 / 反安裝測試安裝 / 反安裝測試的目的:避免“大風(fēng)浪都挺過來了,卻在陰溝里翻了船” 目前市面上有非常流行的、專門制作安裝/反安裝程序的一些工具,如Install Shelled。制作安裝/反安裝程序不再是件難事,關(guān)鍵是不要麻痹大意。主要測試工作: (1)至少在標(biāo)準(zhǔn)配置和最低配置兩種環(huán)境下測試;(2)如果有安裝界面,應(yīng)當(dāng)嘗試各種選項(xiàng),如選擇“全部”、“部分”、“升級”等。 如何進(jìn)行安裝測試 除了嵌入式軟件之外 ,安裝是軟件產(chǎn)品實(shí)現(xiàn)其功能的第一步,沒有正確的安裝根本就談不上正確的執(zhí)行,因此對于安裝的測試就顯得尤為重要。那么對于安裝測試需要注意一些什么呢,我們認(rèn)為至少應(yīng)該從以下幾點(diǎn)來考慮:1. 自動安裝還是手工配置安裝,測試各種不同的安裝組合,并驗(yàn)證各種不同組合的正確性,最終目標(biāo)是所有組合都能安裝成功。2. 安裝退出之后,確認(rèn)應(yīng)用程序可以正確啟動、運(yùn)行。3. 在安裝之前請備份你的注冊表,安裝之后
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025春季【高二】【蛇啟新航 蛻變前行】開學(xué)第一課-文字稿
- 2025年合同會審單模板
- 二年級上冊數(shù)學(xué)教案-第五單元第6課時(shí)回家路上 北師大版
- 五年級上冊數(shù)學(xué)教案-2.1 《平行四邊形的面積》 ︳西師大版
- 五年級下冊數(shù)學(xué)教案 - 露在外面的面 北師大版
- 《長方體和正方體的體積》(教案)青島版五年級下冊數(shù)學(xué)
- 第6課 貓抓老鼠(教學(xué)設(shè)計(jì))2023-2024學(xué)年五年級上冊信息技術(shù)粵教版B版
- 部編版九年級上冊古詩欣賞中考試題匯編(截至2023年)
- 《茅屋為秋風(fēng)所破歌》歷年中考古詩欣賞試題匯編(截至2024年)
- 2025年河南省鶴壁市單招職業(yè)傾向性測試題庫完整
- 青島科技大學(xué)成人大?!豆ど唐髽I(yè)管理實(shí)訓(xùn)報(bào)告》
- 低鉀血癥最新版本最新課件
- 獸醫(yī)外科手術(shù)學(xué)與獸醫(yī)外科學(xué)章節(jié)測試及答案
- 2023年陜西延長石油礦業(yè)有限責(zé)任公司招聘筆試題庫及答案解析
- YY/T 1792-2021熒光免疫層析分析儀
- GB/T 39235-2020豬營養(yǎng)需要量
- GB/T 30799-2014食品用洗滌劑試驗(yàn)方法重金屬的測定
- 染廠公司簡介(4個范本)
- PPT用中國地圖(可編輯)
- 基于德育的農(nóng)村中小學(xué)校園欺凌現(xiàn)象的解決對策優(yōu)秀獲獎科研論文
- 鐵路工程概預(yù)算-工程經(jīng)濟(jì)管理培訓(xùn)-課件
評論
0/150
提交評論