中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

前端特效網(wǎng)站cnzz統(tǒng)計

前端特效網(wǎng)站,cnzz統(tǒng)計,wordpress模板兔,做網(wǎng)站推廣的流程1 單元測試基礎(chǔ) 1.單元測試:單元測試又稱模塊測試,屬于白盒測試,是最小單位的測試。模塊分為程序模塊和功能模塊。功能模塊指實現(xiàn)了一個完整功能的模塊(單元),一個完整的程序單元具備輸入、加工和輸出三個…

1 單元測試基礎(chǔ)

1.單元測試:單元測試又稱模塊測試,屬于白盒測試,是最小單位的測試。模塊分為程序模塊和功能模塊。功能模塊指實現(xiàn)了一個完整功能的模塊(單元),一個完整的程序單元具備輸入、加工和輸出三個環(huán)節(jié)。而且每個程序單元都應(yīng)該有正規(guī)的規(guī)格說明,使之對其輸入、加工和輸出的關(guān)系做出名明確的描述。

2.測試驅(qū)動:驅(qū)動被測試模塊正常運行起來的實體

3.測試樁:代替被測模塊調(diào)用的子模塊的實體,該實體一般為樁函數(shù)。

4.測試覆蓋:評測測試過程中已經(jīng)執(zhí)行的代碼的多少。

5.覆蓋率:代碼的覆蓋程度,一種度量方式。針對代碼的測試覆蓋率有許多種度量方式,定義如下:

  • 語句覆蓋:也稱為行覆蓋,段覆蓋和基本塊覆蓋。它度量每一個可執(zhí)行語句是否被執(zhí)行到了。
  • 判定覆蓋:也被稱為分支覆蓋,所有邊界覆蓋,基本路徑覆蓋,判定路徑覆蓋。它度量是否每個BOO型的表達式取值true和false在控制結(jié)構(gòu)中都被測試到了。
  • 條件覆蓋:它獨立的度量每一個子表達式,報告每一個子表達式的結(jié)果的true或false。這個度量和判定覆蓋相似,但是對控制流更敏感。不過,完全的條件覆蓋并不能保證完全的判定覆蓋。
  • 路徑覆蓋:也稱為斷言覆蓋,它度量了是否函數(shù)的每一個可能的分支都被執(zhí)行了。路徑覆蓋的一個好處是:需要徹底的測試。但有兩個缺點:一是,路徑是以分支的指數(shù)級別增加的,例如:一個函數(shù)包含10個IF語句,就有1024個路徑要測試。如果加入一個IF語句,路徑數(shù)就達到2048;二是,許多路徑不可能與執(zhí)行的數(shù)據(jù)無關(guān)。
  • 循環(huán)覆蓋:這個度量報告你是否執(zhí)行了每個循環(huán)體零次、只有一次還是多余一次(連續(xù)地)。對于do-while循環(huán),循環(huán)覆蓋報告你是否執(zhí)行了每個循環(huán)體只有一次還是多余一次(連續(xù)地)。這個度量的有價值的方面是確定是否對于while循環(huán)和for循環(huán)執(zhí)行了多于一次,這個信息在其它的覆蓋率報告中是沒有的。

?2 測試的環(huán)境構(gòu)成

何時進行單元測試?單元測試在編碼階段進行。在源程序代碼編制完成、經(jīng)過評審和驗證、確認沒有語法錯誤之后,就可以開始進行單元測試的測試用例設(shè)計。要利用軟件設(shè)計文檔,設(shè)計可以驗證程序功能、找出程序錯誤的多個測試用例。
對于每一組輸入,應(yīng)該有預(yù)期的正確結(jié)果。在單元測試時,如果模塊不是獨立的程序,需要輔助測試模塊,有兩種輔助模塊:

  • 驅(qū)動模塊(Driver):所測模塊的主程序。它接收測試數(shù)據(jù),把這些數(shù)據(jù)傳遞給所測試模塊,最后再輸出測試結(jié)果。當被測試模塊能完成一定功能時,也可以不要驅(qū)動模塊。
  • 樁模塊(Stub):用來代替所測模塊調(diào)用的子模塊。

3 測試方法和過程

