小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

軟件測試理論

 _雨 2010-08-04

1.軟件生命周期模型

從概念提出的那一刻開始,軟件產(chǎn)品就進入了軟件生命周期。在經(jīng)歷需求、分析、設計、實現(xiàn)、部署后,軟件將被使用并進入維護階段,直到最后由于缺少維護費用而逐漸消亡。這樣的一個過程,稱為"生命周期模型"Life Cycle Model)。

典型的幾種生命周期模型包括瀑布模型、快速原型模型、迭代模型。

瀑布模型的特點(文檔是主體),很多的問題在最后才會暴露出來。迭代模型比瀑布模型問題暴露的要早;快速原型法比瀑布模型直觀。

2.軟件測試概念

廣義概念:指軟件生存周期中所有的檢查、評審和確認工作,其中包括了對分析、設計階段,以及完成開發(fā)后維護階段的各類文檔、代碼的審查和確認

狹義概念:識別軟件缺陷的過程,即實際結果與預期結果的不一致

3.軟件測試目的

ü      測試的目的就是發(fā)現(xiàn)軟件中的各種缺陷

ü      測試只能證明軟件存在缺陷,不能證明軟件不存在缺陷

ü      測試可以使軟件中缺陷降低到一定程度,而不是徹底消滅

ü      以較少的用例、時間和人力找出軟件中的各種錯誤和缺陷,以確保軟件的質量

4.軟件測試原則

ü      Good-enough: 一種權衡投入/產(chǎn)出比的原則

ü      保證測試的覆蓋程度,但窮舉測試是不可能的

ü      所有的測試都應追溯到用戶需求

ü      越早測試越好,測試過程與開發(fā)過程應是相結合的

ü      測試的規(guī)模由小而大,從單元測試到系統(tǒng)測試

ü      為了盡可能地發(fā)現(xiàn)錯誤,應該由獨立的第三方來測試

ü      不能為了便于測試擅自修改程序

ü      既應該測試軟件該做什么也應該測試軟件不該做什么

5.軟件測試的的重點

ü      測試用例的設計

    測試用例的設計是整個軟件測試工作的核心

    測試用例反映對被測對象的質量要求,決定對測試對象的質量評估

ü      測試工作的管理

    尤其是對包含多個子系統(tǒng)的大型軟件系統(tǒng),其測試工作涉及大量人力和物力,有效的測試工作管理是保證有效測試工作的必要前提

ü      測試環(huán)境的建立

    測試環(huán)境應該與實際測試環(huán)境一致

6.黑盒測試

ü      什么是黑盒測試

    又稱功能測試或數(shù)據(jù)驅動測試,是針對軟件的功能需求/實現(xiàn)進行測試,通過測試來檢測每個功能是否符合需求,不考慮程序內(nèi)部的邏輯結構

ü      黑盒測試方法

    功能劃分

    等價類劃分

    邊界值分析

    因果圖

    錯誤推測等

7.什么是白盒測試

    白盒測試也稱結構測試或邏輯驅動測試,必須知道軟件內(nèi)部工作過程,通過測試來檢測軟件內(nèi)部是否按照需求、設計正常運行

    白盒測試的主要方法

    對應于程序的一些主要結構:語句、分支、邏輯路徑、變量;白盒測試的主要方法是:

    語句覆蓋方法

    分支覆蓋方法

    邏輯覆蓋方法

8.    什么是動態(tài)測試

動態(tài)測試需要在開發(fā)/測試環(huán)境或實際運行環(huán)境中運行軟件,并使用測試用例去查找軟件缺陷;動態(tài)測試包括功能確認與接口測試、覆蓋率分析、性能分析、內(nèi)存分析等  

9.什么是靜態(tài)測試

靜態(tài)測試不實際運行軟件,主要是對軟件的編程格式、結構等方面進行評估.靜態(tài)測試包括代碼檢查、程序結構分析、代碼質量度量等。它可以由人工進行,也可以借助軟件工具自動進行

10.手工測試和自動測試

a.手工測試缺點在于測試工作量大,重復多,回歸測試難以實現(xiàn)

b.自動測試利用軟件測試工具自動實現(xiàn)全部或部分測試工作:管理、設計、執(zhí)行和報告;節(jié)省大量的測試開銷,并能夠完成一些手工測試無法實現(xiàn)的測試

ü      手工完成測試的全部過程無法保證測試的科學性與嚴密性:

        修改的缺陷越多,回歸測試越困難

        沒有人能向決策層提供精確的數(shù)據(jù)以度量當前的工作進度及工作效率

        反復測試帶來的倦怠情緒及其他人為因素使得測試標準前后不一

        測試花費的時間越長,測試的嚴格性也就越低

ü      自動測試將測試人員從反復、煩雜的測試執(zhí)行中解放出來,用更多的時間進行測試設計和結果分析

ü      軟件測試不可能完全自動化

ü      不能完成所有手工測試任務

ü      無創(chuàng)造性且靈活性差,不能改進測試的有效性

ü      過程中可能會遇到許多意想不到的問題,特別是當軟件不穩(wěn)定時

ü      測試腳本的維護高

11. 測試流程

ü      單元測試

ü      集成測試

ü      系統(tǒng)測試

ü      用戶驗收測試

ü      回歸測試

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


12.單元測試

ü      完成對最小的軟件設計單元模塊的驗證工作

ü      目標是確保模塊被正確地編碼

ü      使用過程設計描述作為指南,對重要的控制路徑進行測試以發(fā)現(xiàn)模塊內(nèi)的錯誤

ü      通常情況下是面向白盒的

ü      對代碼風格和規(guī)則、程序設計和結構、業(yè)務邏輯等進行靜態(tài)測試,及早地發(fā)現(xiàn)和解決不易顯現(xiàn)的錯誤

