軟體測試基本方法(六)之整合測試和系統測試

來源:互聯網
上載者:User

標籤:

在軟體開發中。常常會遇到這種情況。單元測試時確認每一個模組都能單獨工作,但這些模組整合在一起之後會出現有些模組不能正常工作。比如,在chrome環境下用js寫了一個即時捕捉video中特定地區的模組,正常工作;利用worker線程進行webgl情境渲染,也正常。但是當兩個運算合并時。出現一個模組不能正常執行,原因在於兩個模組不適合在worker線程中結合。基於worker本身的局限性,僅僅能有一個模組正常工作。

所以,非常有必要進行整合測試。


(1)整合測試定義:

整合測試是將軟體整合起來,對模組之間的介面進行測試。



(2)整合種類:

  • 模組內的整合,主要是測試模組內各個介面間的互動整合關係
  • 子系統內的整合。測試子系統內各個模組間的互動關係
  • 系統內的整合,測試系統內各個子系統和模組間的整合關係

(3)兩種整合測試模式:
  • 非漸增式測試模式:先分別測試每一個模組,再把全部模組按設計要求放在一起結合成所要的程式。如大棒模式
  • 漸增式測試模式:把下一個要測試的模組同已經測試好的模組結合進來進行測試,測試完後再把下一個應該測試的模組結合起來測試。漸增式測試又能夠依據每次加入模組的路線分為自頂向下測試自底向上測試混合測試等方式

優缺點:
  • 漸增式須要編寫的軟體較多,工作量較大,而非漸增式測試開銷小
  • 漸增式測試模式發現模組間介面錯誤早。而非漸增式測試晚
  • 非漸增式測試模式發現錯誤。較難診斷,而使用漸增式測試模式。假設錯誤發生則往往和近期加進來的那個模組有關
  • 漸增式測試模式測試更徹底
  • 漸增式測試模式須要較多的機器時間
  • 使用非漸增式測試模式,能夠並行測試

詳細方法:
  • 自頂向下法:從主控模組開始,沿著軟體的控制層次向下移動,從而逐漸把各個模組結合起來。

    (長處:不須要驅動程式。能在早期發現上層錯誤。缺點:須要樁,低層錯誤發現較晚。在早期不能展開人力)

  • 自底向上法:從原子模組開始整合以進行測試。
  • 混合策略:基本使用Top-down。但在早期使用Bottom-up。對中較上層,使用Top-down,中較下層,使用Bottom-up。
  • 大棒法:先是對每個子模組進行測試(單元測試),然後將所有模組一次性地所有整合起來進行測試。

  • 三明治法:自兩頭向中間整合。

(4)系統測試
  • 定義:檢驗系統全部元素之間協作是否合適。整個系統的效能和功能是否達到要求。其測試內容包含:功能測試非功能測試迴歸測試等。
  • 功能測試:主要是依據產品規格說明書。來檢驗被測試的系統是否滿足各方面功能的使用要求。(黑盒測試也長被稱為功能測試,儘管這不是一種準確的說法)
  • 迴歸測試:在程式有改動的情況下,保證原有功能正常的一種測試方法。
  • 非功能性測試(特徵測試):效能測試、壓力測試、容量測試、安全性測試、可靠性測試和容錯性測試
  • 系統測試根據:需求說明書,概要設計說明書。具體設計說明書,最重要的是需求說明書。
  • 確認測試:確認測試又稱有效性測試。有效性測試是在類比的環境下,運用黑盒測試的方法。驗證被測軟體是否滿足需求規格說明書列出的需求。

    任務是驗證軟體的功能和效能及其它特性是否與使用者的要求一致。

    對軟體的功能和效能要求在軟體需求規格說明書中已經明白規定,它包括的資訊就是軟體確認測試的基礎。


(5)非功能測試實戰:

  • pagespeed.webkaka.com線上網站效能測試

 

選取網站首頁和其它幾個有代表性的頁面進行測試。

http://www.sc.sdu.edu.cn/default.do

http://www.sc.sdu.edu.cn/getMoreNews.do?

newsType=84

http://www.sc.sdu.edu.cn/getNewsDetail.do?

newsId=7581


這裡僅僅截取這三個介面的測試結果



 網頁統計



結果分析