3.1 測試用例設(shè)計

1.測試用例的組成(在單元測試中測試用例基本上由測試腳本組成)

??? 用例運行前置條件
??? 被測模塊/單元所需環(huán)境(全局變量賦值或初始化實體)
??? 啟動測試驅(qū)動
??? 設(shè)置樁
??? 調(diào)用被測模塊
??? 設(shè)置預(yù)期輸出條件判斷
??? 恢復(fù)環(huán)境(包括清除樁)

2.測試用例的設(shè)計原則

??? 一個好的測試用例在于能夠發(fā)現(xiàn)至今沒有發(fā)現(xiàn)的錯誤;
??? 測試用例應(yīng)由測試輸入數(shù)據(jù)和與之對應(yīng)的預(yù)期輸出結(jié)果這兩部分組成;
??? 在測試用例設(shè)計時,應(yīng)當包含合理的輸入條件和不合理的輸入條件;
??? 為系統(tǒng)運行起來而設(shè)計測試用例;
??? 為正向測試而設(shè)計測試用例;
??? 為逆向測試而設(shè)計測試用例;
??? 為滿足特殊需求而設(shè)計測試用例;
??? 為代碼覆蓋而設(shè)計測試用例;

3.用例設(shè)計方法
1)??????? 規(guī)范(規(guī)格)導(dǎo)出發(fā)
2)??????? 等價類劃分法
3)??????? 邊界值分析法
4)??????? 狀態(tài)轉(zhuǎn)移測試法
5)??????? 分支測試法
6)??????? 條件測試法
7)??????? 數(shù)據(jù)定義-使用測試法(又名數(shù)據(jù)流測試法)
8)??????? 內(nèi)部邊界值測試法
9)??????? 錯誤猜測法
4. 特定的用例測試設(shè)計
1)聲明測試:檢查模塊中的所有變量是否被聲明。經(jīng)驗表明,大量重要的錯誤都是由于變量沒有被聲明或沒有被正確的聲明而引起的。
2)路徑測試:要求模塊中所有可能的路徑都被執(zhí)行一遍,屬邏輯覆蓋測試。
基本路徑測試:由于實際中,一個模塊中的路徑可能非常多,由于時間和資源有限,不可能一一測試到。這就需要把測試所有可能路徑的目標減少到測試足夠多的路徑,以獲得對模塊的信心。要測試的最小路徑集就是基本測試路徑集?;緶y試路徑集要保證:

??? 每個確定語句的每一個方向要測試到;
??? 每條語句最少執(zhí)行一次。

3)循環(huán)測試:重點檢查循環(huán)的條件-判斷部分以及邊界條件。測試循環(huán)是一種特殊的路徑測試,因為循環(huán)比其他語句都復(fù)雜一些。循環(huán)中錯誤的發(fā)生機會比其他代碼構(gòu)成部分多。因此,對于任何給定的循環(huán)測試應(yīng)該包括測試下面每一條件的測試用例:

???? 循環(huán)不執(zhí)行;
???? 執(zhí)行一次循環(huán);
??? 執(zhí)行兩次循環(huán);
??? 反映執(zhí)行典型的循環(huán)的執(zhí)行次數(shù);
??? 如果有最大循環(huán)次數(shù),最大循環(huán)次數(shù)減1;
??? 最大循環(huán)次數(shù);
??? 大于最大循環(huán)次數(shù)。

對于增量和減量不是1的FOR語句,要特別注意,因為程序員習慣于增量1。
4) 循環(huán)嵌套:循環(huán)嵌套使邏輯的次數(shù)呈幾何級數(shù)增長,設(shè)計測試嵌套循環(huán)的測試用例應(yīng)該包括的測試條件有:

??? 把外循環(huán)設(shè)置為最小值,并運行內(nèi)循環(huán)所有可能的情況;
??? 把內(nèi)循環(huán)設(shè)置為最小值,并運行外循環(huán)所有可能的情況;
??? 把所有的循環(huán)變量都設(shè)置為最小值運行;
??? 把所有的循環(huán)變量都設(shè)置為最大值運行;
???? 把外循環(huán)設(shè)置為最大值,并運行內(nèi)循環(huán)所有可能的情況;
??? 把內(nèi)循環(huán)設(shè)置為最大值,并運行外循環(huán)所有可能的情況;

