亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        淺議軟件可靠及安全測試

        2009-04-28 09:06:26
        商情 2009年41期
        關(guān)鍵詞:軟件可靠性測試方法

        何 迅

        [摘要]本文在介紹軟件可靠性及安全性的基礎(chǔ)上,討論軟件可靠性測試的特點(diǎn)、進(jìn)行軟件可靠性測試的基本條件,以及軟件安全性測試的必要條件和常用的測試方法。并簡要闡述軟件測試在軟件生產(chǎn)中是必不可少的質(zhì)量保障手段。

        [關(guān)鍵詞]軟件可靠性 軟件安全性 基本條件 測試方法

        現(xiàn)在的信息系統(tǒng)應(yīng)用越來越廣泛、越來越深入和重要,成為社會(huì)生活不可或缺的東西。而在信息系統(tǒng)中,軟件的比例愈來愈大、愈來愈復(fù)雜、地位愈來愈關(guān)鍵。軟件的可靠性是整個(gè)信息系統(tǒng)可靠性的重要因素,甚至是決定因素。軟件的可靠性是由軟件系統(tǒng)中潛在的漏洞情況決定的。軟件漏洞在復(fù)雜的信息系統(tǒng)運(yùn)行過程中,在一定的輸入信息和運(yùn)行環(huán)境下,潛在的錯(cuò)誤有時(shí)會(huì)顯露出來,對(duì)系統(tǒng)的運(yùn)行造成嚴(yán)重影響。例如1998年前蘇聯(lián)一次載入飛行不能順利返回地面,1996年歐洲阿麗亞娜火箭的發(fā)射失敗等,都是由于系統(tǒng)的軟件故障造成的。特別要注意的是軟件往往是系統(tǒng)可靠性的薄弱環(huán)節(jié),因此軟件系統(tǒng)的可靠性需要引起有關(guān)人員的格外重視。

        軟件可靠性是指在規(guī)定條件下,在規(guī)定時(shí)間內(nèi),軟件不引起系統(tǒng)失效的概率。該概率是系統(tǒng)輸入和系統(tǒng)使用的函數(shù),也是軟件中存在故障的函數(shù),系統(tǒng)輸入將確定是否會(huì)遇到存在的故障。

        軟件可靠性測試指在有使用代表性的環(huán)境中,為進(jìn)行軟件可靠性估計(jì)對(duì)該軟件進(jìn)行的功能測試。需要說明的是,“使用代表性”指的是在統(tǒng)計(jì)意義下該環(huán)境能反映出軟件的使用環(huán)境特性。軟件可靠性測試一般在軟件驗(yàn)收階段進(jìn)行,即可以在實(shí)驗(yàn)室也可以在現(xiàn)場測試運(yùn)行。一般僅適用于有可靠性定量要求、且可能會(huì)影響安全和任務(wù)完成的關(guān)鍵軟件。

        軟件系統(tǒng)的可靠性測試是軟件系統(tǒng)可靠性質(zhì)量保證過程中非常關(guān)鍵的一步,根據(jù)國外有關(guān)資料統(tǒng)計(jì)和工作實(shí)踐證明,可靠性測試對(duì)提高軟件的可靠性有重大作用,其他測試不能代替,但是軟件可靠性測試又不能代替其他軟件測試的作用。軟件可靠性測試的主要目的有: (1)通過在有使用代表性的環(huán)境中執(zhí)行軟件,以證實(shí)軟件需求是否正確實(shí)現(xiàn)。(2)為進(jìn)行軟件可靠性估計(jì)采集準(zhǔn)確的數(shù)據(jù)。估計(jì)軟件可靠性一般可分為四個(gè)步驟,即數(shù)據(jù)采集、模型選擇、模型擬合以及軟件可靠性評(píng)估??梢哉J(rèn)為,數(shù)據(jù)采集是整個(gè)軟件可靠性估計(jì)工作的基礎(chǔ),數(shù)據(jù)的準(zhǔn)確與否關(guān)系到軟件可靠性評(píng)估的準(zhǔn)確度。 (3)通過軟件可靠性測試找出所有對(duì)軟件可靠性影響較大的錯(cuò)誤。

        軟件可靠性測試分為四個(gè)階段:

        1.制訂測試方案

        本階段的目標(biāo)是識(shí)別軟件功能需求,觸發(fā)該功能的輸入和對(duì)應(yīng)的數(shù)據(jù)域,確定相關(guān)的概率分布及需強(qiáng)化測試的功能。

        (1)分析功能需求。分析各種功能需求,識(shí)別觸發(fā)該功能的輸入及相關(guān)的數(shù)據(jù)域(包括合法與不合法的兩部分)。

        (2)定義失效等級(jí)。判斷是否存在出現(xiàn)危害度較大的1級(jí)和2級(jí)失效的可能性。如果這種可能性存在,則應(yīng)進(jìn)行故障樹分析,標(biāo)識(shí)出所有可能造成嚴(yán)重失效的功能需求和其相關(guān)的輸入域。

        (3)確定概率分布。確定各種不同運(yùn)行方式的發(fā)生概率,判斷是否需要對(duì)不同的運(yùn)行方式進(jìn)行分別測試。如果需要,則應(yīng)給出各種運(yùn)行方式下各數(shù)據(jù)域的概率分布;否則,給出各數(shù)據(jù)域的概率分布。判斷是否需要強(qiáng)化測試某些功能。

        (4)整理概率分布的信息將這些信息編碼送入數(shù)據(jù)庫。

        2.制訂測試計(jì)劃

        本階段的目標(biāo)是:

        (1)根據(jù)前一階段整理的概率分布信息生成相對(duì)應(yīng)的測試實(shí)例集,并計(jì)算出每一測試實(shí)例預(yù)期的軟件輸出結(jié)果。本階段需要注意:在按概率分布隨機(jī)選擇生成測試實(shí)例的同時(shí),要保證測試的覆蓋面。

        (2)編寫測試計(jì)劃,確定測試順序,分配測試資源。由于本階段前一部分的工作需要考慮大量的信息和數(shù)據(jù),因此需要一個(gè)軟件支持工具,建立數(shù)據(jù)庫,并產(chǎn)生測試實(shí)例。另外,有時(shí)預(yù)測軟件輸出結(jié)果也需要大量的計(jì)算,有些復(fù)雜的軟件甚至要用到仿真器模擬輸出結(jié)果。總之,具體實(shí)施與被測應(yīng)用軟件的實(shí)際功能類型有關(guān)。

        3.測試

        本階段進(jìn)行軟件測試。需注意的是被測軟件的測試環(huán)境(包括硬件配置和軟件支撐環(huán)境)應(yīng)和預(yù)期的實(shí)際使用環(huán)境盡可能一致,對(duì)某些環(huán)境要求比較嚴(yán)格的軟件(如嵌入式軟件)則應(yīng)完全一致。測試時(shí)按測試計(jì)劃和順序?qū)γ恳粋€(gè)測試實(shí)例進(jìn)行測試,判斷軟件輸出是否符合預(yù)期結(jié)果。測試時(shí)應(yīng)記錄測試結(jié)果、運(yùn)行時(shí)間和判斷結(jié)果。如果軟件失效,那么還應(yīng)記錄失效現(xiàn)象和時(shí)間,以備以后核對(duì)。

        4.編寫測試報(bào)告

        按軟件可靠性估計(jì)的要求整理測試記錄,并將結(jié)果寫成報(bào)告。筆者認(rèn)為,軟件可靠性測試的關(guān)鍵在于:對(duì)需求、輸入、數(shù)據(jù)域的識(shí)別及相關(guān)概率分布的確定。按照概率分布隨機(jī)生成測試實(shí)例,并確定測試順序。

        軟件可靠性是軟件質(zhì)量指標(biāo)體系中最重要的質(zhì)量指標(biāo)之一,軟件可靠性指標(biāo)的高低,決定了軟件是否能穩(wěn)定、可靠性地工作。軟件中的錯(cuò)誤是在軟件的開發(fā)過程中,因?yàn)槿说腻e(cuò)誤而引入到軟件中的,而且這種錯(cuò)誤的出現(xiàn)是不可避免的。經(jīng)過可靠性測試的軟件系統(tǒng)可以大大降低因軟件系統(tǒng)的實(shí)效而造成的損失。但是軟件可靠性測試也不是萬能的,它可以有效降低軟件系統(tǒng)實(shí)效的可能,但是不能將軟件系統(tǒng)中存在的錯(cuò)誤都排除(實(shí)際上在可預(yù)見的未來也不可能把軟件中的所有錯(cuò)誤都排除)。

        對(duì)軟件進(jìn)行安全測試是軟件測試的重要研究內(nèi)容。軟件安全測試是保證軟件能夠安全使用的最主要的手段,如何進(jìn)行高效的安全測試成為業(yè)界關(guān)注的話題。多年的安全測試經(jīng)驗(yàn)告訴我們,做好軟件安全測試的必要條件是:一是充分了解軟件安全漏洞,二是擁有高效的軟件安全測試技術(shù)和測試工具。

        軟件安全性測試的方法:(1)形式化安全測試。模型檢測用狀態(tài)遷移系統(tǒng)S描述軟件的行為,用時(shí)序邏輯、計(jì)算樹邏輯或演算公式F表示軟件執(zhí)行必須滿足的性質(zhì),通過自動(dòng)搜索S中不滿足公式F的狀態(tài)來發(fā)現(xiàn)軟件中的漏洞。(2)基于模型的安全功能測試?;谀P偷臏y試方法是對(duì)軟件的行為和結(jié)構(gòu)進(jìn)行建模,生成測試模型,由測試模型生成測試用例.常用的軟件測試模型有有限狀態(tài)機(jī)、UML模型、馬爾可夫鏈等。(3)語法測試。語法測試是根據(jù)被測軟件的功能接口的語法生成測試輸入,檢測被測軟件對(duì)各類輸入的響應(yīng)。接口可以有多種類型,命令行、文件、環(huán)境變量、套接字等。語法測試基于這樣一種思想,軟件的接口或明確或隱含規(guī)定了輸入的語法。語法定義了軟件接受的輸入數(shù)據(jù)的類型、格式。語法定義可采用BNF或正則表達(dá)式。語法測試的步驟是識(shí)別被測軟件接口的語言,定義語言的語法,根據(jù)語法生成測試用例并執(zhí)行測試。生成的測試輸入應(yīng)當(dāng)包含各類語法錯(cuò)誤,符合語法的正確輸入。不符合語法的畸形輸入等。通過察看被測軟件對(duì)各類輸入的處理情況,確定被測軟件是否存在安全缺陷。語法測試適用于被測軟件有較明確的接口語法,易于表達(dá)語法并生成測試輸入的情況。語法測試結(jié)合故障注入技術(shù)可得到更好的測試效果。(4)模糊測試。模糊測試(Fuzz Testing)是一種發(fā)現(xiàn)安全漏洞的有效的測試方法,在安全性測試中越來越受到重視。模糊測試將隨機(jī)的壞數(shù)據(jù)插入程序,觀察程序是否能容忍雜亂輸入。模糊測試是不合邏輯的,只是產(chǎn)生雜亂數(shù)據(jù)攻擊程序。采用模糊測試攻擊應(yīng)用程序可發(fā)現(xiàn)其他采用邏輯思維來測試很難發(fā)現(xiàn)的安全缺陷。(5)基于屬性的測試。相關(guān)報(bào)道描述了基于屬性的測試方法,采用TASPEC語言對(duì)軟件的安全屬性進(jìn)行描述生成安全屬性規(guī)格說明,利用程序切片技術(shù)抽取與這個(gè)安全屬性相關(guān)的代碼,測試這部分代碼是否違反安全屬性規(guī)格說明?;趯傩缘臏y試有針對(duì)性的測試目標(biāo)軟件的特定安全屬性,可滿足安全屬性的分類和優(yōu)先級(jí)排序要求,且部分與具體軟件無關(guān)的屬性規(guī)格說明是可重用的。

        軟件測試一方面是業(yè)務(wù)需求檢查、驗(yàn)證的一種手段,也是檢查軟件功能是否按照系統(tǒng)需求進(jìn)行設(shè)計(jì),是否符合客戶的需要;另一方面也是通過有限的測試數(shù)據(jù)案例檢查發(fā)現(xiàn)程序中存在的Bug是保證軟件質(zhì)量至關(guān)重要的一步。對(duì)于像銀行這樣的公司,對(duì)系統(tǒng)的要求是每天24小時(shí)不間斷工作,特別是國內(nèi)各商業(yè)銀行大集中以后,如果軟件存在Bug引起系統(tǒng)不穩(wěn)定,一旦出現(xiàn)系統(tǒng)宕機(jī)或客戶資金損失,就會(huì)造成全國范圍內(nèi)業(yè)務(wù)無法辦理,將產(chǎn)生巨大的影響。所以說,對(duì)于一個(gè)大型應(yīng)用處理軟件系統(tǒng),測試貫徹于其中,是一項(xiàng)非常重要的工作,是項(xiàng)目研發(fā)中一個(gè)相當(dāng)重要的步驟。而測試質(zhì)量的好壞直接關(guān)系到整個(gè)系統(tǒng)能否按期正常投產(chǎn),關(guān)系到系統(tǒng)投產(chǎn)后業(yè)務(wù)處理是否正確,關(guān)系到整個(gè)系統(tǒng)運(yùn)行的可靠性、穩(wěn)定性。

        管理大師彼得?德魯克說:“組織管理的目的就是為了使人們能為實(shí)現(xiàn)目標(biāo)而有效地工作,為此必須設(shè)計(jì)和維持一種職務(wù)結(jié)構(gòu)”。因此,要做好軟件測試工作,在軟件公司內(nèi)部必須建立一個(gè)專門負(fù)責(zé)軟件產(chǎn)品測試的組織,并配備負(fù)責(zé)軟件公司全面測試工作的測試管理人員和配備一定數(shù)量的具有測試?yán)碚?、掌握軟件測試技術(shù)的專業(yè)測試人員??梢愿鶕?jù)軟件公司規(guī)模的大小設(shè)置軟件測試組織的組織架構(gòu)、隸屬關(guān)系和確定軟件測試人員的數(shù)量。

        近年來,以軟件測試為中心的軟件質(zhì)量保障技術(shù)在軟件生產(chǎn)實(shí)踐中得到了迅速發(fā)展,軟件測試已經(jīng)成為軟件生產(chǎn)中必不可少的質(zhì)量保障手段。

        參考文獻(xiàn):

        [1]鄭人杰,殷人昆,陶永雷.實(shí)用軟件工程[M].北京:清華大學(xué)出版社.

        [2]何國偉.軟件可靠性[M].北京:國防工業(yè)出版社,1998.

        [3]朱鴻,金凌紫.軟件質(zhì)量保證與測試[M].北京:科學(xué)出版社,1997.

        [4]Stevens W R著,施振川譯.UNIX網(wǎng)絡(luò)編程[M].北京:清華大學(xué)出版社,2001.

        猜你喜歡
        軟件可靠性測試方法
        基于泊松對(duì)相關(guān)的偽隨機(jī)數(shù)發(fā)生器的統(tǒng)計(jì)測試方法
        無線電發(fā)射設(shè)備雜散發(fā)射的測試方法探討
        基于云計(jì)算的軟件自動(dòng)化測試方法
        電子制作(2019年16期)2019-09-27 09:34:56
        DLD-100C型雷達(dá)測試方法和應(yīng)用
        電子制作(2019年15期)2019-08-27 01:12:02
        軟件可靠性工程綜合應(yīng)用建模技術(shù)研究
        軟件可靠性設(shè)計(jì)技術(shù)應(yīng)用研究
        S700K轉(zhuǎn)轍機(jī)保持力測試方法探討
        數(shù)控系統(tǒng)軟件可靠性設(shè)計(jì)與故障分析技術(shù)
        對(duì)改良的三種最小抑菌濃度測試方法的探討
        簡談使用BoundsChecker進(jìn)行計(jì)算機(jī)聯(lián)鎖系統(tǒng)人機(jī)界面軟件可靠性測試
        91视频88av| 亚洲成人激情深爱影院在线 | 国产精品一区二区性色| 岳好紧好湿夹太紧了好爽矜持| 亚洲av无码一区二区三区人妖| 国产欧美亚洲精品a| 波多野结衣一区| 97色综合| 一本色道久久综合亚州精品| 日本一区二区三区经典视频| 国产一区二区三区毛片| 亚洲爆乳精品无码一区二区| 亚洲春色AV无码专区在线播放| 精品国产日韩无 影视| 亚洲福利网站在线一区不卡 | 欧美国产伦久久久久久久| 亚洲乱码中文字幕一线区| 天天综合网网欲色| 亚洲av无码专区亚洲av伊甸园| 国产v视频| 男人深夜影院无码观看| 激情五月天色婷婷久久| 国产内射爽爽大片视频社区在线 | 中文字幕熟妇人妻在线视频| 久99久精品免费视频热77| 国产一区二区三区porn| 成年女人免费v片| 中文字幕无码不卡一区二区三区 | 亚洲国产亚综合在线区| 最近日本中文字幕免费完整| 久久精品国产99精品国偷| 91啦视频在线观看| 大量老肥熟女老女人自拍| 免费看黄视频亚洲网站| 粗大猛烈进出白浆视频 | 少妇无码av无码专区线| 青青视频一区| 中文字幕精品乱码一区| 人妻熟女翘屁股中文字幕| 中文字幕无线码免费人妻| 久久精品娱乐亚洲领先|