




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
全國計算機技術(shù)與軟件專業(yè)技術(shù)資格考試
講師:孫老師(北風(fēng)網(wǎng)版權(quán)所有)
-----中級職稱軟件評測師考試
軟件安全測試軟件安全測試的必要性安全測試,在充分考慮軟件安全性問題的前提下進行的測試,普通的軟件測試的主要目的是:確保軟件不會去完成沒有預(yù)先設(shè)計的功能,確保軟件能夠完成預(yù)先設(shè)計的功能。但是,安全測試更有針對性同時可能采用一些和普通測試不一樣的測試手段,如攻擊和反攻擊技術(shù)。因此,實際上,安全測試實際上就是一輪多角度、全方位的攻擊和反攻擊,其目的就是要搶在攻擊者之前盡可能多地找到軟件中的漏洞.以減少軟件遭到攻擊的可能性。安全測試基于軟件需求說明書中關(guān)于安全性的功能需求說明,測試的內(nèi)容主要是:軟件的安全功能實現(xiàn)是否與安全需求一致。通常情況下,軟件的安全需求包括:數(shù)據(jù)保密和完整可用;通信過程中的身份認證、授權(quán)、訪問控制;通信方的不可抵賴;隱私保護、安全管理;軟件運行過程中的安全漏洞;等等。
因此,軟件安全測試和一般的測試具有很大的區(qū)別。一般測試主要是確定軟件的功能能否達到,如果沒有達到,就進行修改,其任務(wù)具有一定的確定性。但是,安全測試主要是檢查軟件所達到的功能是否安全可靠,需要證明的是軟件不會出現(xiàn)安全方面的問題,如:數(shù)據(jù)篡改;非授權(quán)訪問;遭受DoS攻擊;等等。軟件安全性測試的過程軟件的安全測試,一般根據(jù)設(shè)計階段的威脅模型來實施。在第一章我們講到,安全問題,應(yīng)該從設(shè)計階段就開始考慮,設(shè)計要盡可能完善。并提出了采用威脅建模的方法來在軟件設(shè)計階段加入安全因素的考量。威脅建模過程一般如下:1:在項目組中成立一個小組,該小組中的人員是項目組中對安全問題比較了解的人;2:站在安全角度,分解系統(tǒng)的安全需求需求;3:確定系統(tǒng)可能面臨的威脅,將威脅進行分類,可以畫出威脅樹;4:選擇應(yīng)付威脅或者緩和威脅的方法;5:確定最終解決這些威脅的技術(shù)既然在設(shè)計階段,就將系統(tǒng)可能出現(xiàn)的一些安全問題寫在文檔里面了,因此,安全性測試也應(yīng)該是基于這些內(nèi)容。因此,軟件安全測試的過程可以分為以下幾個步驟:1:基于前面設(shè)計階段制定的威脅模型,設(shè)計測試計劃。該過程一般基于威脅樹,以第一章畫出的針對用戶口令安全問題威脅樹為例,如圖15-2所示:
測試計劃就可以基于口令安全所可能遭受的各個攻擊進行制定。
2:將安全測試的最小組件單位進行劃分,并確定組件的輸入格式。實際上,和傳統(tǒng)的測試不同,威脅模型中,并不是所有的模塊都會有安全問題,因此,我們只需將需要安全測試的某一部分程序取出來進行測試,將安全測試的最小組件單位進行劃分。此外,每個組件都提供了接口,也就是輸入,在測試階段,測試用例需要進行輸入,這就必須將每個接口的輸入類型、輸入格式等都列出來,便于測試用例的制定。這些輸入如:Socket數(shù)據(jù);無線數(shù)據(jù);命令行;語音設(shè)備;串口;HTTP提交;等等。3:根據(jù)各個接口可能遇到的威脅,或者系統(tǒng)的潛在漏洞,對接口進行分級。在該步驟中,主要是確定系統(tǒng)將要受到的威脅的嚴重性,將比較嚴重的威脅進行優(yōu)先的測試,這個嚴重性的判斷,應(yīng)該來源于威脅模型??梢酝ㄟ^很多方法對接口受到的威脅性進行分級,文獻2中推薦了一種積分制方法,對各個接口可能受到的各種威脅進行積分,最后累加,優(yōu)先測試那些分數(shù)排在前面的接口。4:確定輸入數(shù)據(jù),設(shè)計測試用例。每一個接口可以輸入的數(shù)據(jù)都不相同,由于安全測試不同于普通的測試,因此還要更加精心地設(shè)計測試用例。有時候還要精心設(shè)計輸入的數(shù)據(jù)結(jié)構(gòu),如隨機數(shù)、集合等的設(shè)計,都要必須是為安全測試服務(wù)的。在測試用例的設(shè)計過程中,必須要了解,安全測試實際上是對程序進行的安全攻擊,因此,不但數(shù)據(jù)本身需要精心設(shè)計,測試手段也要精心設(shè)計。如在對緩沖區(qū)溢出的測試中,必須精心設(shè)計各種輸入,從不同的方面來對程序進行攻擊。5:攻擊應(yīng)用程序,查看其效果。用設(shè)計的測試用例來攻擊應(yīng)用程序,使得系統(tǒng)處于一種受到威脅的狀態(tài),來得到輸出。6:總結(jié)測試結(jié)果,提出解決方案。本過程中,將預(yù)期輸出和實際輸出進行比較,得出結(jié)論,寫出測試報告,最后提交相應(yīng)的人員,進行錯誤解決。以上是測試的過程,近年來,關(guān)于安全性測試,還研究出了一些成果,借計算機來進行自動的測試,這些成果主要包括以下幾種:1:用形式化方法進行安全測試。該方法用用狀態(tài)遷移系統(tǒng)描述軟件的行為,將軟件的功能用計算邏輯和邏輯演算來表達,通過邏輯上的推理和搜索,來發(fā)現(xiàn)軟件中的漏洞。2:基于模型的安全功能測試。在該方法中,首先對軟件的結(jié)構(gòu)和功能進行建模,生成測試模型,然后利用測試模型導(dǎo)出測試用例。該方法的成功與否,取決于建模的準確性,對身份認證、訪問控制等情況下安全測試比較適用。常用模型有:UML模型;馬爾可夫鏈模型;等等。
3:基于輸入語法進行測試。接口的輸入語法,定義了軟件接受的輸入數(shù)據(jù)的類型、格式等。該類方法中,首先提取被測接口的輸入語法,如命令行、文件、環(huán)境變量、套接字,然后根據(jù)這些語法,生成測試用例。此類測試方法比較適用于被測軟件有較明確的接口語法的情況,范圍較窄。4:采用隨機方法進行測試。該方法又稱為模糊測試,將隨機的不合法數(shù)據(jù)輸入到程序中,有時候能夠發(fā)現(xiàn)一些意想不到的錯誤,在安全性測試中越來越受到重視。軟件測試本來是軟件工程中研究比較活躍的一個分支,針對安全測試的研究也收到較多學(xué)者的重視。有關(guān)一些安全測試方面的最新進展,讀者可以參考相關(guān)文獻。比較熱門的方向包括:權(quán)限系統(tǒng)的自動測試;形式化方法對測試用例的表達;分布式環(huán)境下的測試;云計算環(huán)境下的測試;等等。安全審查安全審查是指對軟件產(chǎn)品進行安全方面的人工檢查,是軟件質(zhì)量保證的一個重要環(huán)節(jié),主要包括:代碼的安全審查;配置復(fù)查;文檔的安全審查;等等。
本節(jié)針對這幾個問題進行講解。
代碼的安全審查代碼的審查,是審查小組人工測試源程序的過程,而代碼的安全審查,則是針對威脅模型中表達的一些安全問題進行的審查。代碼的安全審查,是一種非常有效的程序安全驗證技術(shù),在代碼的安全審查過程中,首先要組建一個代碼的安全審查小組,最好由如下人員組成:組長,應(yīng)該是一個很有能力的程序員;程序的設(shè)計成員;程序的編寫成員;程序的測試成員。代碼安全審查的步驟如下:
小組成員先研究設(shè)計說明書,力求理解軟件的設(shè)計,然后重點針對威脅模型進行討論;由設(shè)計者介紹威脅模型中的一些細節(jié);程序的編寫者逐個模塊地解釋是怎樣用程序代碼解決威脅模型中提出的解決方案的;對照安全程序設(shè)計常見錯誤,分析審查程序;發(fā)現(xiàn)錯誤時,記錄錯誤,繼續(xù)審查。
配置復(fù)查軟件配置,實際上是指軟件需求規(guī)格說明、軟件設(shè)計規(guī)格說明、源代碼等的總稱,配置復(fù)查實際上是軟件驗收測試的重要內(nèi)容。配置復(fù)查的目的,需要保證如下內(nèi)容:軟件配置的所有成分都齊全;軟件配置質(zhì)量符合要求;文檔與程序完全一致;具有完成軟件維護所必須準備的細節(jié);使用手冊的完整性和正確性;等等。軟件配置復(fù)查的過程中,必須仔細記錄發(fā)現(xiàn)軟件安全測試過程中的安全遺漏或錯誤,并且適當?shù)匮a充和改正。
文檔的安全審查文檔在軟件工程中非常重要。對于用戶來說,軟件事實上就是文檔,因此,文檔是影響軟件質(zhì)量的決定因素,有時候可以說,文檔比程序代碼更重要。在文檔中,關(guān)于安全問題的描述不能忽視,必須進行審查。軟件系統(tǒng)的文檔可以兩類:1:用戶文檔。用戶文檔主要描述系統(tǒng)功能和使用方法,而并不關(guān)心這些功能是怎樣實現(xiàn)的。用戶文檔是用戶了解系統(tǒng)的第一步,它應(yīng)該能使用戶獲得對系統(tǒng)的準確的初步印象。用戶文檔至少應(yīng)該包括下述5方面的內(nèi)容:功能描述,說明系統(tǒng)的功能;安裝文檔,說明怎樣安裝這個系統(tǒng),怎樣對系統(tǒng)進行配置,使其適應(yīng)特定的運行環(huán)境;使用手冊,說明如何使用這個系統(tǒng),這是一個比較重要的文檔,用戶應(yīng)該可以通過這個文檔學(xué)會系統(tǒng)的使用,有時候,需要通過豐富例子,圖文并茂地表達這些問題;參考手冊,詳盡描述軟件中提供給用戶使用的所有系統(tǒng)設(shè)施及其使用方法,另外,參考手冊中還應(yīng)該解釋系統(tǒng)可能產(chǎn)生的各種輸出信息,如出錯信息的含義;如果系統(tǒng)中有操作員的話,還需要提供操作員指南,指示操作員應(yīng)該如何處理使用過程中出現(xiàn)的一些情況。用戶文檔可以分別設(shè)立獨立的文檔,也可以設(shè)置為一個大文檔的各個分冊,具體做法,由系統(tǒng)的復(fù)雜性決定。2:系統(tǒng)文檔。系統(tǒng)文檔指從問題可行性分析、問題定義、需求分析、系統(tǒng)總體設(shè)計、詳細設(shè)計到測試和測試報告這樣一系列工作有關(guān)的文檔。系統(tǒng)文檔描述了系統(tǒng)從設(shè)計設(shè)計到實現(xiàn),最后到測試的過程。該部分的文檔包括:可行性研究報告;需求分析說明書;總體設(shè)計說明書;詳細設(shè)計說明書;測試計劃;測試報告;等等。文檔的安全審查,是針對軟件項目中的安全問題進行的審查,此過程中,主要進行的工作是,根據(jù)威脅模型,在各個文檔中審查是否進行了良好的表達。如:用戶文檔中是否含有和解決安全問題相關(guān)的措施,來提示用戶的操作盡可能保證安全性;系統(tǒng)文檔中是否將所有的安全問題進行了解決,并用明晰的表達方式描述出來;等等。Slide26April20233.7兼容性測試 軟件兼容性測試就是要檢查軟件能否在不同組合的環(huán)境下正常運行,或者軟件之間能否正常交互和共享信息。 軟件對其運行環(huán)境的依賴程度。
1.軟件兼容性測試需要解決的問題(1)被測對象需要與何種應(yīng)用平臺、軟件兼容;(2)被測對象需要遵循何種信息交互標準或規(guī)范;(3)被測對象使用何種數(shù)據(jù)與應(yīng)用平臺、其他軟件交互和共享信息。Slide27April2023兼容性測試的概念
2.兼容性測試常用的術(shù)語(1)向下兼容:指可以使用軟件以前的版本或功能;(2)向上兼容:指可以使用軟件未來的版本或功能。 3.兼容性測試的分類 (1)平臺和設(shè)備兼容性測試;
(2)向下兼容性測試;
(3)交叉兼容性測試。Slide28April2023兼容性測試的概念
4.兼容性測試的環(huán)境(1)硬件環(huán)境:服務(wù)器、客戶機、網(wǎng)絡(luò)連接設(shè)備、打印機、掃描儀等;(2)操作系統(tǒng)、數(shù)據(jù)庫、中間件、瀏覽器、其他軟件環(huán)境Slide29April2023硬件兼容性測試的基本內(nèi)容
硬件兼容性測試的目的就是確定軟件運行的最低硬件配置和環(huán)境。 操作系統(tǒng)和驅(qū)動軟件特別要重視硬件兼容性的測試,而應(yīng)用軟件對硬件的依賴取決于操作系統(tǒng)對硬件的依賴。
(1)配置;(2)響應(yīng);(3)功能實現(xiàn);(4)特別需求。
硬件兼容性的基本內(nèi)容Slide30April2023硬件兼容性測試的基本內(nèi)容
硬件主要部件的兼容性測試: (1)CPU 主要考慮軟件對Intel和AMD產(chǎn)品的支持或兼容性,主要體現(xiàn)在芯片的主頻和緩存上。 (2)內(nèi)存 考慮在不同內(nèi)存容量的環(huán)境下,軟件的功能是否正常,性能是否滿足要求。 (3)硬盤主機兼容性的基本內(nèi)容Slide31April2023硬件兼容性測試的基本內(nèi)容
與板卡兼容性相關(guān)的軟件主要包括操作系統(tǒng)和驅(qū)動程序,而游戲軟件對顯卡的兼容性有很高的要求。
1.獨立板卡
2.主板芯片組
3.自由驅(qū)動程序板卡兼容性打印機卡兼容性 打印機的兼容性需要在不同操作系統(tǒng)、不同辦公軟件、不同網(wǎng)絡(luò)下進行。
Slide32April2023軟件兼容性測試
當軟件需要在多操作系統(tǒng)下運行時,就必須進行操作系統(tǒng)兼容性測試。如果軟件運行在多層結(jié)構(gòu)的網(wǎng)絡(luò)環(huán)境下,則需要考慮服務(wù)器和客戶機的操作系統(tǒng)兼容性。(1)Windows操作系統(tǒng)(2)Linux操作系統(tǒng)(3)Unix操作系統(tǒng)(4)Macintosh操作系統(tǒng)
軟件與操作系統(tǒng)的兼容性Slide33April2023軟件兼容性測試
數(shù)據(jù)庫的標準主要包括SQL、ODBC、JDBC、ADO、JDO、OLEDB,這些標準也不斷地完善、升級,推出了多個版本。由于各個數(shù)據(jù)庫系統(tǒng)對標準的支持程度不同,導(dǎo)致基于某一種數(shù)據(jù)庫開發(fā)的應(yīng)用系統(tǒng)在其他數(shù)據(jù)庫上未必能夠運行好。如果系統(tǒng)從SQLServer遷移到Oracle,從Oracle8i升級到Oracle9i,都應(yīng)當進行數(shù)據(jù)庫兼容性測試。軟件與數(shù)據(jù)庫的兼容性Slide34April2023軟件兼容性測試
數(shù)據(jù)庫兼容性的測試要點:(1)數(shù)據(jù)完整性檢查原數(shù)據(jù)庫中的所有表能否全部移入新的數(shù)據(jù)庫,并比較所有表中的數(shù)據(jù)是否正確。
(2)數(shù)據(jù)處理正確性檢查原數(shù)據(jù)庫中的所有存儲過程和觸發(fā)器是否能夠在新數(shù)據(jù)庫中正確執(zhí)行并加載。(3)響應(yīng)性能影響
檢查新數(shù)據(jù)庫中數(shù)據(jù)查詢速度,看是否有很大影響。
軟件與數(shù)據(jù)庫的兼容性Slide35April2023軟件兼容性測試
中間件的兼容性測試經(jīng)常是在版本之間進行,通常是由低版本升級到高版本時做這種測試,如WebSphere從sp2升級到sp3,需要檢查軟件能否正確運行,性能是否正常。
軟件與中間件的兼容性Slide36April2023軟件兼容性測試
(1)InternetExplorer;
(2)Netscape;
(3)Firefox。有些HTML標簽或腳本只能在某些特定的瀏覽器顯示。不同廠家的瀏覽器對Java、JavaScript、ActiveX或不同版本HTML提供了不同程度的支持。例如,ActiveX是微軟的產(chǎn)品,是為InternetExplorer而設(shè)計的;JavaScript是為Netscape而設(shè)計的。
軟件與瀏覽器的兼容性Slide37April2023軟件兼容性測試
數(shù)據(jù)兼容是指軟件之間能否正確地交互和共享信息。
1.不同格式數(shù)據(jù)的兼容性
(1)被測軟件能否與其他軟件相互復(fù)制粘貼文字、圖片、表格。
(2)被測軟件能否打開或調(diào)用以前版本軟件產(chǎn)生的數(shù)據(jù)
(3)被測軟件能否與其相關(guān)的軟件正常地交換數(shù)據(jù);(4)被測軟件能否與同類軟件正常地交換數(shù)據(jù); (5)被測軟件所涉及的數(shù)據(jù)是否符合行業(yè)標準。
數(shù)據(jù)兼容性測試Slide38April2023軟件兼容性測試
2.數(shù)據(jù)共享兼容性
(1)文件保存和文件讀?。?/p>
(2)文件導(dǎo)入和文件導(dǎo)出;
(3)剪切、復(fù)制和粘貼
;(4)DDE、COM(ComponentObjectModel)和OLE。
3.XML符合性 對于XML符合性的測試采用業(yè)界常用的數(shù)據(jù)格式規(guī)范,一般是一套Schema文件。
數(shù)據(jù)兼容性測試Slide39April2023軟件兼容性測試
軟件產(chǎn)品的成熟需要有一個不斷完善的過程,所以絕大多數(shù)軟件都會存在多個版本。因此,新版本軟件的推出就需要測試其向下的兼容性。
(1)定制應(yīng)用軟件的版本;
(2)商品化軟件版本。多版本軟件兼容性測試Slide40April2023數(shù)據(jù)遷移兼容性測試
數(shù)據(jù)遷移就是將舊系統(tǒng)中的數(shù)據(jù)進行清理、轉(zhuǎn)換,并裝載到新系統(tǒng)中。
1.數(shù)據(jù)遷移前的準備 (1)對遷移的數(shù)據(jù)源做詳細說明; (2)建立新舊系統(tǒng)的數(shù)據(jù)字典; (3)對舊系統(tǒng)的歷史數(shù)據(jù)質(zhì)量進行分析; (4)新舊系統(tǒng)數(shù)據(jù)的差異分析; (5)建立新舊系統(tǒng)數(shù)據(jù)庫表的映射關(guān)系; (6)開發(fā)數(shù)據(jù)轉(zhuǎn)換和遷移工具。
Slide41April2023數(shù)據(jù)遷移兼容性測試
2.數(shù)據(jù)遷移的實施 (1)制定數(shù)據(jù)轉(zhuǎn)換的詳細實施步驟; (2)準備數(shù)據(jù)遷移環(huán)境; (3)對涉及數(shù)據(jù)遷移的技術(shù)進行測試; (4)實施數(shù)據(jù)遷移。
3.數(shù)據(jù)遷移后的校驗 通過試運行新系統(tǒng)的功能模塊,特別是查詢和報表功能,檢查數(shù)據(jù)的正確性。Slide42April2023數(shù)據(jù)遷移兼容性測試
為保證數(shù)據(jù)遷移的安全,可以考慮以下措施: (1)在實際運行環(huán)境之外搭建模擬環(huán)境,導(dǎo)入部分或全部數(shù)據(jù),在模擬環(huán)境中進行遷移嘗試。 (2)將舊系統(tǒng)的數(shù)據(jù)備份; (3)分步實施遷移:先將備份數(shù)據(jù)遷移到新的備份系統(tǒng),原有的主系統(tǒng)不動。運行備份系統(tǒng)一段時間,若一切正常,則正式將數(shù)據(jù)遷移到新系統(tǒng)中。Slide43April2023軟件兼容性的標準和規(guī)范
1.高級標準和規(guī)范高級標準和規(guī)范是指軟件產(chǎn)品應(yīng)當遵循的形式化標準,包括外形、感覺和外特性等。
2.低級標準和規(guī)范低級標準和規(guī)范是指軟件產(chǎn)品應(yīng)當遵循的實質(zhì)性標準,包括語言規(guī)范、文件格式、通信協(xié)議等。應(yīng)用軟件不兼容于系統(tǒng)平臺的低級標準和規(guī)范,是不能正常運行。應(yīng)用軟件不兼容于高級標準和規(guī)范,是不會影響軟件運行的。軟件兼容性標準等級Slide44April2023軟件兼容性的標準和規(guī)范
標準符合性測試的基本原理是,將被測軟件產(chǎn)品的功能、性能指標與標準規(guī)定的進行比較,確定軟件與標準的符合程度。
1.數(shù)據(jù)內(nèi)容類標準
由行業(yè)主管部門制定的一套標準,主要描述用于數(shù)據(jù)交換和操作的數(shù)據(jù)格式或內(nèi)容規(guī)范。
2.通信協(xié)議類標準 通信協(xié)議標準描述了數(shù)據(jù)通信與傳輸?shù)慕涌跀?shù)據(jù)格式。
標準符合性測試分類Slide45April2023軟件兼容性的標準和規(guī)范
3.開發(fā)接口類標準 開發(fā)接口標準描述了軟件層次結(jié)構(gòu)之間數(shù)據(jù)傳輸?shù)母袷胶头椒ā?(1)SQL標準符合性測試; (2)ODBC標準符合性測試; (3)JDBC標準符合性測試;
4.信息編碼類標準 通常是對字符集進行測試,如中文系統(tǒng)必須符合GB18030標準。
標準符合性測試分類Slide46April2023軟件兼容性的標準和規(guī)范
標準符合性的測試過程就是將測試用例的輸入輸出與基準庫中的輸入輸出比較,對不一致的結(jié)果進行分析,確定測試結(jié)果與標準的符合度。 (1)閱讀理解標準; (2)確定測試工具; (3)確定用例文件;
(4)執(zhí)行用例文件; (5)分析測試結(jié)果。
標準符合性測試步驟Slide47April2023兼容性測試用例設(shè)計矩陣
將測試環(huán)境要素按類別分成行列,或者按測試用例分成行列,構(gòu)成測試用例設(shè)計矩陣。以SIM卡測試用例設(shè)計為例。
編號項目預(yù)置條件測試步驟測試要點次數(shù)備注pw_01
開機
1.開機動畫為系統(tǒng)默認圖片/影片2.開啟本機號碼
長按開機鍵,觀察開機動畫/音樂
1.開機畫面顯示正常,音樂和畫面一致2.開機后可以正確搜網(wǎng)注冊,注意找網(wǎng)時間是否過長3.待機界面顯示正常3pw_02
1.開機動畫為手動設(shè)置的gif圖片2.開啟本機號碼長按開機鍵,觀察開機動畫/音樂
1.開機畫面顯示正常,音樂和畫面一致2.開機后可以正確搜網(wǎng)注冊,注意找網(wǎng)時間是否過長3.待機界面顯示正常3pw_03
1.開機動畫為手動設(shè)置的jpg圖片2.開啟本機號碼長按開機鍵,觀察開機動畫/音樂
1.開機畫面顯示正常,音樂和畫面一致2.開機后可以正確搜網(wǎng)注冊,注意找網(wǎng)時間是否過長3.待機界面顯示正常3pw_04
1.開機動畫為影片2.開啟本機號碼長按開機鍵,觀察開機動畫/音樂
1.開機畫面顯示正常,音樂和畫面一致2.開機后可以正確搜網(wǎng)注冊,注意找網(wǎng)時間是否過長3.待機界面顯示正常3Slide48April2023兼容性測試的重要環(huán)節(jié)
1.操作系統(tǒng)兼容性
2.異構(gòu)數(shù)據(jù)庫兼容性
3.新舊數(shù)據(jù)轉(zhuǎn)換
4.異種數(shù)據(jù)兼容性
5.應(yīng)用軟件兼容性
6.硬件兼容性
軟件易用性測試引言ISO9126質(zhì)量模型用戶界面測試優(yōu)秀UI的構(gòu)成為有殘疾障礙的人員測試問題在哪里?
第一次走到新的辦公室,透過落地的巨大玻璃門,可以看到里面的會議室。習(xí)慣的去推門,同時腳步并沒有停下來。結(jié)果。。。
“哐”的一聲巨響,差點整個身子就撞了上去,鼻子已經(jīng)貼到了玻璃上。原來,這扇門是只能拉,而不能推的。引例撞門、飲水機、復(fù)印機……誰的錯誤?門的把手,遙控器,以及任何我們周圍的東西,都是用戶界面。讓人會犯錯誤的設(shè)計,是易用性出了問題。人體工程學(xué)
人體工程學(xué):研究“人-機-環(huán)境”系統(tǒng)中人、機、環(huán)境三大要素之間的關(guān)系,為解決該系統(tǒng)中人的效能、健康問題提供理論與方法的科學(xué)
主要目標:達到易用性。
應(yīng)用范圍:裝修、服飾、硬件、工作環(huán)境等。舉例:微軟的硬件設(shè)計微軟硬件部門所做的一項調(diào)查顯示,辦公中使用可靠而優(yōu)質(zhì)的鼠標和鍵盤,將有助于提高員工的工作效率和士氣。調(diào)查表明,每3個辦公室員工中,就有2個人每天需使用電腦工作至少6小時,約25%的員工每天需使用電腦工作8小時。當員工在電腦屏幕前花費的時間越來越多時,鼠標與鍵盤的質(zhì)量和舒適度就起到了關(guān)鍵的作用。ISO9126質(zhì)量模型質(zhì)量:反映實體滿足明確的和隱含的需要的能力的特性的總和。(------摘自GB/T6583-ISO8404(1994版)《軟件質(zhì)量與質(zhì)量保證術(shù)語》)反映三方面問題:軟件需求、隱性需求、規(guī)范化ISO9126質(zhì)量模型質(zhì)量功能性可靠性易用性效率維護性移植性適合性準確性互操作性保密安全性功能依從性成熟性容錯性易恢復(fù)性可靠依從性易理解性易學(xué)性易操作性吸引性易用依從性時間特性資源利用效率依從性易分析性易改變性穩(wěn)定性易測試性維護依從性適應(yīng)性易安裝性共存性易替換性可移植依從性易用性解釋
易用性是指軟件產(chǎn)品被理解、學(xué)習(xí)、使用和吸引用戶的能力。易理解性:軟件產(chǎn)品使用戶能理解軟件是否合適以及如何能將軟件用于特定的任務(wù)和使用環(huán)境的能力;易學(xué)性:軟件產(chǎn)品使用戶能學(xué)習(xí)它的能力;易操作性:軟件產(chǎn)品使用戶能操作和控制它的能力;吸引性:軟件產(chǎn)品吸引用戶的能力。依從性:軟件產(chǎn)品依附于同易用性相關(guān)的標準、約定、風(fēng)格指南或規(guī)定的能力。易用性測試范疇易用性測試不僅針對應(yīng)用程序,而且還包含用戶手冊等系列文檔的測試。應(yīng)用程序的易用性測試包含:安裝測試功能易用性測試界面測試輔助系統(tǒng)測試等。易用性測試準則一切以用戶為中心。軟件測試員不用設(shè)計UI,只需把自己當作用戶去找UI中的問題。邀請陌生人使用軟件,進行測試。用戶界面測試用于與軟件程序交互的方式稱為用戶界面或UI。所有軟件都有某種UI。雖然UI各不相同,但是從技術(shù)上講,它們與計算機進行同樣的交互—提供輸入和接受輸出。優(yōu)秀UI的構(gòu)成(7個要素)一、符合標準和規(guī)范符合標準和規(guī)范是最重要的用戶界面要素。如果測試的是應(yīng)用程序,則根據(jù)標準或規(guī)范進行易用性測試。如果測試的是平臺軟件,則只能根據(jù)測試經(jīng)驗或感覺進行測試測試。二、直觀用戶界面是否潔凈、不唐突、不擁擠?UI的組織和布局合理嗎?有多余功能嗎?如果其他所有努力失敗,幫助系統(tǒng)能幫忙嗎?相關(guān)測試方法憑借經(jīng)驗或感覺進行測試。嘗試回退性操作。注意有沒有“頭暈”的感覺。記住“幫助”功能的使用。三、一致用戶的使用習(xí)慣:希望對一個程序的操作方式能夠帶到另一個程序中??焖冁I和菜單選項術(shù)語和命名聽眾或使用者相關(guān)測試方法基礎(chǔ):觀察、使用各類型的軟件。測試方法:比較。工作特點:細心。四、靈活例,計算器程序的兩種狀態(tài)體現(xiàn)和影響多種視圖的選擇狀態(tài)跳轉(zhuǎn)狀態(tài)終止和跳過數(shù)據(jù)輸入和輸出相關(guān)測試方法發(fā)揮“好奇心”的特性。跳出常規(guī)。不走尋常路。五、舒適恰當錯誤處理性能舒適性要素是模糊的,主要體現(xiàn)在六、正確市場定位偏差(功能)語言和拼寫(二義性)不良媒體(和軟件保持一致)WYSIWYG(所見即所得)七、實用該屬性僅指具體特性是否實用??紤]軟件特性是否具有實際價值。是否有助于用戶執(zhí)行軟件設(shè)計的功能?為有殘疾障礙的人員測試易用性測試的一個嚴肅主題是輔助選項測試視力損傷,聽力損傷,運動損傷,認知和語言障礙等對使用計算機和軟件會造成極大的困難。國內(nèi)有8296萬殘疾人(06年官方數(shù)據(jù))。關(guān)于殘疾人使用軟件的調(diào)查英國高科技廠商Nomensa對20個國家100個流行網(wǎng)站研究發(fā)現(xiàn)許多網(wǎng)站不符合國際訪問標準。最常見問題是JavaScript使用,以及使用不帶解釋性文字的圖像。大量JavaScript使約10%用戶無法訪問關(guān)鍵信息,因為他們?nèi)狈Ρ匾能浖粓D片的文字描述使盲人能通過使用將文本轉(zhuǎn)化為語音的屏幕文本閱讀軟件“看到”圖像。另一個問題是顏色搭配不夠好,給患有眼疾的用戶訪問網(wǎng)頁帶來了困難。-------CNET科技資訊網(wǎng)2010年12月7日國際報道殘疾人在軟件方面的發(fā)展軟件公司:中國殘疾人服務(wù)網(wǎng)---多層式架構(gòu)數(shù)據(jù)倉庫信息交換網(wǎng)絡(luò)平臺
易用軟件網(wǎng)絡(luò)工廠---易用物業(yè)管理軟件、EUoffice集團OA系統(tǒng)、高校教務(wù)管理系統(tǒng)深圳市殘友軟件有限公司
---IT開發(fā)外包(ITO)和業(yè)務(wù)流程外包(BPO),國際上唯一一家全部由殘疾人軟件技術(shù)精英組成的高科技軟件企業(yè)
法律要求:開發(fā)殘疾人可以使用的用戶界面的軟件有一些法律規(guī)定。
美國:美國公民殘疾人條例(ADA)聲明、居民條例第508款、通信條例第255款
中國:《中華人民共和國殘疾人保障法》(1990年頒布、1991年實施)、《殘疾人教育條例》(1994年頒布并實施)。為有殘疾障礙的人員測試文檔測試軟件開發(fā)過程過程說明輸出產(chǎn)品需求分析明確系統(tǒng)“做什么”軟件需求規(guī)格說明書設(shè)計概要設(shè)計數(shù)據(jù)庫設(shè)計,確定系統(tǒng)的框架、模塊關(guān)系,設(shè)計函數(shù)方法接口概要設(shè)計說明書詳細設(shè)計每個模塊詳細實現(xiàn)流程詳細設(shè)計說明書編碼測試測試計劃,測試需求,需求變更表…..測試總結(jié)部署部署計劃書、用戶手冊、維護手冊需要進行文檔測試的部分本講要點為什么需要進行文檔測試采用什么測試方法測試文檔測試人員參與文檔測試的必要性文檔測試組織方式為什么需要進行需求測試?在軟件開發(fā)過程中,需求分析是最開始的工作,需求分析如果做得不夠詳細或者是偏離用戶需求的話,往往會給項目帶來滅絕性的災(zāi)難。用戶的表達和需求工程師的理解有時間并不會一致,這樣會導(dǎo)致用戶所想的和需求說明書上所描述的有偏差。50%以上的缺陷其實是在軟件需求階段被引入的。由于需求編寫存在問題,不明確,不清晰,不正確、需求遺漏導(dǎo)致的。按照盡可能早的測試原則,測試人員應(yīng)該在需求階段就介入,并貫穿軟件開發(fā)的全過程。測試項目周期需求測試階段測試計劃階段測試設(shè)計階段測試執(zhí)行階段,缺陷跟蹤總結(jié)評估階段需求評審,回想上節(jié)課的測試方法介紹,你認為應(yīng)該采用什么方法呢?靜態(tài)測試-評審需求評審的目的需求評審員就是需要讓需求明確起來,讓測試,開發(fā),需求方都能對需求(這里的需求當然也包括需求實現(xiàn)方式)達成一致。測試人員為什么需要參加需求評審在軟件生命周期中,越晚發(fā)現(xiàn)的錯誤越難修改,修改成本越昂貴軟件經(jīng)歷了需求,設(shè)計,編碼,測試,不同的階段有專業(yè)人士配合完成,由于下游技術(shù)人員對于上游技術(shù)人員的理解偏差,將導(dǎo)致不同階段的產(chǎn)物之間存在不一致的現(xiàn)象。測試人員參與需求評審,充分地理解需求,確保對需求的理解與需求分析人員是一致的;測試人員參與需求評審,從可測試的角度,努力發(fā)現(xiàn)《用戶需求說明書》中不可測試的需求,從而提醒需求分析人員盡早修改;測試人員參與需求評審,從測試人員的角度努力發(fā)現(xiàn)《用戶需求說明書》中的不完整性,從而提醒需求分析人員及時補充遺漏掉的這部分用戶需求。需求規(guī)格說明書的檢查步驟獲取最新版本的軟件需求規(guī)格說明書,同時盡量獲取用戶原始需求文檔閱讀和嘗試理解需求規(guī)格說明書中描述的所有需求項對照需求規(guī)格說明書檢查列表進行檢查和記錄針對檢查結(jié)果進行討論,修訂需求規(guī)格說明書需求規(guī)格說明書檢查列表example序號檢查項檢查結(jié)果說明1用戶覆蓋了用戶提出的所有需求項是【】否【】NA【】2用詞是否清晰,語義是否存在有歧義的地方是【】否【】NA【】3是否清楚的描述了軟件需要做什么以及什么不做是【】否【】NA【】4是否描述了軟件的目標環(huán)境,包括軟硬件環(huán)境是【】否【】NA【】5是否對需求項進行了合理的編號是【】否【】NA【】6需求項是否前后一致、彼此不沖突是【】否【】NA【】7是否清楚的說明了系統(tǒng)的每個輸入、輸出格式,以及輸入與輸出之間的對應(yīng)關(guān)系是【】否【】NA【】8是否清晰的描述了軟件系統(tǒng)的性能要求是【】否【】NA【】9需求的優(yōu)先級是否合理分配是【】否【】NA【】10是否描述了各種約束條件是【】否【】NA【】舉例1-1實例:項目監(jiān)管
縣級主管登錄系統(tǒng)后,可以查看項目經(jīng)辦人提交的項目實施進度,系統(tǒng)顯示當前時間10日范圍內(nèi)的待辦項目列表(包括當前時間之前未辦事項及未來一段時間的待辦事項)。縣級主管可針對項目經(jīng)辦人提交的項目進度安排進行審核,審核通過后提交至市級,否則駁回至項目經(jīng)辦人重新修改,若出現(xiàn)異常,縣級主管可以直接強行終止項目,并填寫終止原因,提交至市級審核。舉例1-2以上需求存在的問題是:(1)“當前時間10日范圍內(nèi)”描述模糊,沒有明確的描述。(2)“未來一段時間”是多長時間?(4)“若出現(xiàn)異?!保惓J窃鯓拥那闆r?舉例2-1“產(chǎn)品應(yīng)在不少于每60秒的正常周期內(nèi)提供狀態(tài)信息”存在問題:需求不可測
產(chǎn)品的哪個模塊在哪個位置提供具體哪些狀態(tài)信息一定要每六十秒,誤差允許?修改建議后臺任務(wù)管理器應(yīng)該以誤差上下不超過10秒的60秒間隔,在用戶界面的指定位置顯示狀態(tài)信息如果后臺進程處理正常,那么應(yīng)該顯示任務(wù)已完成的百分數(shù)/比任務(wù)完成時,應(yīng)顯示相關(guān)的信息后臺任務(wù)出錯應(yīng)該顯示錯誤信息舉例2-2“產(chǎn)品應(yīng)瞬間在顯示和隱藏不可打印字符間切換”存在問題:需求不可行
產(chǎn)品的那個模塊瞬間?不可打印字符?產(chǎn)品自動切換?有無觸發(fā)條件?修改后用戶能夠在一個由特定觸發(fā)條件激活處于編輯的文檔中在顯示和隱藏所有HTML標記間切換舉例2-3“如果可能,主管號碼應(yīng)通過聯(lián)機校驗,而不是通過主全體主管號碼列表校驗”存在問題:需求模糊可能?舉例2-4用例:業(yè)務(wù)單據(jù)查詢典型過程:打開查詢界面鍵入查詢條件確定并提交查詢系統(tǒng)返回相關(guān)信息存在問題:不可測試
輸入的查詢條件包括哪些提交查詢之前是否會驗證輸入數(shù)據(jù)的正確性輸入數(shù)據(jù)的單位,范圍有無限制所有條件都不輸入是否意味著能查詢出所有業(yè)務(wù)單據(jù)返回業(yè)務(wù)單據(jù)包含哪些信息?需求點正確性:對照原始需求規(guī)格說明書必要性:不能回朔到出處的需求項可能是多余的優(yōu)先級:恰當?shù)貏澐植俗R明確性:不能使用含糊的詞匯可測性:每項需求都必須是可驗證的一致性:內(nèi)容前后一致可修改性:良好的組織結(jié)構(gòu)具體詳看(檢查單)測試需求的分析和確定檢查需求規(guī)格說明書開展方式審查過程的主持人需要根據(jù)項目的計劃以及質(zhì)量管理的計劃對此次的審查會議制定一個詳細的計劃。(審查對象,審查組人員組成以及職責(zé))審查準備:文檔作者向相關(guān)人員發(fā)布文檔;審查人員盡可能發(fā)現(xiàn)一些問題;文檔作者修正問題;確定會議時間、地點、設(shè)備;審查會議:文檔作者與審查人員做深入交流回歸審查總結(jié),VSS歸檔(VSS版本控制器)4軟件測試項目管理軟件測試項目管理
軟件測試項目管理的概述軟件測試項目的組織軟件測試項目的過程管理軟件測試項目的資源管理測試項目的進度管理測試項目的風(fēng)險管理測試項目的質(zhì)量管理和配置管理軟件測試文檔的管理軟件測試項目管理的概述軟件項目管理的共性軟件測試項目管理的特點軟件項目管理的共性人員(People)
問題(Problem)過程(Process)項目軟件測試項目管理的特點軟件質(zhì)量標準定義不準確、任務(wù)邊界模糊,如何確定什么時候軟件測試可以結(jié)束,找不到嚴重的缺陷并不代表軟件不存在嚴重的缺陷。軟件測試項目的變化控制和預(yù)警分析要求高。軟件測試項目具有智力密集、勞動密集的特點,受人力資源影響最大,項目成員的結(jié)構(gòu)、責(zé)任心、能力和穩(wěn)定性對測試執(zhí)行、產(chǎn)品質(zhì)量有很大的影響。測試任務(wù)的分配難測試要求人力資源十分穩(wěn)定。由于軟件測試項目不僅是一個技術(shù)工作,而且要求對產(chǎn)品的功能、特性需要非常了解。軟件測試人員在待遇、地位可能受到一些不公正的待遇,軟件測試項目的組織軟件測試項目的人員組織模式測試項目的管理原則
測試計劃先行
建立優(yōu)先級
建立客觀的評價標準
軟件測試項目的過程管理測試項目啟動測試計劃階段測試設(shè)計階段測試執(zhí)行階段測試結(jié)果的審查和分析測試計劃階段測試項目計劃的整體目標是為了確定測試的任務(wù)、所需的各種資源和投入、預(yù)見可能出現(xiàn)的問題和風(fēng)險,以指導(dǎo)測試的執(zhí)行,最終實現(xiàn)測試的目標,保證軟件產(chǎn)品的質(zhì)量。制定測試計劃,要達到的目標有:制定一個現(xiàn)實可行的、綜合的計劃,包括每項測試活動的對象、范圍、方法、進度和預(yù)期結(jié)果;為項目實施建立一個組織模型,并定義每個角色的責(zé)任和任務(wù);開發(fā)有效的測試模型,能正確地驗證正在開發(fā)的軟件系統(tǒng);確定測試所需要的時間和資源,以保證其可獲得性、有效性;確立每個測試階段測試完成以及測試成功的標準、要實現(xiàn)的目標;識別出測試活動中各種風(fēng)險,并消除可能存在的風(fēng)險,降低那些不可能消除的風(fēng)險所帶來的損失
測試計劃階段
(2)測試的輸入標準整體項目計劃框架;需求規(guī)格說明書;技術(shù)知識或業(yè)務(wù)知識標準
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 建筑施工合同轉(zhuǎn)讓協(xié)議
- 砂礫購銷合同
- 房地產(chǎn)項目顧問服務(wù)合同
- 售貨機銷售合同協(xié)議
- 醫(yī)藥研發(fā)服務(wù)合同
- 第12課《自定主題活動三:制作方便面盒滑翔機》(教學(xué)設(shè)計)-2023-2024學(xué)年四年級下冊綜合實踐活動浙教版
- Unit 6 教學(xué)設(shè)計2024-2025學(xué)年人教版(2024)七年級英語上冊
- 六安職業(yè)技術(shù)學(xué)院《獸醫(yī)流行病學(xué)專題》2023-2024學(xué)年第二學(xué)期期末試卷
- 石家莊城市經(jīng)濟職業(yè)學(xué)院《化學(xué)合成實驗》2023-2024學(xué)年第二學(xué)期期末試卷
- 中國地質(zhì)大學(xué)(北京)《水生態(tài)保護與修復(fù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 內(nèi)蒙古鄂爾多斯杭錦經(jīng)濟開發(fā)區(qū)地質(zhì)災(zāi)害危險性評估報告
- 安徽教育出版社小學(xué)三年級下冊綜合實踐活動教案(全冊)
- DB23T 2656-2020樺樹液采集技術(shù)規(guī)程
- 2023年蘇州職業(yè)大學(xué)單招職業(yè)適應(yīng)性測試題庫及答案解析
- 中國故事英文版哪吒英文二篇
- 2023年中智集團及下屬單位招聘筆試題庫及答案解析
- GB/T 8888-2003重有色金屬加工產(chǎn)品的包裝、標志、運輸和貯存
- GB/T 32685-2016工業(yè)用精對苯二甲酸(PTA)
- GB/T 21872-2008鑄造自硬呋喃樹脂用磺酸固化劑
- 酒店業(yè)主代表崗位職責(zé)標準(8篇)
- 上海市中小學(xué)生語文學(xué)業(yè)質(zhì)量綠色指標測試
評論
0/150
提交評論