5) 邊界值測試:指程序內(nèi)部邊界測試。檢查確定代碼在任何邊界情況下都不會出差錯。重點檢查小于、等于和大于邊界條件的情況。邊界值測試是指專門設(shè)計用來測試當條件語句中引用的值處在邊界或邊界附近時系統(tǒng)反映的測試。被測試語句的最好的例子就是“IF-THEN…ELSE-ENDIF”部分。這樣語句的例子如:
IF a <= 123 THEN
b = 1
ELSE IF a >= 123 THEN
b = 2
ELSE b = 3
END IF
?????????? 上面例子中的邊界值測試用例應(yīng)該至少包括a的以下值:122,123,124。當a=123時,b=1還是2。(找出邏輯判斷的矛盾)
6)接口測試:檢查模塊的數(shù)據(jù)流(輸入、輸出)是否正確。檢查輸入的參數(shù)和聲明的自變量的個數(shù),數(shù)據(jù)類型和輸入順序是否一致。檢查全局變量是否被正確的定義和使用等。
7)確認測試:是否接受有效輸入數(shù)據(jù)(操作),拒絕無效數(shù)據(jù)(操作)。
8)事務(wù)測試:輸入->輸出,錯誤處理。

3.2測試用例執(zhí)行

一般來說,做單元測試均采用的是商用的測試工具或自行開發(fā)的測試工具,用例的編寫都是在測試工具上完成,測試用例都是一些測試腳本,都以文件的方式來保存,故其用例的執(zhí)行過程主要是由測試工具根據(jù)所編寫的具體的測試用例腳本來完成,這樣對于用例的管理和執(zhí)行也非常靈活。
在特定場合,比如某種壓力測試或極限測試,對于測試執(zhí)行過程時間很長時(幾個小時以上),一般都預(yù)先編寫好用例(確保用例無誤),使用空閑機或非工作時間執(zhí)行測試用例,這樣操作起來較節(jié)約時間。
在用例的執(zhí)行過程中務(wù)必注意如下事項:

???? 程序的執(zhí)行過程―――便于構(gòu)造發(fā)散用例
??? 不要放過任何細節(jié)―――這種細節(jié)可能就是問題

3.3測試優(yōu)化和策略

在測試的過程中為了提高測試效率和效果,不斷的減少冗余勞動,也為后期的回歸測試和測試管理帶來很大的方便,不至于感到測試很混亂無序。因此我們要對測試用例和測試執(zhí)行進行不斷的優(yōu)化,以測試策略為指導(dǎo)方針進行測試。

1、測試用例的優(yōu)化
??? 測試用例的優(yōu)化主要是指用例的合并、修改和刪除,減少冗余的無價值的測試,其優(yōu)化依據(jù)來源于測試后的測試數(shù)據(jù)分析和評估,其中測試覆蓋也是用例優(yōu)化的主要參考。

2、測試執(zhí)行的優(yōu)化
??????? 測試執(zhí)行的優(yōu)化主要是指測試步驟的優(yōu)化,減少測試人員的手工操作,因為太多的手工操作會導(dǎo)致測試人員很厭倦,直接影響測試效果,優(yōu)化依據(jù)來源于測試總結(jié)。
3、測試策略
??? 在測試過程中由于時間或資源的原因可能會使測試處于緊張的局面,在此情況下我們要采取一定的策略來解決此局面。策略來源于測試數(shù)據(jù)的分析,主要的方法是:為各模塊制定測試優(yōu)先級,其優(yōu)先級的劃分依據(jù)如下:

??? 哪些是重點模塊?
???? 哪些程序是最復(fù)雜、最容易出錯的?
???? 哪些程序是相對獨立,應(yīng)當提前測試的?
???? 哪些程序最容易擴散錯誤?
??? 哪些程序是開發(fā)者最沒有信心的?
???? 80-20原則:80%的缺陷聚集在20%的模塊中,經(jīng)常出錯的模塊改錯后還會經(jīng)常出錯,這種應(yīng)該列入測試重點。