ü      單元測試的內(nèi)容

        接口測試

        內(nèi)部數(shù)據(jù)結構

        全局數(shù)據(jù)結構

        邊界

        語句覆蓋,錯誤路徑

13.集成測試

ü      通過測試發(fā)現(xiàn)與模塊接口有關的問題

ü      目標是把通過了單元測試的模塊拿來,構造一個在設計中所描述的程序結構

ü      應當避免一次性的集成(除非軟件規(guī)模很小),而采用增量集成

集成測試主要內(nèi)容

ü      API

ü      API/參數(shù)組合

14.系統(tǒng)測試

ü      根據(jù)軟件需求規(guī)范的要求進行系統(tǒng)測試,確認系統(tǒng)滿足需求的要求

ü      系統(tǒng)測試人員相當于用戶代言人

ü      在需求分析階段要確定軟件的可測性,保證有效完成系統(tǒng)測試工作

ü      系統(tǒng)測試主要內(nèi)容

ü      所有功能需求得到滿足

ü      所有性能需求得到滿足

ü      其他需求(例如安全性、容錯性、兼容性等)得到滿足

15.用戶驗收/確認測試

ü      Alpha測試

        是由用戶在開發(fā)者的場所來進行的,Alpha測試是在一個受控的環(huán)境中進行的

ü      Beta測試

        由軟件的最終用戶在一個或多個用戶場所來進行的,開發(fā)者通常不在現(xiàn)場,用戶記錄測試中遇到的問題并報告給開發(fā)者

16.壓力測試VS性能測試
 
性能測試的目的不是去找bugs,而是排除系統(tǒng)的瓶頸,以及為以后的回歸測試建立一個基準。而性能測試的操作,實際上就是一個非常小心受控的測量分析過程。在理想的情況下,被測軟件在這個時候已經(jīng)是足夠穩(wěn)定了

性能測試是為了檢查系統(tǒng)的反映,運行速度等性能指標,他的前提是要求在一定負載下,如檢查一個網(wǎng)站在100人同時在線的情況下的性能指標,每個用戶是否都還可以正常的完成操作等。
概括就是:在不同負載下(負載一定)時,通過一些系統(tǒng)參數(shù)(如反應時間等)檢查系統(tǒng)的運行情況;

壓力測試是為了發(fā)現(xiàn)系統(tǒng)能支持的最大負載,他的前提是要求系統(tǒng)性能處在可以接受的范圍內(nèi),比如經(jīng)常規(guī)定的葉面3秒鐘內(nèi)響應;概括就是:在性能可以接受的前提下,測試系統(tǒng)可以支持的最大負載。

舉例說明:針對一個網(wǎng)站進行測試,模擬1050個用戶就是在進行常規(guī)性能測試,用戶增加到1000乃至上萬就變成了壓力/負載測試。如果同時對系統(tǒng)進行大量的數(shù)據(jù)查詢操作,就包含了強度測試。

17. 主流測試工具的測試流程

========winrunner
1
 啟動時選擇要加載的插件
2
 進行一些設置(如錄制模式等)
3
 識別應用程序的GUI,即創(chuàng)建map(就是學習被測試軟件的界面)
4
 建立測試腳本(錄制及編寫)
5
 對腳本除錯及調試(保證能夠運行完)
6
 插入各種檢查點(圖片,文字,控件等)
7
 在新版應用程序中執(zhí)行測試腳本
8
 分析結果,回報缺陷
 
=========quicktestpro========
1
 準備錄制
打開你要對其進行測試的應用程序,并檢查QuickTest中的各項設置是否適合當前的要求。
2
 進行錄制
打開QuickTest的錄制功能,按測試用例中的描述,操作被測試應用程序。
3
 編輯測試腳本
通過加入檢測點、參數(shù)化測試,以及添加分支、循環(huán)等控制語句,來增強測試腳本的功能,使將來的回歸測試真正能夠自動化。
4
 調試腳本
調試腳本,檢查腳本是否存在錯誤。
5
 在回歸測試中運行測試
在對應用程序的回歸測試中,通過QuickTest回放對應用程序的操作,檢驗軟件正確性,實現(xiàn)測試的自動化進行。
6
 分析結果,報告問題
查看QuickTest記錄的運行結果,記錄問題,報告測試結果。

====TestDirect============
安裝好后,先進入站點管理
1
 創(chuàng)建域及工程
2
 添加用戶
3
 編輯licenses及本服務器
4
 編輯數(shù)據(jù)庫
--TD
1
 選擇新建的工程進行定制(列表,用戶,組,版本等
)
2
 在require中增加需求

3
 把需求轉化為plan
4
testlab中由計劃新建測試具體用例與執(zhí)行


5
 發(fā)現(xiàn)bug,在defect中提交bug
(每一部分都可以相對獨立地使用)


======loadrunner
1
 制定負載測試計劃
(
分析應用程序, 確定測試目標,計劃怎樣執(zhí)行LoadRunner
2
 開發(fā)測試腳本
(錄制基本的用戶腳本,完善測試腳本)
3
 創(chuàng)建運行場景
(選擇場景類型為Manual Scenario,選擇場景類型,理解各種類型,場景的類型轉化)
4
 運行測試
5
 監(jiān)視場景
MEMORY 相關,PROCESSOR相關,網(wǎng)絡吞量以及帶寬,磁盤相關,WEB應用程序 ,IIS5.0,SQL SERVERNETWORK DELAY)
6
 分析測試結果

(
分析實時監(jiān)視圖表,分析事務的響應時間,分解頁面,確定WEBSERVER的問題,其他有用的功能)

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多