通過測試,我們發現網站首頁的訪問速度比其它頁面慢非常多。訪問時間大概在其它網頁的4~6倍。

總體上。效能能夠滿足學院師生的訪問。

 

  • Google PageSpeedInsights線上測試工具

結果



問題及解決方式

1)在 HTTP 標題中為靜態資源設定到期日期或最長存在時間。可指示瀏覽器從本地磁碟中載入曾經下載的資源。而不是通過網路載入。
利用瀏覽器緩衝儲存可快取的資源。

2)清除首屏內容中阻止呈現的 JavaScript 和 CSS。

網頁中有1個阻止呈現的指令碼資源和2個阻止呈現的 CSS 資源。這會導致呈現網頁的過程出現延遲。

3)啟用壓縮。

使用 gzip 或 deflate 壓縮資源能夠降低通過網路發送的位元組數。

壓縮 JavaScript 代碼能夠節省大量資料位元組空間,並提高下載、解析和啟動並執行速度。

適當地設定圖片的格式並進行壓縮能夠節省大量的資料位元組空間。
壓縮 HTML 程式碼(包含當中所含的不論什麼內嵌 JavaScript 和 CSS)能夠節省大量資料位元組空間。並提高下載和解析的速度。


壓縮 CSS 代碼能夠節省大量資料位元組空間。並提高下載和解析的速度。





  • apache ab工具



結果

This is ApacheBench, Version 2.0.41-dev <$Revision: 1.121.2.12 $> apache-2.0
Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright (c) 2006 The Apache Software Foundation, http://www.apache.org/

Server Software:

*****************

Server Hostname:

www.sc.sdu.edu.cn

Server Port:

80

Document Path:

/default.do

Document Length:

21541 bytes

Concurrency Level:

40

Time taken for tests:

0.273954 seconds

Complete requests:

1000

Failed requests:

0

Total transferred:

21757000 bytes

HTML transferred:

21541000 bytes

Requests per second:

3.65

Transfer rate:

79.42 kb/s received

Connnection Times (ms)

 

min

avg

max

Connect:

0

3

47

Processing:

4521

10830

16780

Total:

4521

10833

16827

 

This is ApacheBench, Version 2.0.41-dev <$Revision: 1.121.2.12 $> apache-2.0
Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright (c) 2006 The Apache Software Foundation, http://www.apache.org/

Server Software:

*****************

Server Hostname:

www.sc.sdu.edu.cn

Server Port:

80

Document Path:

/getNewsDetail.do?newsId=7525

Document Length:

7134 bytes

Concurrency Level:

40

Time taken for tests:

0.5438 seconds

Complete requests:

1000

Failed requests:

0

Total transferred:

7372000 bytes

HTML transferred:

7134000 bytes

Requests per second:

183.89

Transfer rate:

1355.65 kb/s received

Connnection Times (ms)

 

min

avg

max

Connect:

1

1

23

Processing:

14

212

281

Total:

15

213

304

 

 

參數解釋

Document Path             #測試的頁面

Document Length          #頁面大小

Concurrency Level        #測試的並發數

Time taken fortests              #整個測試持續的時間

Complete requests         #完畢的請求數量

Failed requests              #失敗的請求數量

Write errors: 0

Total transferred            #整個過程中的網路傳輸量

HTML transferred          #整個過程中的HTML內容傳輸量

Requests persecond       #相當於LR中的每秒事務數。後面括弧裡的mean表示這是一個平均值

Time per request    #相當於LR中的平均事務回應時間,後面括弧裡的mean表示這是一個平均值

Time per request    #每一個串連請求實際執行時間的平均值

Transfer rate          #平均每秒網路上的流量,能夠協助排除是否存在網路流量過大導致回應時間延長的問題

 

測試結果

網站首頁的訪問速度比其它頁面慢非常多。

總體上,效能能夠滿足學院師生的訪問。

 


  • 網站安全性測試——360線上網站安全檢測


輸入網址www.sc.sdu.edu.cn。進行檢測。以下給出綜合結果:





看來網站在設計或製作時存在漏洞,進一步我們得到:


安全性漏洞集中在“核心資料被非法更改”和“server配置資訊泄露”上,應該是在設計資料庫和網頁時沒有做好許可權管理。


軟體測試基本方法(六)之整合測試和系統測試

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.