3.4 測試評估

?? 單元測試完成以后,需要對單元測試的執(zhí)行效果進行評估,主要從以下幾方面進行:
1)測試完備性評估,主要檢查測試過程中是否已經(jīng)執(zhí)行了所有的測試用例,對新增的測試用例是否已及時更新測試方案等。
2)代碼覆蓋率評估,主要是根據(jù)代碼覆蓋率工具提供的語句覆蓋情況報告,檢查是否達到方案中的要求,公司要求語句覆蓋達到100%。但很多情況下,第一輪測試用例執(zhí)行完后是很難達到的,這時在評估過程中要對覆蓋率進行分析,主要從以下方面來考慮:

??? 不可能的路徑或條件
??? 不可達的或冗余的代碼
??? 不充分的測試用例

3) 從覆蓋的角度看,測試應(yīng)該覆蓋:

???? 功能覆蓋
???? 輸入域覆蓋
??? 輸出域覆蓋
??? 函數(shù)交互覆蓋
??? 代碼執(zhí)行覆蓋

?? 大多數(shù)有效的測試用例都來自于分析,而不是僅僅為了達到測試覆蓋率目標而草率設(shè)計測試用例。千萬不要誤解測試覆蓋,測試覆蓋并不是我們最求的目的,它只是評價測試的一種方式,為測試提供指導(dǎo)和依據(jù)。

3.5測試過程

1.測試過程中各種人員的作用

??? 系統(tǒng)分析設(shè)計人員

???? 進行需求跟蹤,確保系統(tǒng)需求的實現(xiàn)和更新。進行軟件單元可測性分析,確定單元測試的對象、范圍和方法。

??? 軟件開發(fā)人員

???? 負責編碼和單元測試過程,完成單元測試計劃、方案和報告。

??? 軟件測試人員

???? 參與單元測試計劃、方案和報告的評審,對單元測試的計劃、設(shè)計和執(zhí)行質(zhì)量進行監(jiān)控。根據(jù)實際情況,可選擇參與由開發(fā)人員負責的代碼檢視、單元測試等活動。

???? 配置管理人員

??? 對代碼及單元測試文檔進行配置管理。

??? 質(zhì)量保證(QA)人員

???? 參與編碼與單元測試評審,對編碼和單元測試過程進行審計。
2.? 單元測試輸入

??? 《軟件需求規(guī)格說明書》
??? 《軟件詳細設(shè)計說明書》
??? 《軟件編碼與單元測試工作任務(wù)書》
??? 《軟件集成測試計劃》
??? 《軟件集成測試方案》
??? 用戶文檔

3.單元測試的輸出

??? 《單元測試計劃》
??? 《單元測試方案》
??? 《需求跟蹤說明書》或需求跟蹤記錄
???? 代碼靜態(tài)檢查記錄
??? 《正規(guī)檢視報告》
???? 問題記錄
???? 問題跟蹤和解決記錄
??? 軟件代碼開發(fā)版本
??? 《單元測試報告》
??? 《軟件編碼與單元測試任務(wù)總結(jié)報告》

3.6測試實施

1.? 單元測試實施步驟
1)??????? 制定測試計劃和測試方案(包括測試工具的選擇)
2)??????? 根據(jù)計劃和方案及相關(guān)輸入文檔編寫測試用例
3)??????? 搭建測試環(huán)境
4)??????? 執(zhí)行測試
5)??????? 記錄和跟蹤問題
6)??????? 編寫測試報告和總結(jié)報告
2.? 單元測試實施遵循的原則

???? 精心制定測試計劃
???? 嚴格評審測試計劃
???? 嚴格執(zhí)行測試計劃
??? 系統(tǒng)分析測試結(jié)果并提交報告

4 常用測試工具

常用的C語言單元測試工具介紹如下:
1.VcTester
1)簡介
VcTester是與VC(注:Visual C++及Visual Studio開發(fā)套件是微軟發(fā)布的產(chǎn)品)配套使用的新一代單元測試工具,分共享版與商用版兩大系列,其主要功能包括:腳本化測試驅(qū)動(包括修改變量與調(diào)用函數(shù))、腳本樁、支持持續(xù)集成測試、測試覆蓋率統(tǒng)計(僅商用版本)、生成測試報告(僅商用版本)、測試消息編輯器(僅商用版本)等。
2)功能特性

??? 腳本化測試驅(qū)動
??? 腳本樁
???? 在線測試
???? 即時調(diào)測
??? 測試工程管理
2.C++Test
1)簡介
C++Test是一個功能強大的自動化C/C++單元級測試工具,可以自動測試任何C/C++函數(shù)、類,自動生成測試用例、測試驅(qū)動函數(shù)或樁函數(shù),在自動化的環(huán)境下極其容易快速的將單元級的測試覆蓋率達到100%。
2)功能特性

??? 即時測試類/函數(shù)
??? 支持極端編程模式下的代碼測試
??? 自動建立類/函數(shù)的測試驅(qū)動程序和樁調(diào)用
??? 自動建立和執(zhí)行類/函數(shù)的測試用例
??? 提供快速加入和執(zhí)行說明和功能性測試的框架
???? 執(zhí)行自動回歸測試
???? 執(zhí)行部件測試(COM)

http://www.risenshineclean.com/news/50936.html

相關(guān)文章:

  • photoshop怎么做網(wǎng)站百度網(wǎng)站關(guān)鍵詞排名查詢
  • 龍海市城鄉(xiāng)規(guī)劃建設(shè)局網(wǎng)站優(yōu)化網(wǎng)站內(nèi)容
  • 嘉興制作網(wǎng)站企業(yè)西安seo外包優(yōu)化
  • 贛州做公司網(wǎng)站手機網(wǎng)站智能建站
  • 嘉興企業(yè)網(wǎng)站開發(fā)可以免費發(fā)帖的網(wǎng)站
  • asp.net做的音樂網(wǎng)站杭州最專業(yè)的seo公司
  • 網(wǎng)站自助建設(shè)平臺有哪些廣州競價托管公司
  • 做企業(yè)網(wǎng)站推廣多少錢百度官方網(wǎng)站登錄
  • 做曖曖視頻網(wǎng)站安全嗎百度營銷官網(wǎng)
  • 網(wǎng)站建設(shè)好公司好營銷網(wǎng)站做的好的公司
  • 做問卷哪個網(wǎng)站好愛站網(wǎng)關(guān)鍵詞密度
  • wordpress獲取當前頁面鏈接seo搜索優(yōu)化專員
  • 如何在雅虎臺灣做企業(yè)網(wǎng)站站長工具綜合查詢2020
  • 網(wǎng)站 平臺建設(shè)情況介紹優(yōu)化公司網(wǎng)站排名
  • 電腦網(wǎng)站模板網(wǎng)頁模板免費下載
  • 禪城區(qū)網(wǎng)站建設(shè)公司優(yōu)化網(wǎng)站平臺
  • 可以做軟文的網(wǎng)站營銷策略范文
  • 網(wǎng)站建設(shè)熊貓建站百度如何發(fā)布作品
  • 做網(wǎng)站需要買空間么 服務(wù)器福州百度開戶多少錢
  • 網(wǎng)站代碼在哪看查詢網(wǎng)站收錄
  • 網(wǎng)絡(luò)培訓ppt天天seo百度點擊器
  • 在網(wǎng)站上保存網(wǎng)址怎么做國內(nèi)打開google網(wǎng)頁的方法
  • 設(shè)計公司網(wǎng)站建設(shè)方案百度搜索引擎營銷案例
  • wordpress 媒體庫 API抖音seo查詢工具
  • 網(wǎng)站用哪些系統(tǒng)做的好網(wǎng)絡(luò)營銷業(yè)務(wù)流程
  • 做設(shè)計必須知道的幾個網(wǎng)站嗎百度快照怎么使用
  • 怎么通過做網(wǎng)站來賺錢百度一下官方網(wǎng)址
  • 蕪湖企業(yè)網(wǎng)站建設(shè)網(wǎng)站策劃是什么
  • 婚戀網(wǎng)站做期貨現(xiàn)貨貴金屬的人推推蛙seo顧問
  • 做外賣有哪些網(wǎng)站想要導(dǎo)航頁面推廣app